摘要:
一 背景 拜占庭将军问题是如何通过通讯方式来达成共识得问题,Leslie Lamport 来借助这个问题说明如何在分布式环境下达成共识。 拜占庭将军问题是这样的:拜占庭帝国的军队在围攻一座城市,拜占庭帝国的军队分成许多小队,围着城市的不同方向,每支小队都有一个将军领导。这些将军们通过信使来传递消息。 阅读全文
摘要:
前言 我理解只所以要分布式系统,无非两个原因数据和计算,单机系统无法保存这么大的数据量,所以要分布式系统来保存; 计算嘛,就是说单机计算无法达到性能要求,比如双十一一台机器肯定处理不过来,所以需要后台一系列复杂的分布式系统来解决。 前面有聊过一篇关于分布式存储的,就是讲数据如何划分到不同的机器上,这 阅读全文
摘要:
前言 分布式系统中有的各个节点的地位是均等的,有的是有 leader 和 flower。这种区分 leader 的集群更好管理些。这样在写操作的时候都交给 Leader 去处理,然后由 leader 再将数据同步给各个 flower 上的副本。如果同时对多个分布式节点写数据,势必不好进行数据同步。读 阅读全文
摘要:
前言 没有数据库前,数据如果是文件方式存储在磁盘中,那么如果写入的过程中,可能写入过程中出差;或者因为我们程序挂掉原因,导致数据可能写了一半,如果多个应用程序同时在写程序的话,那问题就更加复杂。 数据库发明,特别是事务概念,解决了这个问题,事务将多个读写操作看成一个整体,要么成功要么失败,对于应用程 阅读全文
摘要:
作为一个比较懒惰的人,文件经常放的找不到位置,整理后,又会由于层次太多,一层层打开文件夹,特别麻烦,对于文件搜索的问题,以前推荐过工具 Listary,可以非常好的解决这个问题。 但是 Listary 也好,Everything 也罢,都只支持文件名搜索,但是我们有时候需要搜索文件的内容,比如程序员 阅读全文
摘要:
前段时间还在忙,终于又出点空更新了,虽然不是所有的付出都有收获,很多时候需要我们先付出才可以看到希望。 一 前言 Mysql 类的文章看的人比较少,我想一方面可能是大家更热衷于比较前言的技术,像 Mysql 类的已经发展很久的基础数据库,关注的人反而少,当时我在学习 Mysql 的过程中发现,Mys 阅读全文
摘要:
以前对Mysql的锁的认识,只了解表锁和行锁,其实Mysql的锁的种类还是不少的,有全局锁,表级锁,行级锁,还有元数据锁,间隙锁,临界锁。 一 全局锁 Mysql的全局锁是对整个实例加锁,加锁之后,数据库整体处于只读状态,数据上不能执行增删改,元数据上不能执行新建表,更新表;不能提交事务。 命令: 阅读全文
摘要:
毕业很多年,一直是在做后端开发,无论是c还是java,甚至用的python也是后端做一些服务类的产品,也不是没想过做点前端的,印象中前端难度比较大,还记得大学的时候,和一同学给老师做个网页产品,但是我们两个对前端不熟悉到文盲的程度,折腾了半个暑假,没啥成果,最后不了了之了,在心理就留下了对前端的阴影 阅读全文
摘要:
c语言算是非常古老了,像瑞士军刀灵活却也很容易伤到自己,即使是多年的老杆子,以致于市面上都有一本经典的C的书叫《C陷阱与缺陷》的书。 这个文章总结下c中常见的陷阱,可能在日常工作或面试题目中遇到。 1. sizeof 陷阱 sizeof 它是一个编译时运算符而非函数,用于判断变量或数据类型的字节大小 阅读全文
摘要:
一 抽象 世界是复杂的,复杂到我们大脑反应不过来,所以进化出来一个很重要的能力就是抽象。记得在一个小品节目中看到一个笑话,“问,把大象装到冰箱里面,一共需要多少步?” 答:“一共需要三步,第一步把冰箱门打开,第二步把大象放进去,第三步把冰箱门关上” 。虽然是个笑话,却也告速我们看待问题的层次很重要, 阅读全文