当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

dubbo性能测试相关的参数

发表于: 2015-07-06   作者:curious   来源:转载   浏览次数:
摘要:   --------------------- DubboInvoker在invoke的时候牵扯到复用ExchangeClient问题, com.alibaba.dubbo.rpc.protocol.dubbo.DubboInvoker 配置connections应当能够提升客户端发包和服务端收包的能力   ExecuteLimitFilter限制server端的并

 

---------------------

DubboInvoker在invoke的时候牵扯到复用ExchangeClient问题,

com.alibaba.dubbo.rpc.protocol.dubbo.DubboInvoker

配置connections应当能够提升客户端发包和服务端收包的能力

 

ExecuteLimitFilter限制server端的并发数,只有配置了executes才生效,默认是不配的

com.alibaba.dubbo.rpc.filter.ExecuteLimitFilter

 

ActiveLimitFilter限制客户端的并发数,只有配置了actives才生效,默认不配置

com.alibaba.dubbo.rpc.filter.ActiveLimitFilter

 

NettyServer 

1 Io线程池大小,配置项iothreads,

  这个线程池负责处理与客户端的IO通信,对应NioWorker这个类,server收到了客户端的connect操作后,

  会将与此客户端通信的sockeChannel绑定到一个NIOwoker,以后从客户端收请求,往客户端发送应答全部是由worker来做

  增大NIO worker数量,在客户端存在过多的连接时有帮助的

  nioworks默认大小是: Runtime.getRuntime().availableProcessors() + 1;

  com.alibaba.dubbo.remoting.transport.netty.NettyServer

  NioServerSocketPipelineSink

 

2 与业务线程池相关的线程模型 

 (1) Dispatcher : all,全部派发到业务线程池,默认值是all

       AllChannelHandler  dispatch方法返回一个AllChannelHandler,面向channel处理事件(connect,receive等等),可以在里面加断点

               

 (2)业务线程池:ThreadPool是SPI,默认值是fixed,ThreadPool instance负责创建executor供channelHandler使用

   public class FixedThreadPool implements ThreadPool {

    public Executor getExecutor(URL url) {

        String name = url.getParameter(Constants.THREAD_NAME_KEY, Constants.DEFAULT_THREAD_NAME);

        int threads = url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS);

        int queues = url.getParameter(Constants.QUEUES_KEY, Constants.DEFAULT_QUEUES);

        return new ThreadPoolExecutor(threads, threads, 0, TimeUnit.MILLISECONDS, 

        queues == 0 ? new SynchronousQueue<Runnable>() : 

        (queues < 0 ? new LinkedBlockingQueue<Runnable>() 

        : new LinkedBlockingQueue<Runnable>(queues)),

        new NamedThreadFactory(name, true), new AbortPolicyWithReport(name, url));

    }

    

    server端收到请求后,请求是在线程池里面被并发执行的

    业务线程数,队列的容量是可配的,如果不配置队列的容量,则认为没有缓冲队列

}

 

 

dubbo性能测试相关的参数

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
以下来结论自tcpcopy & gryphon讨论群 经过试验测试得出,不保证肯定正确。 net.ipv4.tcp_tw_recycl
此文档针对初学者。 废话不多说,先上源码: http://git.oschina.net/alexgaoyh/Dubbo-parent http:
最近在看Dubbo的用户手册,看到了回声测试一小节的说明如下,请注意图片中的红框中的部分: 红色部
  看到好多新手,在性能需求模糊的情况下,随便找一个性能测试工具,然后就开始进行性能测试了,
  在性能测试的学习过程中,坚持思想与工具(分开)并行,当前面世面上的性能测试书籍大多把理论
我们在之前给大家介绍了“现在起,全面了解你电脑的性能!硬件测试软件大搜罗 - 综合性能篇“,可以
文章结束给大家来个程序员笑话:[M] 罕见的性能测试是这样的: 有人开发了百度知道,然后,想知道单
Struts2、SpringMVC、Servlet(Jsp)性能对比 测试 。 Servlet的性能应该是最好的,可以做为参考基准
现在网站高并发情况下,上个关键功能点都需要进行压力测试,进行性能调优,如何去做呢?来个实战吧
Redis千万级的数据量的性能测试 从图中可以猜测到还会有Redis 2.2.1 的测试,相同的测试环境,1K的
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号