微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

webservice soap简单的性能测试结论

        因为最近要推行用webservice soap来实现多语言的调用的服务,所以对soap进行一个简单的压力测试,就是一句简单的字符串传输和一个简单的对象传输返回。

        简单的压测,结果并不尽如人意,在100M的带宽(局域网内的两台机器),跑满了带宽每秒的调用数就是2000多而已。如果没有对比,或许我不会不满意,但是,由于之前公司部分架构是采用alibaba的rpc框架dubbo进行开发soa服务的,我当时简单的测试下,同样的100M带宽同样的测试内容dubbo可以达到数万次/秒的调用。因此相当的不满意。

后来,了解了dubbo和webservice soap之间的在传输和序列化方面的区别(在我看来RPC框架的性能其实最重要的决定性就是这两种)。

        dubbo是基于java netty实现二进制数据传输,认用java Serializer进行序列化的框架,即是属于二进制协议。

soap则是简单对象访问协议 (SOAP:Simple Object Access Protocol)是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。

现在原因就在这里了,soap的协议是属于文本协议,而且序列化则是采用xml序列化,soap协议的附加内容太大,导致传输上比dubbo的传输慢,而且序列化xml也比直接二进制序列化慢,所以性能dubbo都是优于webservice soap的。

尽管,webservice soap的性能低于dubbo,但是考虑到跨语言调用以及实施部署难度,接下来只能继续推行webservice soap。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