【问题标题】:WCF - ignore byte array serializationWCF - 忽略字节数组序列化
【发布时间】:2013-10-20 19:18:21
【问题描述】:

我正在尝试提高我的服务性能,当我的服务向许多客户端发送相同的数据时,我看到 CPU 达到峰值。我想通过传递字节数组来忽略序列化,但我看到 wcf 将它序列化到 Base64,有没有办法忽略序列化?

【问题讨论】:

  • 数据必须被序列化才能通过网络传输。如果数据每次都相同,也许您可​​以将其序列化一次并将序列化后的副本粘贴到缓存中或类似的东西中?
  • 我找不到办法做到这一点,我想我们 datacontractserializer 将数据串行到 byte[] 并发送它,为什么需要再次重新串行?

标签: performance wcf c#-4.0 serialization


【解决方案1】:

有很多方法可以提高您的服务性能,例如缓存和限制。首先确定你的瓶颈是什么。它甚至可以是服务器在挑选时占用的内存,任何东西。运行一些负载测试来解决这个问题。

如果您想以二进制形式向您发送数据,您是否考虑过使用 TCP 绑定?它也可以加快您的服务速度。

还要确保没有任何服务实例相互阻塞。考虑使用服务的重入并发实例化。

但既然你说“相同的数据”,我很确定你正在寻找的是输出缓存。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 2014-01-24
    • 1970-01-01
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    相关资源
    最近更新 更多