您的位置:首页 > 其它

dubbo入门实例及性能测试

2016-04-30 23:36 465 查看
ubbo集群和非duboo(在同一jvm内运行)性能对比代码下载地址: http://download.csdn.net/detail/lk_blog/9507435 使用实例测试注意事项:1.下载zookeeper  地址: http://zookeeper.apache.org/releases.html2.配置zookeeper, 解压zookeeper后,找到conf/zoo_sample.cfg,复制一份修改文件名为zoo.cfg.3.maven构建实例中的代码.4.运行provider.java中的main方法.5.修改 lk-dubbo-provider工程中的applicationContext.xml文件,找到如下代码修改port端口为20881,
<dubbo:protocol name="dubbo" port="20880" />
并再启动provider.java中的main方法此时已启动了两个集群,您还可以再次修改端口及启动provider,就会变成三个集群.6.运行Consumer.java中的main方法启动客户端(dubbo方式运行).客户端通过多线程发起请求10000次,服务器端处理时间如下:
7.修改lk-dubbo-consumer工程的pom.xml文件,将以下代码的注释去掉使之生效.
<dependency>
<groupId>com.tgb.lk</groupId>
<artifactId>lk-dubbo-provider</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
8.按如下方式修改lk-dubbo-consumer工程的pom.xml文件.使用dubbo方式的改为直接使用spring注入方式.
9.再次运行Consumer.java中的main方法(此时是非dubbo方式运行).
测试类关键代码如下:
       //测试性能ExecutorService threadPool = Executors.newFixedThreadPool(10);int count = 10000;long start = System.currentTimeMillis();Future<Integer> future = null;for (int i = 1; i <= count; i++) {final int j = i;future = threadPool.submit(new Callable<Integer>() {public Integer call() throws Exception {demoService.sayHello("tom " + j);return j;}});}if (future != null && future.get() == count) {//远程调用完返回后记录结束时间long end = System.currentTimeMillis();System.out.println("consume time " + (end - start) + "ms");}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: