天天看点

服务器设计笔记(1)-----消息的封装

    消息的封装方式有多中,比如xml,json等,但是我依然觉得使用拼数据的方式最简单,也最节省带宽。比如我们处理一个逻辑就可以这样处理了:

    int cast_net(messageblock &mb)

    {

        int  area_id,lvl;

        mv >> area >> lvl;

        //逻辑处理

        //....

        messageblock re_mb;

        re_mb << item_id << item_sum;

        return this->respond_to_client(re_mb); 

    } 

    在之前公司的时候,使用的是ace的ace_message_block,来到了新的公司,重新封装了ace_message_block。 很多地方学习了ace的设计。比如 wr_ptr(),rd_ptr()等。 

    messageblock.h 文件

    /*

messageblock.cpp文件

   需要说明的几点: 

    1. linux服务器一般都是小端的设计,但是flash在使用bytearray的时候就要注意大端小端的使用了。 

    2. 这样的类不是一次能设计好的,需要在后续的开发过程中持续的改进。  

继续阅读