用go web,java web,和 pypy写 hello谁的性能更强

用go web,java web,和 pypy写 hello谁的性能更强,第1张

按主流的实现单进程应该是go >java >pypy,因为pypy有GIL,不能充分利用多核性能。但其实这个问题没有太大意义,因为这个跟HTTP server的实现密切相关,完整的框架有更多功能,空跑的性能也会低一些。Go的handler很高效,也很轻,额外的功能很少,所以很快;但如果你实现一个完全不解析HTTP协议、连接进来就直接发送HTTP 200 OK的“HTTP服务器”,那可能会更快,但拿来比显然不合适。Java的主流Web实现本身就是比较完整的东西了,有前端,协议解析,线程池,任务管理之类的,大约相当于Python的WSGI,如果是Servelet比WSGI的话,那应该还是Java要快不少。

在评价服务器性能时,应该了解该测量哪些指标,并确保这些指标能够反映WEB服务器的使用情况。

显然,硬件和操作系统是基准测试的主要领域。同一个高级工作站或一台U N I X机相比,一台只有中档C P U、硬盘不大而内存只有3 2兆的P C机的性能就要差得多了。在不同的WEB基准测试中,不同的操作系统(包括S o l a r i s和Windows NT)的性能得分也是不一样的。

影响WEB服务器性能的另一个因素是连接速度。T 3连接上的服务器向客户机传输WEB页面的速度要大大高于T 1连接上的相同服务器的速度(在测量服务器原始性能时,不考虑客户机的连接)。

还有一个应考虑的因素是服务器可处理用户的数量。这个能力很难测量,因为它取决于服务器的线路速度、客户机的线路速度以及传输的页面的正常大小。测量服务器页面传输能力的重要指标是吞吐能力和响应时间。吞吐能力是某种硬件和软件的组合在单位时间内能够处理H T T P请求的数目。响应时间是服务器处理一个请求所需的时间。这些数值应该处于服务器能够处理的负荷范围之内(包括高峰期)。

最后,系统应客户机的要求所传输的页面的组合和类型也会大大影响服务器的性能。动态页面的内容是应客户机的请求由特定的程序来确定的,静态页面是从磁盘检索所获的固定内容的页面。如果一台服务器主要传输静态页面,其性能要好于传输动态页面的同档服务器,这是因为静态页面传输比动态页面传输所需的计算能力小。在传输动态页面时,不同服务器的性能差异很大。

目前有多种WEB服务器基准测试程序,它们可就很多衡量指标对服务器进行测试,依据这些测试可决定服务器的选择。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/640447.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-20
下一篇2023-07-20

发表评论

登录后才能评论

评论列表(0条)

    保存