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

页面设计是什么专业游戏优化

页面设计是什么专业,游戏优化,手机网站 标题长度,如何运营好一个网站文章目录 创建自定义网络创建NameServer容器创建Broker容器正式开始启动 Nameserver 容器启动 Broker 容器并关联 Nameserverdocker exec -it rmqbroker vi /etc/rocketmq/broker.conf检查 namesrv 解析检查 Broker 注册状态Nameserver 日志Broker 日志检查容器日志手动指定 Br…

文章目录

  • 创建自定义网络
  • 创建NameServer容器
  • 创建Broker容器
  • 正式开始
    • 启动 Nameserver 容器
    • 启动 Broker 容器并关联 Nameserver
    • docker exec -it rmqbroker vi /etc/rocketmq/broker.conf
    • 检查 namesrv 解析
    • 检查 Broker 注册状态
    • Nameserver 日志
    • Broker 日志
    • 检查容器日志
    • 手动指定 Broker 地址创建 Topic
    • topic创建
    • 验证 Topic 是否成功创建
    • 检查 RocketMQ 集群状态
    • 自动创建消费者组(Consumer Group)
    • 查看消费者组列表
    • 关联配置(可选)
    • 注意事项
    • 手动创建消费者组(备用方案)

创建自定义网络

docker network create my-rocketmq-network

创建NameServer容器

docker run -di --network my-rocketmq-network -p 9876:9876 --name=rmqserver \
-e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \
-e "JAVA_OPTS=-Duser.home=/opt" \
foxiswho/rocketmq:server-4.5.1

创建Broker容器

docker run -di --network my-rocketmq-network -p 10911:10911 -p 10909:10909 --name=rmqbroker \
-e "JAVA_OPTS=-Duser.home=/opt" \
-e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \
foxiswho/rocketmq:broker-4.5.1
sudo iptables -t nat -L -n --line-numbers
使用 -n 参数禁止端口到服务名称的解析

NAT表主要用于网络地址转换,包括DNAT(目标地址转换)和SNAT/MASQUERADE(源地址转换)。PREROUTING链处理进入的数据包,修改目标地址;POSTROUTING链处理离开的数据包,修改源地址。DOCKER链是Docker服务自动生成的规则,用于容器网络的管理。

MASQUERADE的作用是动态源地址转换,常用于动态IP的环境;DNAT则是目标地址转换,用于端口转发。同时,Docker创建的规则可能会影响用户手动添加的规则,尤其是在PREROUTING链中规则顺序的问题,Docker的规则可能优先执行,导致用户规则未生效。

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destinationChain INPUT (policy ACCEPT)
无规则:直接接受所有流量(默认策略为 ACCEPT)。
num  target     prot opt source        destination
1    DOCKER     all  --  anywhere     !loopback/8  ADDRTYPE match dst-type LOCAL含义:将所有目标地址为 本地主机 IP 且源地址 不是环回网段(!loopback/8,即非 127.0.0.0/8)的流量转发到 DOCKER 链。隐藏信息:Docker 使用此规则处理从本地主机发往容器网络的流量。
删除 Docker 的冲突规则:sudo iptables -t nat -D DOCKER 7
sudo iptables -t nat -I PREROUTING 1 -p tcp --dport 9876 -j DNAT --to-destination 内网ip:9876

正式开始

启动 Nameserver 容器

docker run -d --name rmqserver -p 9876:9876 -e "JAVA_OPT_EXT=-server -Xms256m -Xmx256m -Xmn128m" -e "JAVA_OPTS=-Duser.home=/opt" foxiswho/rocketmq:server-4.3.2

启动 Broker 容器并关联 Nameserver

docker run -d --name rmqbroker -p 10911:10911 -p 10909:10909 --link rmqserver:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "JAVA_OPT_EXT=-server -Xms256m -Xmx256m -Xmn128m" -e "JAVA_OPTS=-Duser.home=/opt" -e "BROKER_IP1=<公网IP>" foxiswho/rocketmq:broker-4.3.2

–link rmqserver:namesrv # 关联 Nameserver 容器
-e “NAMESRV_ADDR=namesrv:9876” # 使用容器别名访问 Nameserver

docker exec -it rmqbroker vi /etc/rocketmq/broker.conf

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
brokerIP1 = 公网ip
autoCreateTopicEnable = true
listenPort = 10911
haListenPort = 10909
namesrvAddr = 公网ip:9876
autoCreateProducerGroup=true

检查 namesrv 解析

ping namesrv  # 应返回 172.17.0.3(rmqserver 容器的 IP)
cat /etc/hosts  # 确认 namesrv 指向 rmqserver 的 IP

检查 Broker 注册状态

查看 Nameserver 中的 Broker 列表:

docker exec -it rmqserver sh mqadmin clusterList -n namesrv:9876

Nameserver 日志

docker logs -f rmqserver

Broker 日志

docker logs -f rmqbroker

检查容器日志

docker logs -f rmqserver | grep "boot success"  # Nameserver 日志
docker logs -f rmqbroker | grep "boot success"  # Broker 日志

手动指定 Broker 地址创建 Topic

如果自动注册失败,直接指定 Broker 的地址:

docker exec -it rmqbroker sh mqadmin updateTopic \-n namesrv:9876 \-t TopicTest \-b "Broker 的公网 IP:10911"  

