代码之家  ›  专栏  ›  技术社区  ›  Jeff

DataContractSerializer XML是XML序列化器输出大小的两倍-这真的更快、更可伸缩吗?

  •  4
  • Jeff  · 技术社区  · 16 年前

    我正在升级restful服务,现在正在使用DataContractSerializer输出响应。以前的版本只是使用自定义序列化w/XmlSerializer。因为该版本使用了很多属性,而DCS从来没有这样做过,所以我看到新的响应大小是用gzip压缩前一个版本的1.5倍。(未压缩时几乎是3倍大小)。

    我的问题是,DCS是否真的会比XmlSerializer更快、更可伸缩。

    2 回复  |  直到 16 年前
        1
  •  4
  •   Cheeso    16 年前

    谁说它会更快、更可扩展?我不记得这是发展中国家的主要优势之一。有人曾经说过,DCS可以更快地序列化,但传输时间往往会缩短序列化时间。串行化速度提高10%,产生更大的负载,实际上可能导致总延迟增加20%。

    如果您不喜欢这个大小,可以在 DataMember attribute . 不过,这种方法也适用于XmlSerializer,使用xmlement属性。在DCS中,由于元素与属性的大小经济性,您将始终处于XmlSerializer在最小可能大小方面的劣势。

        2
  •  1
  •   Jeff D Jeff D    16 年前

    我真的很想看看有没有人不同意。

    推荐文章