1. 首页 > IT综合教程 > 正文

it教程FG079-中间件管理与监控

内容大纲

中间件管理概述

中间件是连接应用程序和底层系统的桥梁,包括应用服务器、消息队列、API网关等。本教程将详细介绍中间件的管理与监控方法,确保中间件的稳定运行和性能优化。

Tomcat管理与监控

Tomcat基本管理

Tomcat是一个开源的Java Servlet容器,用于部署和运行Java Web应用。

# 启动Tomcat
# cd /opt/tomcat/bin
# ./startup.sh

# 停止Tomcat
# ./shutdown.sh

# 查看Tomcat状态
# ps -ef | grep tomcat

# 查看Tomcat日志
# tail -f /opt/tomcat/logs/catalina.out

Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr/lib/jvm/java-11-openjdk-amd64
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.

root 1234 1 0 10:00 ? 00:00:00 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/opt/tomcat -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start

Tomcat监控

Tomcat提供了多种监控方式,包括JMX、Manager应用和第三方监控工具。

# 启用JMX监控
# 编辑catalina.sh,添加以下参数
CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false”

# 重启Tomcat
# ./shutdown.sh
# ./startup.sh

# 使用jconsole连接JMX
# jconsole localhost:9999

# 启用Manager应用
# 编辑tomcat-users.xml

WebLogic管理与监控

WebLogic基本管理

WebLogic是Oracle公司的商业应用服务器,用于部署和运行企业级Java应用。

# 启动WebLogic Admin Server
# cd /opt/weblogic/user_projects/domains/base_domain/bin
# ./startWebLogic.sh

# 启动Managed Server
# ./startManagedWebLogic.sh server1 http://localhost:7001

# 停止WebLogic
# ./stopWebLogic.sh

# 查看WebLogic状态
# ps -ef | grep weblogic

. . .

weblogic 1234 1 0 10:00 ? 00:00:00 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -Djava.security.policy=/opt/weblogic/wlserver/server/lib/weblogic.policy -Xms512m -Xmx1024m -Dweblogic.Name=AdminServer -Djava.security.egd=file:/dev/./urandom -Dweblogic.management.username=weblogic -Dweblogic.management.password=weblogic123 -Dweblogic.ProductionModeEnabled=false -Dweblogic.nodemanager.ServiceEnabled=true -Dweblogic.security.SSL.ignoreHostnameVerification=true -Dweblogic.nmservice.enabled=true -Dweblogic.welcome.file=/welcome.jsf -Dweblogic.ReverseDNSAllowed=false weblogic.Server

WebLogic监控

WebLogic提供了多种监控方式,包括Admin Console、WLST和第三方监控工具。

# 使用WLST监控WebLogic
# cd /opt/weblogic/oracle_common/common/bin
# ./wlst.sh