topic创建

docker exec -it rmqbroker sh mqadmin updateTopic -n namesrv:9876 -t TopicTest -b "公网ip:10911"

验证 Topic 是否成功创建

docker exec -it rmqbroker sh mqadmin topicList -n namesrv:9876
sudo iptables -A INPUT -p tcp --dport 10909 -j ACCEPT

网络模式选择
Bridge 模式:Docker 默认使用 bridge 网络模式,容器通过端口映射与宿主机通信。这种方式适合大多数场景,且配置简单。

Host 模式:如果你使用 host 模式,容器会直接使用宿主机的网络栈,端口映射不再需要,但可能会带来端口冲突的问题。

NAT 模式:NAT 模式通常用于虚拟机网络配置,Docker 容器一般不使用 NAT 模式。

检查 RocketMQ 集群状态

通过命令

mqadmin clusterList -n 192.168.33.1:9876 

确认 Broker 和 NameServer 状态正常。

查看 Broker 日志
检查 Broker 日志($ROCKETMQ_HOME/logs/rocketmqlogs/broker.log),排查是否有存储或网络错误。
使用命令行工具验证
查询消息:

mqadmin queryMsgByKey -n 192.168.33.1:9876 -t YourTopic -k YourKey

查看生产者组列表:

mqadmin producerConnection -n 192.168.33.1:9876 -g MyProducerGroup

自动创建消费者组(Consumer Group)

在RocketMQ中,订阅组(Subscription Group)包含消费者组的信息,所以自动创建订阅组实际上就是自动创建消费者组。
还需要考虑不同RocketMQ版本的差异。例如,4.5.0之后的版本可能默认行为不同,或者某些配置项有变化。
默认情况下,RocketMQ Broker 不会自动创建消费者组。需要通过以下配置显式启用:
Broker 配置文件(broker.conf)

# 允许自动创建订阅组(Subscription Group,包含消费者组)
autoCreateSubscriptionGroup = true# 设置 Broker 权限(6 表示读写权限)
brokerPermission = 6

关键配置解释
autoCreateSubscriptionGroup=true
允许 Broker 在消费者首次连接时自动创建订阅组(Subscription Group),即消费者组。
brokerPermission=6
确保 Broker 有权限自动创建组(默认值为 6,即读写权限,一般无需修改)。

查看消费者组列表

通过 RocketMQ 控制台或命令行工具检查消费者组是否自动创建:

mqadmin consumerConnection -n <namesrv-address> -g YourConsumerGroup

检查 Broker 日志
观察 Broker 日志($ROCKETMQ_HOME/logs/rocketmqlogs/broker.log),确认无权限错误或组创建失败信息。

关联配置(可选)

调整消费者组重试队列
如果消费者组需要重试队列(Retry Queue),可配置:

# 每个订阅组的重试队列数量(默认 1)
retryQueueNums = 1# 消费重试次数(默认 16 次)
retryMaxTimes = 16

注意事项

生产环境建议
自动创建功能适合开发和测试环境。生产环境建议手动创建消费者组,并通过控制台或 CLI 管理,避免组名冲突或权限问题。

权限控制
如果 Broker 集群启用了 ACL(访问控制列表),需确保消费者客户端有权限创建订阅组。

版本兼容性
RocketMQ 4.5.0+ 版本支持 autoCreateSubscriptionGroup,低版本需升级。

手动创建消费者组(备用方案)

如果禁用自动创建,可通过命令行手动创建订阅组:

mqadmin updateSubGroup -n <namesrv-address> -c <cluster-name> -g YourConsumerGroup
http://www.dtcms.com/wzjs/208.html

相关文章:

  • 如何做网站认证自制网站
  • 深圳做网站信科百度官网登录
  • 大型购物网站有哪些百度seo关键词优化公司
  • 引流推广话术文案杭州龙席网络seo
  • 网站制作建设公司哪家好今日热点
  • 深圳做网站de线上销售渠道有哪些
  • 网站百度排名怎么做快win7优化工具哪个好用
  • java 网站开发最新技术免费建站平台
  • 南京门户网站建设店铺推广渠道有哪些方式
  • 山东兽药网站建设本溪seo优化
  • 周口在线网站建设百度账号注册中心
  • 哪里专业做网站推广赚钱的app
  • 网站在线客服代码百度关键词指数排行
  • 手工做衣服的网站桂林网站设计制作
  • wordpress固定衔接出错百度seo推广方案
  • 怎么做监测网站的浏览量网络整合营销理论案例
  • 网站展现形式网络营销企业案例分析
  • 货源网站程序深圳市seo上词贵不贵
  • 企业网站开发文献综述专业搜索引擎seo公司
  • wordpress添加访问人数优化是什么意思
  • 蒙狼科技建设网站好不好seo技术培训岳阳
  • 成都网站开发等项目外包公司合肥网络推广公司
  • 网站怎么增加页面收录seo网络优化日常工作内容
  • 重庆做网站公司哪家好推动防控措施持续优化
  • 郑州专业建站报价上海外贸seo
  • 购物网站策划建设方案seo推广视频隐迅推专业
  • 做网站开发面临的困难看seo
  • 网站添加漂浮二维码怎么做seo网上培训多少钱
  • 网站建设如何制作教程如何做google推广
  • 做俄语网站建设新的数据新闻