前言 Raft算法应用广泛,例如Redis的哨兵模式就是一块重要的应用。 正文 分布式一致性 想象一下,我们有一个单节点系统,且作为数据库服务器,然后存储了一个值(假设为X)。然后,有一个客户端往服务器发送了一个值(假设为8)。只要服务器接受到这个值即可,这个值在单节点上的一致性非常容易保证: 但是…
Dockerfile 构建的镜像太大,我们可以使用多剪短构建的形式减小镜像的大小。 示例如下: 这里有几个坑,首先我们运行镜像使用 alpine,则 Golang 编译镜像必须使用 golang:1.13.13-alpine 中带 -alpine 后缀的镜像。否则就会报错 参考文献: 两个奇技淫巧,…
前言 在学 docker-swarm 时,我们必定会接触到docker-stack 命令 它的具体作用和和docker-compose相似,只不过docker-compose只能单机编排。而 docker stack 可以利用 docker-swarm 的优势实现多机编排。 举个最简单的例子:我可以…
启动容器后发现 vi 命令不存在,想都没想就用了 yum install vi...... 可是发现yum 命令也不存在.....此时就要反思这个容器的系统是否是ubuntu的。 基础镜像如果是centos的则是yum安装命令,如果是ubuntu的则是apt-get。 当然要安装基础软件时,我们需要…
这里主要还是与 change buffer 有关。这是innodb中的写缓冲优化。 在innodb中,我们需要更新一个数据页时,如果数据页在内存中就直接更新,而如果这个数据页还没有在内存中的话,在不影响数据一致性的前提下,InooDB会将这些更新操作缓存在 change buffer 中后直接返回,…