欲知hi-nginx-java的并发性能,用jmeter进行测试便知一二。

设定用户数为100000,循环次数为100,ramp-up perio为2:

hi-nginx-java并发性能一窥-LMLPHP

请求地址为http://localhost/test.java。该地址对应的servlet如下:

 1     private static hi.route r = hi.route.get_instance();
 2
 3     public jdemo() {
 4         jdemo.r.get("^/(hello|test)/?$", (hi.request req, hi.response res, Matcher m) -> {
 5             this.do_hello(req, res);
 6         });
 7     }
 8
 9     public void handler(hi.request req, hi.response res) {
10         jdemo.r.run(req, res);
11     }
12
13     private void do_hello(hi.request req, hi.response res) {
14         res.set_content_type("text/plain;charset=UTF-8");
15         res.set_cookie("test-k", "test-v", "Max-Age=3; Path=/");
16         res.status = 200;
17         res.content = "hello,world";
18     }

具体实现可参考:https://github.com/webcpp/jdemo/blob/master/hi/jdemo.java

hi-nginx-java并发性能一窥-LMLPHP

使用jmeter的命令行模式进行测试。结果如下图所示:

hi-nginx-java并发性能一窥-LMLPHP

此次测试在一台2核4线程4g内存笔记本上完成,hi-nginx开4个工作进程,最终消耗内存为每工作进程68mb至101mb,并发数越大,内存消耗越小。

hi-nginx-java并发性能一窥-LMLPHP

以上,足证hi-nginx-java架构可提供更优性能的java web开发方法。

11-17 12:27