mysql锁与死锁排查:从锁查询到表空间回收
前言
三个日常高频的数据库锁问题合在一起:mysql 里怎么查「谁锁了谁」、Oracle 的锁会话处理(附节)、以及 DELETE 大量数据后表空间为什么不回收、怎么回收。都是拿来就能用的 SQL。
一、mysql 锁排查四连查
1. 查询是否锁表
|
|
2. 查询当前进程(看哪些会话在跑、哪些在等待)
|
|
3. 查看正在锁的事务
……一位Java开发者,喜欢研究技术,同时也在学习Golang和Python中,对服务器、Linux使用比较熟悉。欢迎添加技术交流QQ群:655158296
三个日常高频的数据库锁问题合在一起:mysql 里怎么查「谁锁了谁」、Oracle 的锁会话处理(附节)、以及 DELETE 大量数据后表空间为什么不回收、怎么回收。都是拿来就能用的 SQL。
1. 查询是否锁表
|
|
2. 查询当前进程(看哪些会话在跑、哪些在等待)
|
|
3. 查看正在锁的事务
……LVS + Keepalived 是经典的四层负载均衡高可用方案:LVS 负责流量转发,Keepalived 负责健康检查与主备切换。这篇整理两者的原理与完整安装配置过程(文中的 IP 均为示例地址)。
Keepalived 工作在 IP/TCP 协议栈的 IP 层、TCP 层及应用层,对应 Layer3、Layer4、Layer7 三种检测方式:
LVS 部署两台,为 Active/Standby 模式:
……用nmap扫描域名整理下一些细节参数
|
|
目标规格: 可以通过主机名,IP地址,网络等
例如:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
微服务项目里 OpenFeign 是最常用的声明式 HTTP 客户端,但 @FeignClient 的属性含义很多人只停留在 value 上。这篇整理注解的全属性解读,以及一个常见的坑:多个 FeignClient 指向同一个服务时的 bean 重名冲突。
|
|
属性速查:
……12月9日爆出来的log4j2远程执行漏洞,因为影响巨大,网上新闻和介绍特别多,这里不多说,间接使用log4j2的第三方也不少,等官网修复不知道是否赶得上,直接采用暴力删除jndilook.class最简单
|
|
项目需要对一批接口压测,要求 QPS 达到 6 万以上。一直用的 jmeter 单台电脑打不到这个量级,于是对几款主流压测工具做了一次横评。压测机为 Linux 4核8G,为避免干扰,测试时服务器只运行压测工具,且非本机压本机。
先从概念说起,再对比工具。
不同的应用系统 tps/qps 是没有可对比性的。例如:
……lombok一些注解的含义整理
链式风格,在调用set方法时,返回这个类的实例对象,比如:a.b.c
在JavaBean或类JavaBean中使用,这个注解包含范围最广,它包含getter、setter、NoArgsConstructor、equals、canEqual、hashCode、toString 注解,即当使用当前注解时,会自动生成包含的所有方法;
……git的一些常见命令操作整理
depth用于指定克隆深度,为1即表示只克隆最近一次commit,可以减少下载的容量
|
|
默认撤销,不撤销本地代码,撤销commit,并且撤销git add
|
|
不删除工作空间改动代码,撤销commit,不撤销git add
|
|
删除工作空间改动代码,撤销commit,撤销git add
……说到caffeine,一般会对比 google 家的 guava,这里只做浅析。
缓存分为本地缓存和远端缓存。
常见的远端缓存有Redis,MongoDB;
本地缓存一般使用map的方式保存在本地内存中。
一般我们在业务中操作缓存,都会操作缓存和数据源两部分。
如:put数据时,先插入DB,再删除原来的缓存;get数据时,先查缓存,命中则返回,没有命中时,需要查询DB,再把查询结果放入缓存中。
如果访问量大,我们还得兼顾本地缓存的线程安全问题。
必要的时候也要考虑缓存的回收策略。
1.1.1【必须】HTML标签操作,限定/过滤传入变量值
innerHTML=、outerHTML=、document.write()、document.writeln()时,如变量值外部可控,应对特殊字符(&, <, >, ", ')做编码转义,或使用安全的DOM API替代,包括:innerText=
|
|
1.1.2【必须】HTML属性操作,限定/过滤传入变量值
……