# 连接到WebLogic Admin Server
wls:/offline> connect(‘weblogic’, ‘weblogic123’, ‘t3://localhost:7001’)

# 查看服务器状态
wls:/base_domain/serverConfig> serverRuntime()
wls:/base_domain/serverRuntime> cd(‘ServerRuntimes/AdminServer’)
wls:/base_domain/serverRuntime/ServerRuntimes/AdminServer> ls()

# 查看JVM状态
wls:/base_domain/serverRuntime/ServerRuntimes/AdminServer> cd(‘JVMRuntime/AdminServer’)
wls:/base_domain/serverRuntime/ServerRuntimes/AdminServer/JVMRuntime/AdminServer> ls()

WebSphere管理与监控

WebSphere基本管理

WebSphere是IBM公司的商业应用服务器,用于部署和运行企业级Java应用。

# 启动WebSphere
# cd /opt/IBM/WebSphere/AppServer/bin
# ./startServer.sh server1

# 停止WebSphere
# ./stopServer.sh server1

# 查看WebSphere状态
# ./statusServer.sh server1

# 查看WebSphere日志
# tail -f /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/server1/SystemOut.log

ADMU0116I: Tool information is being logged in file /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/server1/startServer.log
ADMU0128I: Starting tool with the AppSrv01 profile
ADMU3100I: Reading configuration for server: server1
ADMU3200I: Server launched. Waiting for initialization status.
ADMU3000I: Server server1 open for e-business; process id is 1234

Server server1 is STARTED

WebSphere监控

WebSphere提供了多种监控方式,包括Admin Console、wsadmin和第三方监控工具。

# 使用wsadmin监控WebSphere
# cd /opt/IBM/WebSphere/AppServer/bin
# ./wsadmin.sh -lang jython

# 连接到WebSphere
WASX7209I: Connected to process “server1” on node fgeduNode01 using SOAP connector; The type of process is: UnManagedProcess

# 查看服务器状态
AdminControl.queryNames(‘type=Server,node=fgeduNode01,process=server1,*’)

# 查看JVM状态
AdminControl.getAttribute(AdminControl.queryNames(‘type=JVM,process=server1,*’), ‘heapSize’)

消息队列管理与监控

ActiveMQ管理与监控

ActiveMQ是一个开源的消息队列系统,用于实现应用间的异步通信。

# 启动ActiveMQ
# cd /opt/activemq/bin
# ./activemq start

# 停止ActiveMQ
# ./activemq stop

# 查看ActiveMQ状态
# ./activemq status

# 查看ActiveMQ日志
# tail -f /opt/activemq/data/activemq.log

# 访问ActiveMQ管理控制台
# http://localhost:8161/admin

INFO: Loading ‘/opt/activemq/bin/env’
INFO: Using java ‘/usr/lib/jvm/java-11-openjdk-amd64/bin/java’
INFO: Starting – inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: pidfile created : ‘/opt/activemq/data/activemq.pid’ (pid ‘1234’)

ActiveMQ is running (pid ‘1234’)

RabbitMQ管理与监控

RabbitMQ是一个开源的消息队列系统,基于AMQP协议。

# 启动RabbitMQ
# systemctl start rabbitmq-server

# 停止RabbitMQ
# systemctl stop rabbitmq-server

# 查看RabbitMQ状态
# systemctl status rabbitmq-server

# 启用RabbitMQ管理插件
# rabbitmq-plugins enable rabbitmq_management

# 访问RabbitMQ管理控制台
# http://localhost:15672

● rabbitmq-server.service – RabbitMQ Messaging Server
Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2026-04-03 10:00:00 CST; 1h ago
Main PID: 1234 (beam.smp)
Tasks: 87 (limit: 4915)
Memory: 100.0M
CPU: 1.234s
CGroup: /system.slice/rabbitmq-server.service
├─1234 /usr/lib/erlang/erts-10.6.4/bin/beam.smp -W w -A 64 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -K true -B i — -root /usr/lib/erlang -progname erl — -home /var/lib/rabbitmq — -pa /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.9/ebin -noshell -noinput -s rabbit boot -sname rabbit@fgedu -boot start_sasl -kernel inet_default_connect_options [{nodelay,true}] -sasl errlog_type error -sasl sasl_error_logger false -rabbit error_logger {file,”/var/log/rabbitmq/rabbit@fgedu.log”} -rabbit sasl_error_logger {file,”/var/log/rabbitmq/rabbit@fgedu-sasl.log”} -rabbit enabled_plugins_file “/etc/rabbitmq/enabled_plugins” -rabbit plugins_dir “/usr/lib/rabbitmq/plugins” -rabbit plugins_expand_dir “/var/lib/rabbitmq/mnesia/rabbit@fgedu-plugins-expand” -os_mon start_cpu_sup false -os_mon start_disksup false -os_mon start_memsup false -mnesia dir “/var/lib/rabbitmq/mnesia/rabbit@fgedu” -kernel inet_dist_listen_min 25672 -kernel inet_dist_listen_max 25672
├─1345 erl_child_setup 32768
├─1367 inet_gethost 4
└─1368 inet_gethost 4

Apr 03 10:00:00 fgedu systemd[1]: Started RabbitMQ Messaging Server.

API网关管理与监控

Spring Cloud Gateway管理与监控

Spring Cloud Gateway是一个基于Spring Boot的API网关,用于路由和过滤API请求。

# 启动Spring Cloud Gateway
# java -jar gateway-service.jar

# 查看Gateway日志
# tail -f gateway-service.log

# 访问Gateway监控端点
# curl http://localhost:8080/actuator/health
# curl http://localhost:8080/actuator/metrics

2026-04-03 10:00:00.123 INFO 1234 — [ main] o.s.b.web.embedded.netty.NettyWebServer : Netty started on port(s): 8080
2026-04-03 10:00:00.456 INFO 1234 — [ main] c.f.g.GatewayServiceApplication : Started GatewayServiceApplication in 1.234 seconds (JVM running for 1.456)

{“status”:”UP”}

{“names”:[“jvm.memory.max”,”jvm.threads.states”,”http.server.requests”,”process.files.max”,”jvm.gc.memory.promoted”,”system.load.average.1m”,”jvm.memory.used”,”jvm.gc.max.data.size”,”jvm.gc.pause”,”jvm.memory.committed”,”system.cpu.count”,”logback.events”,”tomcat.global.sent”,”jvm.buffer.memory.used”,”tomcat.sessions.created”,”jvm.threads.daemon”,”system.cpu.usage”,”jvm.gc.memory.allocated”,”tomcat.global.request.max”,”tomcat.global.request”,”tomcat.sessions.expired”,”jvm.threads.live”,”jvm.threads.peak”,”tomcat.global.received”,”process.uptime”,”process.cpu.usage”,”jvm.gc.count”,”process.files.open”]}

中间件安全

中间件安全配置

  • 定期更新中间件版本
  • 配置访问控制
  • 启用HTTPS
  • 配置防火墙规则
  • 禁用不必要的服务和端口
  • 定期备份配置和数据

Tomcat安全配置

# 禁用管理界面
# 编辑server.xml,注释掉以下内容

# 配置HTTPS
# 生成证书
keytool -genkey -alias tomcat -keyalg RSA -keystore keystore.jks

# 编辑server.xml,添加以下内容




# 重启Tomcat
# ./shutdown.sh
# ./startup.sh

最佳实践

生产环境建议:

  • 使用容器化部署中间件
  • 实施中间件监控系统
  • 制定中间件安全策略
  • 定期备份中间件配置和数据
  • 建立中间件故障应急预案
  • 定期更新中间件版本
  • 优化中间件性能参数
  • 使用负载均衡提高可用性

更多学习教程www.fgedu.net.cn

学习交流加群风哥微信: itpux-com

学习交流加群风哥QQ113257174

风哥提示:中间件管理与监控是IT运维中的重要部分,合理配置和监控中间件可以提高系统可靠性和性能。

更多学习教程公众号风哥教程itpux_com

author:www.itpux.com

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息