我正在计划一个需要快速(尽可能快)TCP服务器访问的项目。我一直用BOOST测试带有Netty和C ++的Java。该项目需要多线程(如果这会影响任何建议)。
在我的测试中(不彻底,但足以提供洞察力),似乎Java服务器不像C或C ++那样快速响应。这是真的还是我的实施/设置很可能是错误的?
我也有一些Objective C的经验,如果它看起来合理,而且生成的应用程序足够快,用Objective C编写服务器会很棒,因为它是我最熟悉的语言。
我知道有人很可能会回应说C可能是速度的最佳选择,但使用OOP语言进行网络化是否有任何重大开销?看起来网络速度似乎是主要的瓶颈。
感谢任何愿意向一位好奇的程序员提供建议的人:)
答案 0 :(得分:1)
对您而言,首要的重点是关注如何您设计服务器。说它multithreaded
不会告诉我们任何事情。请记住,multithreading
远非万能药,特别是多线程甚至可能是有害的。
之后,您已清楚地了解服务器应如何工作 - 请参阅哪些语言(甚至框架)可以让您以合理的效率/复杂度比率实现所需的功能。
大多数人确实会告诉你C ++(或C)是你的任务的首选语言,因为没有任何限制,你可以直接访问操作系统给你的所有功能,但仍然有很多其他的成熟语言/框架和选择正确的工具取决于你想要做什么的细节