
SRE
文章平均质量分 90
_Creator1024_
这个作者很懒,什么都没留下…
展开
-
ZooKeeper基础
镜像用的是ubuntu14,可以替换成我们用的统一基础镜像,后续的升级版本或者新增的配置可以修改Dockerfile和启动脚本。当前用statefulset实现,使用的镜像启动脚本:https://github.com/kow3ns/kubernetes-zookeeper/blob/master/docker/scripts/start-zookeeper。Docker镜像:https://github.com/31z4/zookeeper-docker/tree/master/3.8.0。原创 2022-10-26 11:26:27 · 1136 阅读 · 1 评论 -
MySQL语句的执行过程
大体来说,MySQL 可以分为和层两部分。一条SQL语句的执行过程,主要就是经过这两个层面。Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。而存储引擎层负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、Memory 等多个存储引擎。,它从 MySQL 5.5.5 版本开始成为了默认存储引擎。原创 2022-10-05 10:26:21 · 1151 阅读 · 0 评论 -
MySQL事务
MVCC(Multi-Version Concurrency Control)是为了实现事务的隔离性,通过数据的版本号,避免同一数据在不同事务间的竞争。原创 2022-10-05 10:15:07 · 530 阅读 · 0 评论 -
Mysql 数据库锁总结
死锁检测的逻辑是:每当一个事务被锁的时候,就看看其依赖的线程有没有被其他人锁住(例如事务A依赖B,C依赖D,这时候事务E依赖C,事务E中的死锁检测会去检查C和D)。对于超时等待,默认50s这么长的时间,对业务的影响很大,肯定不能直接这么用,但是设置成很短的时间,比如1s,确实可以让死锁很快地解开,但是可能也会影响到其他正常等待锁而非死锁的场景。行锁就是针对数据表中行记录的锁。假设有1000个并发,并且所有的事务都互相依赖,那么死锁检测就是100w级别的计算量,会耗费大量CPU,及时并发不高,也很占资源。原创 2022-09-21 21:48:25 · 1126 阅读 · 0 评论 -
Mysql索引
索引最主要的目的就是提高查询的效率(更快地查到想要的数据)。在Mysql中,索引是在存储引擎层实现的。原创 2022-08-28 17:25:50 · 1029 阅读 · 0 评论