array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 RabbitMQ 离线安装(带视频) - 爱码网
crazymakercircle

疯狂创客圈 《SpringCloud Nginx 高并发核心编程》高并发 架构师 必备【链接

在这里插入图片描述


疯狂创客圈 高并发 环境 视频,陆续上线:

  • Windows Redis 安装(带视频)
  • Linux Redis 安装(带视频)
  • Windows Zookeeper 安装(带视频)
  • Linux Zookeeper 安装(带视频)
  • RabbitMQ 离线安装(带视频)
  • Nacos 安装(带视频)

小视频以及所需工具的百度网盘链接,请参见 疯狂创客圈 高并发社群 博客

依赖包安装

Rabbitmq安装主要依赖两个rpm依赖包:** erlang和socat**。

Rabbitmq依赖包的下载和安装

下载erlang, 在https://packagecloud.io/rabbitmq/erlang页面选择对应版本的erlang的rpm安装包(centos7需要19.3以上版本)。这里选择的是版本为22.0.6。

疯狂创客圈的网盘,有提供离线包

将下载后的erlang安装包上传到Linux的/usr/local目录,然后,使用rpm命令进行安装,命令如下:

sudo rpm  -ivh  /usr/local/erlang-22.0.6-1.el6.x86_64.rpm

socat 依赖包的下载和安装

什么是socat ?

socat 是Linux系统下的一强大易用的网络工具,名字来由是" Socket CAT",可以看作是netcat的加强版,socat的官方网站:http://www.dest-unreach.org/socat/。socat是一个两个独立数据通道之间的双向数据传输的继电器。这些数据通道包含文件、管道、设备(终端或调制解调器等)、插座(Unix,IP4,IP6 - raw,UDP,TCP)、SSL、SOCKS4客户端或代理CONNECT。 Socat支持广播和多播、抽象Unix sockets、Linux tun/tap、GNU readline 和 PTY。它提供了分叉、记录和进程间通信的不同模式。socat的主要特点就是在两个数据流之间建立通道;且支持众多协议和链接方式:ip, tcp, udp, ipv6, pipe,exec,system,open,proxy,openssl,socket等。

如何下载socat?

首先在http://www.rpmfind.net/linux/rpm2html/search.php?query=socat页面上,找到匹配目标Linux(这里是centos 7)系统的 rpm安装包, 这里选择的是socat-1.7.3.2-2.el7.x86_64.rpm 安装包。

疯狂创客圈的网盘,有提供离线包

安装socat离线包

将下载后的socat安装包上传到Linux的/usr/local目录,使用rpm命令进行安装,命令如下:

sudo rpm -ivh  /usr/local/socat-1.7.3.2-2.el7.x86_64.rpm

RabbitMQ 单节点安装过程

第一步:下载需要安装的Rabbitmq版本

下载需要安装的Rabbitmq版本,这里为3.7.17,CentOS系统下对应版本的下载地址为:

https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.17/rabbitmq-server-3.7.17-1.el7.noarch.rpm

疯狂创客圈的网盘,有提供离线包

第二步:rpm命令进行安装RabbitMQ

将安装包上传到Linux的/usr/local目录,然后,使用rpm命令进行安装,命令如下:

sudo rpm  -ivh  /usr/local/rabbitmq-server-3.7.17-1.el7.noarch.rpm

RabbitMQ的启动和配置

1 启动RabbitMQ

启动RabbitMQ消息服务器,可以执行下面的命令:

sudo service rabbitmq-server start

2 RabbitMQ管理账户的配置

执行命令 rabbitmqctl add_user admin admin,设置账户密码为admin admin

 rabbitmqctl add_user admin admin

3 为管理员设置权限

执行命令 rabbitmqctl set_user_tags admin administrator,设置admin为管理员权限

 rabbitmqctl set_user_tags admin administrator

4 打开rabbitmq web管理

执行命令 rabbitmq-plugins enable rabbitmq_management,打开rabbitmq web管理。

 rabbitmq-plugins enable rabbitmq_management

5 登陆管理端,并打开访问权限

管理链接为:http://192.168.233.128:15672,登陆账户密码为设置的admin admin

