Netweaver / Java Web服务和.NET使用者之间的二进制序列化

时间:2012-08-14 08:23:07

标签: java .net web-services sap abap

我正在开展一个项目,通过Netweaver / Java(我认为是7.01 SP3)将SAP ABAP功能公开为Web服务。我们在.NET 4 UI层上使用它。我们正在处理一些大型消息结构(12MB序列化XML),它们需要花费太多秒才能在不同层之间进行切换。

我们正在多个方面解决这个问题:

  • 磁盘,网络,CPU和内存很好,几乎没有饱和。
  • 我们正在尝试试用WCF流媒体模式
  • 我们可以在Web服务的服务器上尝试gzip压缩
  • 最后,问题的关键在于:有没有办法实现可互操作的二进制序列化?

1 个答案:

答案 0 :(得分:0)

假设您已经尝试了一切以降低有效负载大小并将其拆分为更小的部分(12 MB XML,严重!),我会说这取决于您在ABAP端需要的XML处理类型。您可以尝试实现自己的ICF HTTP处理程序并使用一些REST样式的接口。如果您真的想要传输二进制数据(例如,您从存档系统检索的某些文档),这一点尤其有趣,因为您可以通过HTTP传输文档而不需要XML-binary-ugliness。即使您必须使用填充WSDL-y Web服务,您也可以尝试从该接口重构二进制部分,只需通过Web服务发送一些(GU)ID,并让客户端从您的自定义ICF处理程序中获取二进制部分