当前位置: 首页 > news >正文

世界建设企业网站金融企业网站制作

世界建设企业网站,金融企业网站制作,手机网站建设公司服务,网站开发前如何配置电脑前言 最近工作中涉及到了RocketMQ的应用,为方便开发决定本地搭建一套RocketMQ的使用环境。 果然实践是个好东西... VMware虚拟环境搭建 这个网上有很多教程,只会比我写的详细有条理,这里就不在赘述了。 虚拟机搭建好之后每次重启电脑都无…
前言

最近工作中涉及到了RocketMQ的应用,为方便开发决定本地搭建一套RocketMQ的使用环境。

果然实践是个好东西...

VMware虚拟环境搭建

这个网上有很多教程,只会比我写的详细有条理,这里就不在赘述了。

虚拟机搭建好之后每次重启电脑都无法正常使用,明明前一秒还在愉悦的操练着。

如上图就是不再快乐的现象,如下图就是可以继续快乐的解决方法。

其实是NAT的服务未启动导致的。

计算机右击选择管理

RocketMQ搭建
官网下载

 下载 | RocketMQ

我这里以4.9.5的版本进行的搭建

上传解压

上传到自定义的目录下解压,我的是:/app/rocketmq/rocketmq-all-4.9.5-bin-release 仅做参考

下图是解压后的目录结构

调整运行内存配置

由于感情深厚的电脑性能有限,所有bin/runserver.sh脚本里的内存配置需要调小些:

jdk是1.8的版本所以只改这里就好了。

同样的修改bin/runbroker.sh脚本里的内存配置:

启动服务

RocketMQ有两类服务需要启动,一类是nameService,一类是brokerService。

#启动nameService

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release

nohup bin/mqnamesrv &

#启动brokerService

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release

nohup bin/mqbroker &

#查看启动日志

tail -f nohup.out

成功日志如下:

快速体验

RocketMQ提供了可以快速体验消息收发功能的脚本

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release/bin

#生产者发消息

tools.sh org.apache.rocketmq.example.quickstart.Producer 

#消费者消费消息

tools.sh org.apache.rocketmq.example.quickstart.Consumer

RocketMQ Dashboard 搭建

RocketMQ Dashboard 是官方提供的一款可视化管理服务

官网下载

下载 | RocketMQ

官方只提供了源码,需要自行使用maven进行编译。

修改配置

上传解压

上传至自定义的目录并解压,我的是:/app/rocketmq/rocketmq-dashboard-1.0.0 仅做参考

maven编译

cd /app/rocketmq/rocketmq-dashboard-1.0.0

mvn clean package -Dmaven.test.skip=true

启动服务

编译之后该目录会出现target文件夹,target内有打好的jar包

#执行命令启动dashboard服务

java -jar rocketmq-dashboard-1.0.0.jar

打印这个日志说明成功了,上面显示了端口8800

若浏览器输入地址后提示无法访问此网站,则是由于虚拟机防火墙导致的,简单粗暴就是把防火墙关掉并且开机禁止自启,要么就放开端口(记得重启防火墙不然不生效)。

#检查防火墙是否启用

firewall-cmd --state

#启动防火墙

systemctl start firewalld

#停止防火墙

systemctl stop firewalld

#重启防火墙

systemctl restart firewalld

#开机自启动防火墙

systemctl enable firewalld

#禁止开机自启动防火墙

systemctl disable firewalld

#打开8800端口,添加永久规则

firewall-cmd --zone=public --add-port=8800/tcp --permanent

#关闭8800端口,移除永久规则

firewall-cmd --zone=public --remove-port=8800/tcp --permanent

访问

然后欢迎来到Dashboard

RocketMQ 分布式集群搭建

你知道的我是不会满足于单节点部署的

虚拟机准备

首先对虚拟机进行克隆,这样每台机子的信息,装的插件等等都是一样的,用之前只需要改一下主机名称、静态的ip地址就可以了。

#修改主机名称

hostnamectl set-hostname centos2

#查看主机名称

hostname

#修改静态IP

cd /etc/sysconfig/network-scripts/

vi ifcfg-ens32

集群配置文件

贴心的官方为我们提供了多种集群部署的配置文件模板

2m-noslave:2主无从

2m-2s-sync:2主2从同步

2m-2s-async:2主2从异步

dledger:dledger高可用集群

修改配置

这次按照2m-2s-async部署

主机用途1用途2
centos1部署NameServer1部署Dashboard
centos2部署NameServer2部署BrokerServer-a,BrokerServer-b-s
centos3部署NameServer3部署BrokerServer-b,BrokerServer-a-s

第一组broker服务

broker-a.properties

broker-b-s.properties

第二组broker服务

broker-b.properties

