• mooonagent设计要点


    mooon-agent以简约的设计为主,力求各对象之间保持简单的关系,尽量避免过度的传递,因此CAgentThread成了核心。除此之外,还有几个关键的设计点:

    1、采用了可Epollable的队列,以保证消息的实时上报
    2、使用了状态机,分别为发送消息的CSendMachine和接收消息的CRecvMachine,保证所有过程是异步非阻塞的,同时又使得代码简洁
    3、对下行消息处理的抽象,以达到通用的目的
    4、使用了NetInt,使用得消息网络字节序问题迎刃而解

    保证Agent做好的前提:
    1、充分的设计,追求对象间的关系最简化
    2、有限的设计,每个阶段控制功能数,鄙弃一步到位的思想,比如上报心跳这个功能,那需要同时支持发送简单的心跳,也要支持发送富心跳(附带数据的心跳,如CPU使用率等),这样做会导致第一版本难以收敛,会导致设计扩张
  • 相关阅读:
    Android WIFI 启动流程(TIP^^)
    MVVM模式原则
    CoreData入门
    转:iOS绘制一个UIView
    CGBitmapContextCreate函数参数详解
    RACCommand
    ReactiveCocoa内存管理
    IOS TableView滑动不灵敏问题
    IOS数组的排序和筛选
    IOS取消performSelector警告
  • 原文地址:https://www.cnblogs.com/aquester/p/9891826.html
Copyright © 2020-2023  润新知