摘要: 在分布式系统中 (多副本)一致性,是描述多副本的同步特征。一般从两个角度来研究: 从全局数据的指令执行流角度来看: 【最强一致性:】 严格一致性(strict):读出的总是最近(wall-time)写入的值 严格一致性(strict):读出的总是最近(wall-time)写入的值 【强一致性:】 可 阅读全文
posted @ 2018-03-26 12:58 zcan 阅读(776) 评论(0) 推荐(0) 编辑
摘要: 用mount -t cgroup -o cpu,memory my_virt_res /cgroup/my_cpu_and_mem 挂载cgroup文件系统后, 使用 cgcreate -g cpu:/my_cpu 创建控制组到/cgroup/my_cpu_and_mem/my_cpu下, 然后一个 阅读全文
posted @ 2018-02-27 17:49 zcan 阅读(1691) 评论(0) 推荐(0) 编辑
摘要: 我们都知道,程序=数据结构+算法, 在没有C++语言的年代,没有面向对象、模板的语法支持,struct中还不能定义函数,用C语言想要对业务功能(算法,此处即指函数)进行抽象,不想依赖具体的数据结构/数据类型,此时就必须用指向函数的指针来实现抽象与具体的分离(该函数的入参可以是void*,这样调用者就 阅读全文
posted @ 2018-01-23 16:33 zcan 阅读(2829) 评论(0) 推荐(0) 编辑
摘要: 基础环境: CentOS release 6.9 (Final) perl-5.10.1-144.el6.x86_64httpd-2.2.15-59.el6.centos.x86_64 mysql-server-5.1.73-8.el6_8.x86_64 安装步骤: export PATH=.:/u 阅读全文
posted @ 2018-01-16 18:28 zcan 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 查错误日志, 发现apache启动时有提示:[notice] SELinux policy enabled; httpd running as context unconfined_u:system_r:httpd_t:s0 原来是SELinux的安全策略导致的。 临时方案:setenforce 0 阅读全文
posted @ 2018-01-16 16:50 zcan 阅读(2285) 评论(0) 推荐(0) 编辑
摘要: 虚拟机分配的内存较小,需要关闭图形界面。通过分析发现,kernel启动时,执行kernel_init()函数(init/main.c):先新建一个initrd(init Ram Disk,内存中的文件系统,挂载到/),然后执行init_post()。 而在init_post()中,试图从多个位置查找 阅读全文
posted @ 2018-01-15 15:35 zcan 阅读(960) 评论(0) 推荐(0) 编辑
摘要: p查看分区情况 可以看到分区2是个LVM文件系统。 d删除分区2 n创建新分区2,使用默认值(空闲空间全部使用),新分区的system id默认是83 t修改system id,将其恢复为8e(LVM文件系统) w将变化写入分区表(理论上没改变数据分布,不会丢数据) q退出 4. 运行partpro 阅读全文
posted @ 2018-01-14 23:29 zcan 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 根据这里编译出的二进制文件拷贝部署,最终目录结构: tree -FL 3 (用root权限)修改最大打开文件数: 启动pd pd/bin/pd-server 启动tikv 依次进入tikv[1-3]/bin执行: tikv-server -A 127.0.0.1:9000 -s ../db --pd 阅读全文
posted @ 2018-01-14 22:46 zcan 阅读(1389) 评论(0) 推荐(0) 编辑
摘要: TiDB由三部分组成:tidb(SQL解析引擎)、tikv(存储引擎)、pd(placement driver,提供时间戳服务和系统拓扑维护)。其中tidb和pd用go语言开发,tikv用rust语言开发。 官方要求TiDB在CentOS7中使用,但有时确实需要在CentOS6及以下部署,此时可根据 阅读全文
posted @ 2018-01-14 18:49 zcan 阅读(1888) 评论(0) 推荐(0) 编辑
摘要: 1. 用Linux启动光盘或u盘引导系统,进入控制台界面 2. 挂载glibc被卸载的硬盘,假定在/dev/sda2. 如果是LVM2的文件系统, 需要找到逻辑卷的名称并激活;普通情况可直接挂载。 # lvdisplay 然后激活逻辑卷: # vgchange -ay 完成挂载: # mkdir / 阅读全文
posted @ 2018-01-14 17:07 zcan 阅读(729) 评论(0) 推荐(0) 编辑
摘要: 编译gcc最重要的事情是,确保环境的隔离,既不要影响编译环境本身,又要让原有的编译器能找到相关的依赖。假定编译新版本gcc所需的额外依赖都放在/opt/xxx。 1. 从 ftp://gcc.gnu.org/pub/gcc/infrastructure/ 下载、编译并安装依赖库到/opt/xxx:g 阅读全文
posted @ 2018-01-14 16:16 zcan 阅读(529) 评论(0) 推荐(0) 编辑
摘要: ifconfig查看,eth0没有ip地址; 排查了: /etc/sysconfig/network /etc/sysconfig/networking/ /etc/sysconfig/network-scripts/ 均未发现异常, 使用nmcli dev命令查看设备状态异常; 最后发现是wind 阅读全文
posted @ 2018-01-14 14:05 zcan 阅读(2524) 评论(0) 推荐(0) 编辑
摘要: win7 下安装了java,命令行下可以正常运行,cygwin下报错:找不到或无法加载主类。 经排查发现是cygwin的~/.bash_profile中画蛇添足的配置了$CLASSPATH: JAVA_HOME="/cygdrive/d/Program Files/Java/jdk1.8.0_66" 阅读全文
posted @ 2017-12-22 14:45 zcan 阅读(870) 评论(0) 推荐(0) 编辑
摘要: 思路 模拟递归程序执行过程,借助一个堆栈,把递归转成非递归算法。 转化过程 1. 递归算法 2. 处理首递归 本函数第2行是结束条件,第5行开始进入首递归。执行第5行函数调用之前,需要保留调用现场,本例中是4个参数入栈,使用新的参数调用hanoi函数。而继续跟踪被调用的函数,可以看出需要一直进行入栈 阅读全文
posted @ 2017-09-06 17:43 zcan 阅读(9944) 评论(0) 推荐(0) 编辑