broker-a-s.properties

注意:store的路径不能一样,不然同一台机子启动第二个broker服务时会报错,如下:

java.lang.RuntimeException: Lock failed,MQ already started
        at org.apache.rocketmq.store.DefaultMessageStore.start(DefaultMessageStore.java:240)
        at org.apache.rocketmq.broker.BrokerController.start(BrokerController.java:855)
        at org.apache.rocketmq.broker.BrokerStartup.start(BrokerStartup.java:63)
        at org.apache.rocketmq.broker.BrokerStartup.main(BrokerStartup.java:57)

这是因为abort是RocketMQ判断服务是否正常关闭的一个标识文件,正常情况下,会在启动时创建,在关闭服务时删除。但如果遇到类似服务器宕机,或者kill -9等非正常关闭服务的情况,这个abort文件不会删除,因此RocketMQ就可以据此判断上一次服务是否正常关闭,非正常则后续就会做一些数据恢复的操作。

启动服务

#第一组服务启动

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release/

nohup bin/mqbroker -c ./conf/2m-2s-async/broker-a.properties &

nohup bin/mqbroker -c ./conf/2m-2s-async/broker-b-s.properties &

#第二组服务启动

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release/

nohup bin/mqbroker -c ./conf/2m-2s-async/broker-b.properties &

nohup bin/mqbroker -c ./conf/2m-2s-async/broker-a-s.properties &

检查集群服务

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release/bin

mqadmin clusterList

Dashboard配置

修改application.properties文件的rocketmq.config.namesrvAddr属性

cd /app/rocketmq/rocketmq-dashboard-1.0.0/src/main/resources

vi application.properties

修改后重新编译即可

若出现下面报错则需要添加环境变量

vi /etc/profile

export NAMESRV_ADDR='localhost:9876'

source /etc/profile

出现下面报错则需要放开对应的端口。

网上很多说broker的配置要添加brokerIP1=xx.xx.xx.xx,咱们是用的本机不是云服务器,所有不用。

需开放的端口

每个服务器需开放七个端口
namesrv:9876
broker主节点:10911、10909、10912
broker从节点:11011、11009、11012
端口规则说明:
namesrv默认端口:9876
broker配置的listenPort 端口:10911
vip通道端口为:listenPort - 2 = 10909
ha通道端口为:listenPort + 1 = 10912

其他命令

查看所有的topic:sh mqadmin topicList -n nameserver地址

查看自定的topic:sh mqadmin topicList -n nameserver地址 | grep YourTopicName

查看消费者信息:sh mqadmin consumerProgress -n nameserver地址

查看消费者信息:sh mqadmin consumerProgress -n nameserver地址 -g yourConsumerGroup

查看Broker状态:sh mqadmin brokerStatus -n nameserver地址 -b brokerIP

未完待续...

http://www.yayakq.cn/news/387567/

相关文章:

  • 网站底部链接代码网站主页 内页 关键词 一样
  • 网站微信支付怎么开通logo在线制作免费生成
  • 重庆手机微信网站建设太原市今天新闻
  • 顺企网吉安网站建设佛山网站建设公司怎么做
  • 辽宁网站制作西宁网站怎么做seo
  • 网站托管如何收费vs2013网站开发教程
  • 建设银行网站上改手机号码wordpress发文章套模版
  • 做良心网站岳麓区营销型网站建设定制
  • 设计接单网站大全自己做的网站服务器在哪里
  • 上海网站建设工作室南昌网站建设_南昌做网站公司
  • wordpress站点地址我看别人做系统就直接网站下载软件
  • 旅游网站设计思路及设计过程深夜一个人适合看的电影
  • 三水建设局招标网站株洲网站建设优化
  • 企业网站的功能列表曲阜网站建设哪家便宜
  • 有没有专门做家纺的网站营销型网站建设项目需求表
  • 医院网站asp石家庄教育平台网站建设
  • 做网站的公司主要工作上海企业登记一网通办
  • 免费制作网络商城网站wordpress 文章调用函数
  • 自己做微网站制作教程哈尔滨手机网站建设价格
  • 全景效果图网站关于校园图书馆网站建设
  • 东莞专业网站推广方式不同端口装 wordpress
  • 哪些网站适合推广python 网站开发怎么部署
  • 杭州城市建设网站WordPress如何加代码
  • 竞价单页网站制作教程王野摩托车
  • 网站建设推广最简单的话术石家庄学校网站建设
  • 网站建设亻金手指科杰第三方做公司网站
  • 分类信息网站营销排名好的网站建设企业
  • 网站推广用什么方法最好制作网站公司谁家好
  • 南昌网站设计专业排名宣传推广的方式
  • ps做汽车网站下载在线网站制作模拟