event & network 设计思考

Table of Contents

自己之前写了一个网络库, 最初仅仅是为了练手, 后来用着还算顺手, 就直接用在自己的小项目里了, 不过最近查看libev和redis的代码, 自己反思了下, 得到了一些总结一些经验 :)

之前在写这部分的时候, 直接把epoll的代码耦合在网络库里了, 也没觉得不妥, 也会经常的出现一些疑惑, 老是不能特别专注在网络buff, 异常处理部分, 反而总是在epoll事件上面弄来弄去的. 现在发现这是个big mistake, epoll应该被剥离出来, 单独成库, 像libev一样的独立事件库, 没有任何其他功能, 而network部分应当在此基础上利用其接口进行编写, 从而简化编程.

常言道, 出来混, 迟早是要还的, 所以这部分还需要我继续重构下~ :D, 将这两部分完全剥离开.

keep fighting!~