Kra*_*rab 6 c c++ java latency
我需要制作低延迟服务器,其中原始数据吞吐量不如处理数千个同时连接的能力重要.我不知道使用什么语言.Java更简单,开发将更快,更好的接口,我需要的所有+良好的网络支持(JAVA NIO和选择器类).但实际上我对java在编程方面没有多少经验,所以即使我读过java这样的东西今天不比原生C/C++慢,但仍然对性能有些怀疑,因为c/c ++被编译成二进制代码,但是java .class文件被解释,因此在翻译中必须有开销.
编辑:应用程序将是服务器实时支持Web应用程序(如聊天等)
Pet*_*rey 18
通常人们想要一个低延迟的应用程序,所以我不知道你的低延迟是什么意思.
所以,即使我读过java这样的东西,今天也不比原生的C/C++慢
它仍然稍微慢一些,大部分时间都不够重要.
例如,无论您使用何种语言,网络IO都是网络IO.例如,除了最极端的低延迟情况外,该语言不会使您的网络更快或更慢.
,因为c/c ++被编译为二进制代码,但java .class文件被解释,
Java在运行时编译为本机代码,因此系统最终都会运行本机代码.
所以翻译必须有开销.
启动时有一个开销.但是一旦应用程序运行,影响就会小得多.
有人设置高延迟应用程序?
如果您的网络具有高延迟,则您的语言不太重要.
你的意思是更好地用于那种类型的应用程序?
我建议你使用你最熟悉的语言.
应用程序将是服务器,以便在Web应用程序上实时支持
在这种情况下,如果您已正确编码,则网络延迟可能远远高于应用程序的延迟.
为了给您一个广泛的想法,典型的互联网连接的延迟为5 - 20毫秒.典型用户只能以50毫秒的延迟做出反应.延迟为20 - 50 ms的服务器几乎可以用任何语言编写.延迟为200 - 500微秒的服务器可以用Java或C++编写.如果您希望少于100微秒,包括客户端的延迟,您正在寻找专用硬件和一些C++代码用于您的核心引擎.在这种情况下,服务器和消费者可能在同一建筑物内,如果不是同一个机架.
| 归档时间: |
|
| 查看次数: |
8529 次 |
| 最近记录: |