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");}
相关文章推荐
- Android学习之界面篇(六)ViewPager学习与Android引导界面的实现
- 算法分析:x+y=x|y,求k小y
- java设计模式
- Lab2: ARM指令
- 欢迎使用CSDN-markdown编辑器
- iOS 图片切片的简单实现
- 以一则LUA实例说明敏捷开发中“分离构造和使用”原则
- 去除Android活动中的标题和信息栏
- 关于数据库的水平切分和垂直切分的一些概念(转)
- 8.Binder详解
- 杭电acm1870愚人节的礼物
- codeforces 662D International Olympiad
- 最好用的Nema信号模拟器:NemaStudio 1.30.5885 开发者Nema 必备利器, 包括AIS Simulator,GPS Simulator,weather simulator,ra
- Android AlertDialog和PopupWindow使用和区别
- 箭士柳白猿拾遗
- 动态规划-背包问题0-1
- hdu 1166 线段树单点更新和区间求和
- Qt浅谈之五十一QT_OpenGL
- LokiJS入门demo1
- 155. Min Stack