我正在开发一个发送大量数据包的网络应用程序。目前,我的序列化方法只是一个黑客,它需要一个对象列表并将它们转换为由管道字符'|'分隔的字符串。并将其刷入网络流(或通过UDP发送出去)。C# - 通过网络序列化数据包
我要寻找一个在C#中的清洁解决方案,这同时最大限度地减少 包大小(所以没有巨大的XML序列化)。
我的经验BinaryFormatter is SLOW
。我也在考虑通过将它们编码为base64
字符串来压缩我的数据包,并在客户端对它们进行解码。我希望看到如何影响我的应用程序的性能。
此外,另一个快速的问题:
我的设置创建2个插槽(一个TCP and UDP
)和客户端连接单独对这两个插座。数据是根据需要刷新的(TCP用于重要的东西,UDP用于不重要的东西)。这是我第一次同时使用TCP/UDP,并且想知道如果有更统一的方法,虽然看起来不是这样,但是
。
非常感谢您的支持。
我之所以避免BinaryReader/Writer是因为BinaryFormatter的速度有多慢。任何关于这个VS BFormatter的速度的想法? – 2011-12-23 19:06:05