几个集群的总结(二)dubbo

dubbo部分

官方用户手册:http://dubbo.io/books/dubbo-user-book/


注册中心:zookeeper。

所以需要有一个zookeeper集群,zk集群节点数量为奇数2n+1,n>0。一般3台机子即可。

Provider组:2+台机子

Consumer组:2+台机子

管控台:1台


所以一共需要3+2+2+1=8台机子(最少的数目)。


架构图如下:

几个集群的总结(二)dubbo_第1张图片
dubbo集群机构图


需要注意的是:


①dubbo版本问题,2.5.3版本@service注解不能被继承,如果和spring的事物注解@transaction放在一起会导致事物问题。


Dubbo的优雅关机,kill pid (kill -9 pid不会优雅关机)。原因:dobbo优雅关机是使用JDK的ShutdownHook来实现的。

JDK提供了Java.Runtime.addShutdownHook(Thread

hook)方法,可以注册一个JVM关闭的钩子,这个钩子可以在一下几种场景中被调用:

1)程序正常退出

2)使用System.exit()

3)终端使用Ctrl+C触发的中断

4)系统关闭

5)OutOfMemory宕机

6)使用Kill pid命令干掉进程(注:在使用kill -9 pid时,是不会被调用的)


②dubbo线程模型中的线程数目和linux系统中用户线程数限制,一般需要调整。

调整时要注意:

1、尽量不要使用 root 用户来部署应用程序,避免资源耗尽后无法登录操作系统。

2、普通用户的线程数限制值要看可用物理内存容量来配置


计算方式:

default_nproc = total_memory/128K

ulimit -a # 显示目前资源限制的设定

ulimit -u #用户最多可开启的程序数目

重启, 使之生效:#reboot。


总结的比较抽象,集群搭建不复杂,敲一堆命令搞定,dubbo相关的细节参考官方文档。

完。

你可能感兴趣的:(几个集群的总结(二)dubbo)