我觉得作为一个TCP 服务器端软件,最关键要做到以下:
1、稳定性:能满足长期运行;
2、抗干扰:不会因为一个错误而导致停止运行。
在这里罗列下目前我能想到的该软件的功能需求要点,在11月29日到12月6日之间完成:
1、单机满足50万连接数。(目前这只是个虚数,如何来测试,如何来满足这个数,还有待进一步了解)
2、因为有多台设备连接,所以需要细分日志,主要分两大类:设备类和系统类,设备类主要体现以设备名为文件夹,保存每天通信日志;系统类主要体现系统运行过程中出现的错误;日志的细分对后期调试很关键;
3、设备注册及设备信息等,获得客户端上传后存入数据库(涉及mysql的操作);
4、部分通信内容通过http协议传输;
5、是否可设置自动重启;
6、可切换不同的通信协议(比如不同厂家的租赁单车,有不同的通信协议,需要对接到一个平台,如何做到兼容);
7、可支持定时任务;
延展性问题:如何从单机版拓展到多机版、实现分布式?
大概功能需求如上,争取按期完成。期间也会不断增加和调整内容,往各路大神拍砖指导!
持续更新。。。。。。