- 博客(6)
- 资源 (5)
- 收藏
- 关注
转载 Paxos理论介绍(1)
本文转载自微信后台团队文章,连接地址 https://mp.weixin.qq.com/s/eeJXS5rBA9mXpSJaTNjF-Q 这篇文章摘取部分我在微信内部关于Paxos的分享PPT,通过注解的方式尝试与大家说明白朴素Paxos的理论证明。 为何要重点说朴素的Paxos?个人认为这个才是Paxos的精髓所在,也是所有Paxos相关算法的基石所在。另外本文将着重讲解Paxos的算法推导...
2018-05-31 15:11:09 1070
原创 Phxpaxos网络部分(4) —— TCP收发消息
TCP收消息 TCP收消息相关的类有TcpIOThread.TcpAcceptor.TcpRead 三个类。相互间的关系是:TcpIOThread初始化TcpRead和TcpAcceptor,并将后两者关联起来。 这样Acceptor接收到的连接直接放到TcpRead 中读取数据。 class TcpIOThread { public: TcpIOThread(NetWork *...
2018-05-30 10:23:57 410
原创 Phxpaxos网络部分(3) —— TCP事件循环
上一部份介绍了TCP模块大略的类构成。在查看相关的TcpRead/TcpWrite/TcpAcceptor的过程中发现,都包含以个EventLoop类。这是事件处理主循环类。在介绍其他组成部分前,我们先分析一下此类。代码在/src/communicate/tcp/ecent_loop.h/cpp 文件中。顺带手介绍一下里面的事件类Event。 先看一下Event类(含有纯虚函数)肯定要做为父类进...
2018-05-28 15:03:06 433
原创 Phxpaxos网络部分(2) —— TCP网络整体概略
整个TCP网络部分代码全被封装在TcpIOThread中。通过将NetWork 指针传递进来将此部分与整个业务逻辑关联起来 class TcpIOThread { public: TcpIOThread(NetWork * poNetWork); ~TcpIOThread(); int Init(const std::string & sListenIp, c...
2018-05-28 10:32:42 456
原创 Phxpaxos网络部分(1) —— UDP网络分析
UDP相关逻辑在udp.h/cpp文件中。 发送 直接上代码 class UDPSend : public Thread //继承自Thread,线程相关信息略 { public: UDPSend(); ~UDPSend(); //释放资源 int Init(); //初始化socket void run(); void Stop(); ...
2018-05-28 10:13:38 478
原创 Phxpaxos网络部分概述
整体描述 网络部分以接口形式提供,接口定义文件为include/phxpaxos/network.h,用户只需要根据此头文件实现相应的功能即可替代其网络部分。 其中主要接口三个,分别是发送TCP消息、发送UDP消息,接收消息。 class NetWork { public: NetWork(); virtual ~NetWork() {} //Network m...
2018-05-25 15:57:17 509
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人