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版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
10月前
|
负载均衡 网络协议 算法
slb监听协议与端口
SLB是云服务商提供的负载均衡服务,用于分发客户端请求到多台后端服务器,提升服务可用性和响应速度。关键概念包括监听协议(TCP、UDP、HTTP、HTTPS、TCPSSL)和监听端口。监听协议决定了SLB处理请求的方式,而监听端口则是SLB接收请求的入口。配置时需根据应用选择合适协议和端口,并可设置负载均衡算法(如轮询、最少连接等)。客户端应通过SLB统一入口访问后端服务,避免绕过SLB导致的问题。
870 2
|
10月前
|
负载均衡 网络协议 安全
slb选择监听协议和端口
阿里云SLB中,监听协议(TCP、HTTP、HTTPS)与端口(80、443等)决定客户端请求的处理方式。TCP适用于纯TCP或自处理HTTP的场景,HTTP用于智能调度Web服务,HTTPS提供安全的HTTP传输。监听端口通常匹配应用标准,如80 for HTTP,443 for HTTPS。配置时,可考虑HTTPS重定向和传递`X-Forwarded-Proto`头以识别请求来源。选择应基于业务需求和安全考虑。
533 3
|
1月前
|
网络协议 Unix 应用服务中间件
|
7月前
|
网络协议 Linux
Linux查看端口监听情况,以及Linux查看某个端口对应的进程号和程序
Linux查看端口监听情况,以及Linux查看某个端口对应的进程号和程序
823 2
|
8月前
|
人工智能 Serverless API
函数计算产品使用问题之如何在一个Docker容器内运行一个持续监听特定端口的应用程序
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
7月前
|
开发框架 .NET Linux
【Azure 应用服务】 部署到App Service for Linux 服务的Docker 镜像,如何配置监听端口呢?
【Azure 应用服务】 部署到App Service for Linux 服务的Docker 镜像,如何配置监听端口呢?
|
7月前
|
网络协议
【qt】TCP的监听 (设置服务器IP地址和端口号)
【qt】TCP的监听 (设置服务器IP地址和端口号)
411 0
|
7月前
|
Linux Windows
Windows查找监听端口对应的进程及其路径
Windows查找监听端口对应的进程及其路径
169 0
|
9月前
|
Java Android开发
Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。
【6月更文挑战第23天】 Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。客户端连接服务器,发送&quot;Hello, Server!&quot;后关闭。注意Android中需避免主线程进行网络操作。
153 4
|
10月前
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
84 0

热门文章

最新文章