查看用户权限,默认状态下权限是不允许访问(此时程序访问5672端口是连接被拒绝)。

点击用户名,进入用户页面,直接点击设置权限。此时刷新页面回到Users页面,权限变成可访问。

6 停止

[root@localhost work]# service rabbitmq-server stop
Redirecting to /bin/systemctl stop rabbitmq-server.service
[root@localhost work]# service rabbitmq-server status
Redirecting to /bin/systemctl status rabbitmq-server.service
● rabbitmq-server.service - RabbitMQ broker
   Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: disabled)
   Active: inactive (dead) since Thu 2019-12-05 07:29:11 PST; 8s ago
  Process: 27084 ExecStop=/usr/sbin/rabbitmqctl shutdown (code=exited, status=0/SUCCESS)
  Process: 1526 ExecStart=/usr/sbin/rabbitmq-server (code=exited, status=0/SUCCESS)
 Main PID: 1526 (code=exited, status=0/SUCCESS)
   Status: "Initialized"

Nov 24 18:07:40 localhost.localdomain rabbitmq-server[1526]: Starting broker...
Nov 24 18:07:40 localhost.localdomain rabbitmq-server[1526]: systemd unit for activation check: "rabbitmq-server.service"
Nov 24 18:07:40 localhost.localdomain systemd[1]: Started RabbitMQ broker.
Nov 24 18:07:42 localhost.localdomain rabbitmq-server[1526]: completed with 4 plugins.
Dec 05 07:28:44 localhost.localdomain systemd[1]: Stopping RabbitMQ broker...
Dec 05 07:28:49 localhost.localdomain rabbitmqctl[27084]: Shutting down RabbitMQ node rabbit@localhost running at PID 1526
Dec 05 07:28:57 localhost.localdomain rabbitmqctl[27084]: Waiting for PID 1526 to terminate
Dec 05 07:28:57 localhost.localdomain rabbitmq-server[1526]: Gracefully halting Erlang VM
Dec 05 07:29:11 localhost.localdomain rabbitmqctl[27084]: RabbitMQ node rabbit@localhost running at PID 1526 successfully shut down
Dec 05 07:29:11 localhost.localdomain systemd[1]: Stopped RabbitMQ broker.

PS:常见问题
一. http://ip:15672不能访问,确认两点:1. 添加用户、给用户设置管理员权限、rabbitmq-plugins这三步是否执行成功。2. 使用firewall打开5672/15672端口。具体步骤如下:

sudo service firewalld start
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --zone=public --add-port=15672/tcp --permanent
sudo service firewalld start(如果系统不要求开启防火墙,可以在设置完以后再关闭它)
备注:即使防火墙处于关闭状态,也应该先打开端口再关闭,否则在有些机器上会仍然端口不通。

或者 关闭防火墙
首先使用systemctl status firewalld 命令,查看防火墙的状态,执行命令如下:
[root@localhost ~]# systemctl status firewalld
firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since 四 2019-07-25 19:15:01 CST; 18h ago
Docs: man:firewalld(1)
Main PID: 634 (firewalld)
Memory: 220.0K
CGroup: /system.slice/firewalld.service
└─634 /usr/bin/python -Es /usr/sbin/firewalld --nofork –nopid

结果中的Active: active (running) ,表示防火墙正在运行,实验和测试环境,建议进行关闭。关闭防火墙的命令如下:
service firewalld stop
首先查看防火墙状态:

service iptables status

永久性生效,重启后不会复原
chkconfig iptables off
chkconfig iptables on
关闭:
即时生效,重启后复原

具体,请关注 Java 高并发研习社群博客园 总入口


最后,介绍一下疯狂创客圈:疯狂创客圈,一个Java 高并发研习社群博客园 总入口

疯狂创客圈,倾力推出:面试必备 + 面试必备 + 面试必备 的基础原理+实战 书籍 《Netty Zookeeper Redis 高并发实战

img


疯狂创客圈 Java 死磕系列

  • Java (Netty) 聊天程序【 亿级流量】实战 开源项目实战

分类:

技术点:

相关文章: