关于ribbon的小测试

本文主要目的是解决实际工作中遇到问题,如何说服老板做cloud微服务项目!!!

  现在社会数据说话,对一个外行讲再多的cloud的优势,还不如来个图形对比实在,本机测试,让数据说话

关于cloud搭建这里不讲,大家可以参考官网SPRING.IO,或者找论坛博客

具体操作流程如下:

第一步:

 弄1个服务复制成2个,修改端口8016,8017,同时启动相同服务,注册到注册中心(这里我就用一个,没有做分布式)

第二步:

  弄1个注册中心

第三步:

新建一个test项目,注册到注册中心,添加ribbon熔断配置

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>

在启动类里添加负载均衡配置

@LoadBalanced
@Bean
RestTemplate restTemplate() {
    return new RestTemplate();
}

新建一个controller(由于我的服务需要token请求头,不是重点大家可以忽略)

直接用注释部分

第四步

上面如何配置正确,同时启动2个服务端,1个注册中心,一个客户端test,用postman发送个请求,路由分发功能正确即成功完成配置部分

第五步

安装jmeter,安装操作步骤可以找其他资料,这里不讲;安装jvisualvm,检查JVM内存的图形化工具

直接上300并发量测试

结果如下:

   分布式

单台

单台

分布式

只需看2点对比就可以看出。相同并发量中,单台出现err比例很高(部分由于本人机子比较烂的原因,但分布式也是在这个上面),后续的吞吐量没有意义;同样JVM单台占用CPU达到了40以上,而分布式一台的值并没有到20(2台加起来没到40),足以说明分布式部署的好处:减少JVM和服务器压力,增大最大压测量,提高并发数!!

猜你喜欢

转载自blog.csdn.net/qq_40650378/article/details/83865303