gpt4 book ai didi

Java - 网络上的对象流效率

转载 作者:行者123 更新时间:2023-12-03 23:14:57 24 4
gpt4 key购买 nike

快速设计问题:我需要在我的游戏引擎架构中实现客户端-服务器网络之间的一种通信形式,以便在彼此之间发送事件。

我选择创建事件对象,因此,我想知道序列化这些对象并通过简单套接字网络通过对象流传递它们的效率如何?

也就是说,与创建对象的字符串表示、通过字符流发送字符串以及解析字符串客户端相比,效率如何?

事件将在每个游戏循环中发送,如果不是更多的话;但事件对象本身只是一些 Java 原语的简单包装器。

感谢您的洞察力!

(tl;dr - 网络上的对象流是否有效?)

最佳答案

如果性能是主要问题,我建议使用 Protocol Buffers通过您自己的自定义序列化和 Java 的 native 序列化。

Jon Skeet 在这里给出了很好的解释和基准:High performance serialization: Java vs Google Protocol Buffers vs ...?

如果您不能使用 PB,我怀疑 Java 的 native 序列化会比从 String 手动序列化/反序列化更优化。 .这种差异是否显着可能取决于您序列化的对象的复杂程度。与往常一样,您应该进行基准测试以确认您的预测。

您通过网络发送东西的事实应该无关紧要。

关于Java - 网络上的对象流效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8001796/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com