1. 环境准备:从零搭建Linux基础环境
第一次接触金蝶Apusic中间件的同学可能会被各种术语吓到,其实单机部署就像组装一台电脑——只要把配件准备齐全,按步骤安装就能跑起来。我最近在CentOS 7上实测了整个流程,分享几个关键要点。
操作系统选择建议用CentOS 7或RHEL 7这类稳定版本,避免使用太新的发行版。曾经在Ubuntu 20.04上遇到glibc兼容性问题,折腾半天不如直接换系统来得快。内存建议4G起步,生产环境最好8G以上,毕竟中间件还要跑应用。
安装必备依赖时容易踩的坑是漏装32位库。即使系统是64位的,有些组件仍然依赖32位环境。用这个命令一次性搞定:
yum install -y glibc.i686 libstdc++.i686JDK配置是第一个关键点。金蝶Apusic 9.0官方推荐JDK 1.8,实测OpenJDK也能用,但建议用Oracle JDK更稳定。安装后记得验证:
java -version # 应该显示类似:java version "1.8.0_201"防火墙设置经常被忽略,导致后续无法访问管理控制台。建议提前开放端口(示例为默认6888):
firewall-cmd --zone=public --add-port=6888/tcp --permanent firewall-cmd --reload注意:如果企业环境有安全限制,记得提前申请端口开放权限。我有次在客户现场调试两小时,最后发现是防火墙策略没放行。
2. 安装部署:手把手解压与配置
拿到AAS-V9.0.zip安装包后,别急着解压。先规划好安装目录,我习惯放在/usr/local下:
mkdir -p /usr/local/AAS unzip AAS-V9.0.zip -d /usr/local/AAS环境变量配置是个精细活。打开bin/setenv文件,主要修改两个地方:
- JAVA_HOME指向你的JDK路径
- 内存参数根据机器配置调整(开发环境建议-Xms512m -Xmx1024m)
vi /usr/local/AAS/bin/setenv # 修改示例: export JAVA_HOME=/usr/java/jdk1.8.0_201 export JAVA_OPTS="-Xms512m -Xmx1024m"第一次启动必然会遇到的License问题,解决方案其实很简单:
- 将合法license.xml覆盖安装目录下的文件
- 确保文件权限是可读的(chmod 644 license.xml)
启动命令看似简单但暗藏玄机:
cd /usr/local/AAS/domains/mydomain/bin ./startapusic实测发现:首次启动必须在前台运行!因为要交互式设置admin密码。我有次偷懒直接用nohup启动,结果密码设置失败,不得不清空整个domain重新来过。
3. 服务配置:调优与问题排查
默认配置直接跑虽然能用,但就像新车不磨合——迟早出问题。分享几个必改参数:
端口修改在apusic.conf里(路径:domains/mydomain/config):
vi /usr/local/AAS/domains/mydomain/config/apusic.conf # 找到: <Server port="6888" /> # 改为: <Server port="8080" />线程池调整同样在这个文件里,根据CPU核心数设置:
<ThreadPool name="default" min="10" max="200"/>内存溢出是常见故障,除了调整JVM参数外,建议在startapusic脚本里加上内存监控:
JAVA_OPTS="$JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp"遇到服务无法启动时,按这个顺序排查:
- 检查logs/server.log报错信息
- 确认端口是否被占用(netstat -tunlp | grep 端口号)
- 验证JDK版本是否符合要求
有个坑我踩过三次:SELinux会导致权限问题。如果所有配置都正确但服务起不来,试试:
setenforce 0 # 或者永久关闭: vi /etc/selinux/config SELINUX=disabled4. 应用发布:WAR包部署实战
金蝶Apusic支持两种部署方式:管理控制台和命令行。新手建议先用控制台练手:
- 访问http://服务器IP:端口/admin
- 用首次启动设置的admin密码登录
- 在"应用管理"页面上传WAR包
但生产环境更推荐命令行部署,方便自动化。以部署名为demo.war的应用为例:
# 先停止服务 cd /usr/local/AAS/domains/mydomain/bin ./stopapusic # 清空默认应用 rm -rf /usr/local/AAS/domains/mydomain/applications/* # 部署新应用 cp demo.war /usr/local/AAS/domains/mydomain/applications/ROOT.war # 重新启动 nohup ./startapusic > startup.log 2>&1 &上下文路径是个容易混淆的概念。如果把WAR包重命名为ROOT.war,访问路径就是http://ip:port/。如果保持原名demo.war,访问路径则是http://ip:port/demo。
数据库连接池配置建议通过管理控制台操作:
- 进入"资源->JDBC->连接池"
- 点击新建,填写数据库信息
- 测试连接通过后保存
最后提醒:修改配置后一定要重启服务!我有次改了数据源配置忘记重启,排查半天才发现问题。现在养成了习惯——任何修改后立即执行:
./stopapusic ./startapusic整个部署过程最花时间的其实是等服务启动。大型应用可能要3-5分钟,别急着刷新页面。建议用tail命令实时查看日志:
tail -f /usr/local/AAS/domains/mydomain/logs/server.log看到这行日志就说明成功了:
[INFO] 服务器启动完成,耗时 xx 秒