前段时间做过一个短信网关:
设计的思路大致如下
短信网关类设计:
一、接收,发送队列
建立一个短信发送接收的一个临时容器,其中的利用滑动窗口控制发送的数量,使短信的发送接收都通过这个控制器发送出去,其中配合数据库维护了短信的状态,并且能够处理异常的发生。
主要的成员函数:
二、SM MODULE 这是一个和App通讯的模块,接收APP的下发信息,并且调用发送队列的FILL函数往队列插入信息,接收短信中心的上行消息转发给App。
三、TCPSOCKET类:
1、TCPSOCKETBase类:建立了三个子线程,通过虚函数的方式实现后绑定,建立了一个Socket,并实现了收发。
2、TCPSOCKET 类:
继承自TCPSOCKETBASE类,实现了上个线程的函数,对消息进行了解封包。