踩了个研发建表没有设置主键的坑,mark一下。数据库实例是 tdsql mysql 5.7,服务建表的时候直接报错:ERROR 1173 (42000):This table type requires a primary key,最后乖乖加上主键解决。

tdsql中设置建表必须需要显式主键的参数为 reject_table_no_pk

1745590748906718.png

至于为什么建表必须创建主键应该是主要有两个原因,一个是...

Continue reading >>

最近遇到一个客户k8s测试集群经常崩溃,最终定位是etcd磁盘IO性能不足,最终替换成ssd盘解决,记录一下排查过程。

集群是跑在客户的共享虚机上,磁盘是机械硬盘,问题现象如下:

  1. kube-system下涉及高可用的组件 kube-apiserver、kube-controller-manager、kube-scheduler 频繁重启,某些选主模式的组件、服务反复重启,频繁CrashLoopBack...

Continue reading >>

gdb:调试神器,线上原则上禁用,太重,多用于开发调试或测试环境,危险系数:

strace:跟踪程序当前的系统调用,线上慎用,可能造成进程hang死,崩掉,或搞成僵尸,危险系数:

lstrace:跟踪程序当前的库调用,线上慎用,危险系数:

perf:不影响稳定性的情况下可以使用,危险系数:

valgrind/AddressSanitizer:内存泄露检测,线上慎用,会降低程序性能,asan &nb...

Continue reading >>

1 基本概念

1.1 虚拟内存空间管理示意图(重点理解)
1.2 虚拟内存(重点理解)
1.3 SWAP
1.4 页表(重点理解)
1.5 Translation Lookaside Buffer (TLB)与缺页中断(初学了解即可)
1.6 进程的内存结构
1.6.1 共享内存(重点理解)
1.6.2 程序段与lib(初学了解即可)
1.6.3 内存碎片(初学了解即可)
1.6.4 Slab内存(初学了解即可)
1....

Continue reading >>