一起写RPC框架(二十六)RPC测试篇三---限流的测试
来源:互联网 发布:剑网3和尚脸型数据 编辑:程序博客网 时间:2024/06/07 03:21
本小节测试一下限流的功能,首先我们先定义一个简单的类,配置一下它单位时间最大的调用次数
package org.laopopo.example.generic.test_5;import org.laopopo.client.annotation.RPCService;import org.laopopo.example.demo.service.HelloSerivce;public class HelloServiceFlowControllerImpl implements HelloSerivce {@Override@RPCService(responsibilityName="xiaoy",serviceName="LAOPOPO.TEST.SAYHELLO",maxCallCountInMinute = 40)public String sayHello(String str) {return "hello "+ str;}}
package org.laopopo.example.generic.test_5;import org.laopopo.client.provider.DefaultProvider;import org.laopopo.common.exception.remoting.RemotingException;/** * * @author BazingaLyn * @description 测试单位时间的限流 * @time 2016年9月14日 * @modifytime */public class ProviderTest {public static void main(String[] args) throws InterruptedException, RemotingException {DefaultProvider defaultProvider = new DefaultProvider();defaultProvider.serviceListenPort(8899) //暴露服务的地址 .publishService(new HelloServiceFlowControllerImpl()) //暴露的服务 .start(); //启动服务}}
消费者的代码基本上也不用改变:
package org.laopopo.example.generic.test_5;import org.laopopo.client.consumer.ConsumerClient;import org.laopopo.client.consumer.proxy.ProxyFactory;import org.laopopo.common.utils.UnresolvedAddress;/** * * @author BazingaLyn * @description 测试 * @time * @modifytime */public class ConsumerTest {public static void main(String[] args) throws Exception {ConsumerClient client = new ConsumerClient();client.start();UnresolvedAddress addresses = new UnresolvedAddress("127.0.0.1", 8899);HelloService helloService = ProxyFactory.factory(HelloService.class).consumer(client).addProviderAddress(addresses).timeoutMillis(3000l).newProxyInstance();for(int index = 1;index < 45;index++){String str = helloService.sayHello("Lyncc");System.out.println("当前调用的次数是:" + index);System.out.println(str);}}}
先运行服务提供者之后,再运行服务消费者:
基本上是没有问题的~
0 0
- 一起写RPC框架(二十六)RPC测试篇三---限流的测试
- 一起写RPC框架(二十四)RPC测试篇一---基本业务逻辑的测试
- 一起写RPC框架(二十七)RPC测试篇四---性能测试
- 一起写RPC框架(二十五)RPC测试篇二---服务消费者和服务提供者直连测试
- 一起写RPC框架(十二)RPC服务提供端四--服务的限流
- 一起写RPC框架(十六)RPC注册中心三--注册中心服务提供者端的处理
- 一起写RPC框架(二)RPC之项目搭建
- 一起写RPC框架(二十七)RPC 写在最后
- 一起写RPC框架(二十一)RPC服务消费者三--服务消费者负载策略
- 一起写RPC框架(三)RPC网络模块的搭建一 网络传输模型
- 一起写RPC框架(五)RPC网络模块的搭建三 序列化
- 一起写RPC框架(十一)RPC服务提供端三--服务的调用
- 一起写RPC框架(十)RPC服务提供端二--服务的编织和注册
- 一起写RPC框架(十五)RPC注册中心二--注册中心的基本实现
- 一起写RPC框架(二十)RPC服务消费者二--服务消费者订阅服务
- 一起写RPC框架(四)RPC网络模块的搭建二 Netty的编码器和译码器
- 一起写RPC框架(二十二)RPC服务消费者四--服务消费者服务编织
- 一起写RPC框架(二十三)RPC代码小总结
- 详解STM32编译后Code-RO-data-RW-data-ZI-data
- jQuery简单的瀑布流
- Java基础之多线程
- 全局项目请求根路径的设置
- android 自定义一个View的基础实现方式
- 一起写RPC框架(二十六)RPC测试篇三---限流的测试
- android APP上线前,应该准备的东西
- JAVA-Math中以下常用方法以及获取随机数和给定一个数获取保留两位小数
- Android LayoutInflater详解
- I/O类 Reader BufferedReader 的使用
- PHP 数组
- 淘宝可伸缩高性能互联网架构
- 正则表达式
- socket学习(五)