SpringCloud从入门到进阶(八)——单点部署Zuul的压力测试与调优(一)
内容
作为微服务架构系统的入口,毫无疑问,Zuul的并发性能直接决定了整个系统的并发性能。本文结合前几篇文章的内容,在云服务器中部署了包含Eureka Server,Zuul等组件的1.0版本的微服务架构,并进行单点部署Zuul的压力测试,对其并发性能一探究竟。
版本
JVM监测工具:JVisualVM
压力测试工具:Apache Bench 2.3
JDK:1.8.0_171
SpringBoot:1.5.9.RELEASE
SpringCloud:Dalston.SR1
环境

处理器具体型号为Intel xeon(skylake) platinum 8163,主频2.5GHz。
说明
转载请说明出处:
[user@ServerA7 jars]$ java -Dspring.profiles.active=peer2 -Dcom.sun.management.jmxremote.port=7199 #供JMX客户端远程连接用的端口号 -Dcom.sun.management.jmxremote.ssl=false #关闭账号密码认证,不安全,仅在开发阶段使用 -Dcom.sun.management.jmxremote.authenticate=false #关闭SSL -Djava.rmi.server.hostname=106.117.142.x #指定本机供远程访问的IP地址,此处是本机的公网IP -Xms512m -Xmx512m -jar zuul-1.0-SNAPSHOT.jar &
@PostMapping("/hello/{name}") public String sayHello(@PathVariable(value = "name") String name, @RequestParam(value = "from") String user){ String content="Hello "+name+",this is DemoTest.From "+user+"@:"+instanceID+"."; logger.log(Level.INFO,content); return content; } @GetMapping("/timeconsume/{length}") public String timeConsuming(@PathVariable(value = "length") int length){ try { Thread.sleep(length); }catch (Exception e){ e.printStackTrace(); } String content="Successfully sleep "+length+" ms."; logger.log(Level.INFO,content); return content; }[user@ServerA2 jars]$ java -Dspring.profiles.active=peer1 --Dcom.sun.management.jmxremote.port=7199 #供JMX客户端远程连接用的端口号 -Dcom.sun.management.jmxremote.ssl=false #关闭账号密码认证,不安全,仅在开发阶段使用 -Dcom.sun.management.jmxremote.authenticate=false #
关键字: