erlang的版本: erlang-18.2.1
erlang的依赖环境:
参考blog:
http://flyingdutchman.iteye.com/blog/1885566
(1) 首先安装GCC GCC-C++ Openssl等模块:
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
(2) 安装ncurses模块:
yum -y install ncurses-devel
(3) erlang下载&解压:
wget http://erlang.org/download/otp_src_18.2.1.tar.gz
然后解压并放置在/usr/local/下:
tar -xvf otp_src_R16B03.tar.gz
mv otp_src_R16B03 /usr/local/otp_src_18.2.1
(4) 编译&安装:
进入到otp_src_R16B03文件夹下,进行配置:
./configure --prefix=/usr/local/erlang --enable-threads --enable-halfword-emulator --enable-smp-support --enable-kernel-poll --enable-sctp --enable-native-libs --enable-shared-zlib --enable-m64-build --enable-silent-rules
安装过程中可能会出现以下问题:
对应的解决方案参考blog:
http://www.netfoucs.com/article/RoadE/83526.html
直接从yum上下载对应的模块即可;
其中wxWidgets库,yum中没有,需要单独下载,本文下载的版本为:
wxWidgets-3.0.2.tar.bz2
随后进行解压安装,再次过程中,wx又依赖以下模块,
gtk,opengl,mesa*,freeglut*,
直接从yum上下载安装,再解决上述依赖模块之后,再次进行配置编译和安装:
./configure --with-opengl --enable-debug --enable-unicode
make && make install
wx安装成功,fop is missing问题可以忽略,上述问题得到解决;
随后对otp_src进行编译和安装:
make && make install
得到如下文件夹:
erlang的命令文件存在于bin中,
因此需要将bin的路径加入到PATH路径中,编辑/etc/profile文件,在尾行添加:
并执行:
source /etc/profile
随后测试安装是否成功:erl
出现如上信息,代表erlang安装成功;
直接yum:
yum install xmlto
(1) 下载版本:版本号为3.6.0,下载通用的linux版本,generic-unix;
下载地址:
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.0/rabbitmq-server-generic-unix-3.6.0.tar.xz
对于下载xz包进行解压,首先先下载xz压缩工具:
yum install xz
对rabbitmq包进行解压:
xz -d rabbitmq-server-generic-unix-3.6.0.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.0.tar
随后移动至/usr/local中:
这种下载的方式解压后直接可以使用,无需再编译安装;
进入到rabbit文件内,其命令文件存在于sbin文件夹下,因此需要将sbin文件夹的路径添加到PATH中:
执行
source /etc/profile
使得PATH路径更新,rabbitMQ安装成功;
随后启用MQ管理方式:
rabbitmq-plugins enable rabbitmq_management
rabbitmq-server -detached
设置之后可以通过网页方式管理MQ;
设置端口号,可供外部访问:
iptables -I INPUT -p tcp --dport 5672 -j ACCEPT
iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
随后通过服务器ip+15672端口即可访问rabbitMQ的管理界面;
10.236.254.53:15672/#/
至此,rabbitMQ的配置已经完成。
客户端采用java来进行测试连接,下载rabbitmq所需jar包,并加入服务器端对应的ip、端口以及rabbitmq的用户名和密码,如图:
消息发送端与消息接收端均采用上述相同的配置,随后就可进行消息在不同客户端之间的传递。