您的位置:首页 >CentOS Java微服务如何搭建
发布于2026-04-23 阅读(0)
扫一扫,手机访问

想把 Ja va 微服务稳稳当当地部署在 CentOS 服务器上?这事儿说复杂也复杂,说简单也简单。关键在于把环境、部署方式和运维要点这三块基石打牢。下面这份实操指南,就为你一步步拆解清楚。
万事开头难,先把地基打好。这一步的核心就四件事:装好Ja va、规划好目录、按需部署中间件、最后别忘了给防火墙打个招呼。
sudo yum install -y ja va-1.8.0-openjdk-devel。装完后,用 ja va -version 和 ja vac -version 验明正身。如果团队规定必须用 Oracle JDK,那就得辛苦点,手动下载并配置好 JA VA_HOME 环境变量。ja vaapp,然后规划好目录结构。通常,/home/ja vaapp/soft 放安装包,/home/ja vaapp/app 放微服务的 JAR 包,再单独建个 /home/ja vaapp/app/logs 来统一管理日志,后期排查问题会清爽很多。conf/zoo_sample.cfg 复制一份并重命名为 zoo.cfg,就能启动了。firewall-cmd --add-port=8080/tcp --permanent && firewall-cmd --reload。环境就绪,接下来就是重头戏:如何把微服务跑起来。目前主流有两种架构风格,选择哪一种,得看你的技术栈和具体需求。
这是目前最流行的“全家桶”方案,特点是开箱即用,服务治理组件丰富。
ja va -jar app.jar。nohup ja va -jar app.jar >/dev/null 2>&1 &。-Xms512m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m。别忘了加上输出 GC 日志的参数,这可是线上排查内存问题的“救命稻草”。application.yml,通过 --spring.config.location=... 参数指定路径。多环境(开发、测试、生产)配置,就用 application-{profile}.yml 来区分。jps 命令可以快速查看 Ja va 进程。日志务必统一输出到之前规划好的 /home/ja vaapp/app/logs/ 目录下,并配置好按天或按大小滚动,避免撑爆磁盘。如果你追求更高效、更直接的远程过程调用(RPC),那么 Dubbo 这套经典组合值得考虑。
./zkServer.sh status 检查一下状态。dubbo-spring-boot-starter:2.7.3 和对应的 Zookeeper 客户端依赖。服务能跑起来只是第一步,要让它跑得稳、跑得久,还得在部署运维上下功夫。这几点是过来人总结的血泪经验。
nohup 了。生产环境强烈推荐使用 systemd 来托管服务。它能帮你轻松实现开机自启、自动重启、日志统一收集和轮转。后文会给出具体的配置模板。当然,临时测试时用 nohup ... & 配合 jps、kill 命令也无可厚非。理论说了这么多,不如动手敲一遍。下面这份命令清单,覆盖了从安装到运维的关键操作,你可以直接复制执行。
sudo yum install -y ja va-1.8.0-openjdk-develja va -version && ja vac -versionsu - ja vaappcd /home/ja vaapp/app/order-serviceja va -jar order-service-0.0.1-SNAPSHOT.jar --spring.config.location=./application-prod.ymlnohup ja va -Xms512m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:./logs/gc.log -jar order-service-0.0.1-SNAPSHOT.jar --spring.config.location=./application-prod.yml >./logs/run.log 2>&1 &jps 或 ps -ef | grep ja vajps 获取进程号 PIDkill -9 (生产建议优雅停机:kill 或调用 Actuator shutdown)firewall-cmd --add-port=8080/tcp --permanent && firewall-cmd --reload[Unit]
Description=Order Service
After=network.target
[Service]
Type=simple
User=ja vaapp
WorkingDirectory=/home/ja vaapp/app/order-service
ExecStart=/usr/bin/ja va -Xms512m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -jar /home/ja vaapp/app/order-service/order-service-0.0.1-SNAPSHOT.jar --spring.config.location=./application-prod.yml
SuccessExitStatus=143
Restart=on-failure
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reloadsudo systemctl enable --now order-servicesudo systemctl status order-servicejournalctl -u order-service -f
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9