Activemq的端口监听介绍及端口优化

简介:

在activemq的conf/activemq.xml主配置文件里,有这样一段话,如图:

wKioL1hOO8GREhQQAAEBIUDtPqU599.png


这个图里里的transportConnectors字段就是mq对各个网络协议端口的规定,由图可见,openwire这个name使用的接入端口是61616,amqp这个name的接入端口号是5672。name里的值是随便写的,它也会体现在mq的web Connections界面里,而0.0.0.0是代表本机所有设备的意思,注意这里不可以写127.0.0.1或者localhost,这样写的话mq是无法连上网的。再往后面看,后面也规定对应name的端口最大的链接数是1000,wireFormat.maxFrameSize的意思是“一个完整消息的大小”,这里规定是100M。


这里补充一句,Activemq默认的消息协议是openwire,他是tcp。


在“transportConnector”标记中,除了必须填写的“name”属性和“uri”属性以外还有一些可选择的属性,例如:enableStatusMonitor、updateClusterClients。详细的属性介绍可参考官方文档 http://activemq.apache.org/configuring-transports.html 中 “Server side options”部分章节的介绍。


在activemq的5.13.x里,apache公司把这一段内容进行了简化,变成了下面的样子。

wKioL1hOPwegzhz7AAApmMEnsFQ441.png

那些七七八八的协议统一整合成了一个auto,对单个协议的设定也是大锅烩了。这样的设置由于没有特别指定activemq的网络监听端口,所以它默认使用的是BIO的网络IO模型,而对于tcp为主的网络架构,我们应该特别说明要用的是NIO网络模型,所以我们更改配置如下:


wKioL1hOQIDzR7B-AAAoLpQHMg8097.png

这么改完之后,只有tcp协议才能通过,如果除了tcp还有其他的协议怎么办?


wKioL1hORXfjoFpuAAAWhQFGPfM762.png

改成这样就行了。


如果为了彰显逼格以及让你的mq更加坚挺,我们还应该增加如下的字段:

1
<transportConnector name= "auto+nio"  uri= "auto+nio://0.0.0.0:61608?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600&amp;org.apache.activemq.transport.nio.SelectorManager.corePoolSize=20&amp;org.apache.activemq.transport.nio.SelectorManager.maximumPoolSize=50"  />


这里还额外设置NIO使用的线程池核心工作线程数量和最大工作线程数量。



参考资料:http://blog.163.com/_kid/blog/static/3040547620161634230453/


 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1881924


相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
28天前
|
负载均衡 网络协议 算法
slb监听协议与端口
SLB是云服务商提供的负载均衡服务,用于分发客户端请求到多台后端服务器,提升服务可用性和响应速度。关键概念包括监听协议(TCP、UDP、HTTP、HTTPS、TCPSSL)和监听端口。监听协议决定了SLB处理请求的方式,而监听端口则是SLB接收请求的入口。配置时需根据应用选择合适协议和端口,并可设置负载均衡算法(如轮询、最少连接等)。客户端应通过SLB统一入口访问后端服务,避免绕过SLB导致的问题。
44 2
|
1月前
|
负载均衡 网络协议 安全
slb选择监听协议和端口
阿里云SLB中,监听协议(TCP、HTTP、HTTPS)与端口(80、443等)决定客户端请求的处理方式。TCP适用于纯TCP或自处理HTTP的场景,HTTP用于智能调度Web服务,HTTPS提供安全的HTTP传输。监听端口通常匹配应用标准,如80 for HTTP,443 for HTTPS。配置时,可考虑HTTPS重定向和传递`X-Forwarded-Proto`头以识别请求来源。选择应基于业务需求和安全考虑。
29 3
|
13天前
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
12 0
|
3月前
|
运维 安全 数据库
cmd中使用telnet检测远程的ip及端口是否处于监听状态
cmd中使用telnet检测远程的ip及端口是否处于监听状态
30 1
|
7月前
|
Java 应用服务中间件
本地启动 Hybris 服务器调试模式后,监听在 8000 端口
本地启动 Hybris 服务器调试模式后,监听在 8000 端口
51 0
|
7月前
|
JSON 网络协议 Java
springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】
前后端分离项目中,在调用接口调试时候,我们可以通过cpolar内网穿透将本地服务端接口模拟公共网络环境远程调用调试,本次教程我们以Java服务端接口为例。
60 0
springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】
|
7月前
|
JSON 网络协议 Java
springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】
springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】
87 0
|
8月前
|
运维 网络协议 Linux
Linux系统之查看进程监听端口方法
Linux系统之查看进程监听端口方法
242 0
|
9月前
|
网络协议
swoole 端口监听,关闭tcp服务
某直播平台,需要观察员去不定时的抽查直播平台的内容,对于直播网站不良的直播进行封禁和停播的处理。
swoole 端口监听,关闭tcp服务
|
10月前
|
JSON 网络协议 Java
springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】
springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】
184 0