• 中间件(nginx,网关)对性能的影响的测试


    前提:docker安装了nginx,项目使用springcloudgateway作为网关

    1.nginx测试

    启动linux服务器,启动docker,启动nginx,到windows上访问nginx的首页,成功后就在jmeter中输入相应内容,启动测试:

    linux中输入docker stats,监控docker性能变化

    可以看到大部分CPU的使用都在nginx上,回看Jemter

     平均响应时间6毫秒,99%的响应时间在94毫秒内返回,可以看出nginx的性能非常不错

    2.网关测试

    依然是Jemeter,我的网关端口号是88。然后别忘记先禁用上一个测试内容

    再启动jvisualvm

    由上图可以看出,网关对CPU的使用率也是非常高

     同时,因为Eden Space设置的较小,垃圾回收也是有些频繁

     

     回看Jmeter,可以看出网关性能也是较优秀的

     3.简单测试

     controller中加入一个简单测试,重启该模块:

    1. @ResponseBody
    2. @GetMapping("/hello")
    3. public String hello(){
    4. return "hello";
    5. }

    Jemeter中加入新测试

     可以看出,在没有经过网关和nginx,操作数据库的情况下,性能很优秀

     4.网关加简单服务

     网关中加入对hello的断言,重启网关

     Jmeter中加入新测试:

    可以看出,性能下降很多

     中间件越多,性能损失越大,大多都损失在网络交互上

     5.nginx+网关+简单服务

    需要提前配置好nginx和网关和服务之间的关系,比如我这边输入配置好的URL直接访问:

     继续建立新测试

     可以看出,性能继续暴降:

  • 相关阅读:
    【项目开发 | C语言项目 | C语言课程管理系统】
    认识matlab
    IMU武装智能昆虫
    2022年最新河北道路运输安全员模拟真题题库及答案
    考研数据结构与算法(七)图论
    面试经典 150 题 14 —(数组 / 字符串)— 134. 加油站
    torchvision中的标准ResNet50网络结构
    Spring之aop
    【华为机试真题 JAVA】找朋友-100
    点燃那团火焰
  • 原文地址:https://blog.csdn.net/xushuai2333333/article/details/126545993