electron 使用tcp套接字(四)总结

为什么要用electron

很多时候我们需要对C++服务器写业务测试, 这个时候我们会使用C++写测试代码, 众所周知, 使用C++写UI是非常麻烦的, 如果接口过多的时候, 我们的测试程序会越来越复杂, UI线程与后台线程交互会非常复杂, 发展下去会发现, 测试会变得不可控, 如果不写UI直接使用console程序做测试, 又会丧失灵活性. 所以我们需要一些UI解决方案.

electron 优点

UI的解决方案并不止一种, 事实上最开始我才用了C#的解决方案, 使用C#写测试(我的另一篇博文有提到C#使用pb). 可是有问题是C#并不是跨平台的, 我们有很多的同事使用的是Ubuntu和MacOS, 如果我能够把测试程序同时给到他们用, 那么我们对接接口的时候将会极大的提高效率, 而electron的跨平台性能够满足这点.

关于tcp

大部分非web后台服务器使用的都是tcp协议, 要给它们提供测试, 这就是为什么我们要让electron具备tcp的能力.

总结

我们使用nodejs提供的tcp能力, 使用bytebuffer作为缓冲区, 在上面实现粘包, 然后使用protobuf作为业务协议. 这样基本上就实现了一个连接C++服务器的客户端. 当然并不是所有的服务器使用的是pb, 更多的时候, 我们会使用自己的私有协议, 但是这个并不重要, 我们只要完成了粘包, 获得了一个完整的包, 后面就都是业务问题了.

发表评论

电子邮件地址不会被公开。 必填项已用*标注