JGroups是高性能的多机通信框架,实现session共享,分布式缓存等功能。在我们的项目中,需要用到分布式一致性协议解决leader选举功能,JGroups raft刚好提供的功能。然后在使用过程中,不同的系统环境会引起不同的问题,网上也没找到合适的解决方法,经过摸索后找到相应解决方法。
(1) Could not load library Reasons [no leveldbjni64-1.8
这个问题很常见,主要是系统缺少相关库。解压 leveldbjni-all-1.8.jar,META-INF\native目录有各个平台对应的类库文件,我所用的系统是64位centos6.3,将\META-INF\native\linux64\libleveldbjni.so 拷贝到/usr/lib64 。若是win64系统 ,则拷贝win64目录的dll文件至system32目录
(2) permission denied
leveldbjni 会在temp目录创建相关文件,如temp/10.10.3.27.log文件夹,还有temp目录ibleveldbjni-64-1开头的其他文件。给temp目录赋予当前用户的读写权限