几个集群的总结(二)dubbo

2018-02-23  本文已影响0人  吹雪007

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集群机构图

需要注意的是:

①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相关的细节参考官方文档。

完。

上一篇下一篇

猜你喜欢

热点阅读