更多问题
# Jpom添加项目、启动、查看项目报错
1.运行的java进程有32位和64位的
2.抛出异常Unable to open socket file: target process not responding or HotSpot VM not load。
针对以上两个问题,Jpom目前采用略过这些进程的解决办法,请更新到2.3.1以上。
# 服务端添加插件端
目前支持的方式有如下:
- 手动添加,节点列表添加按钮,填写节点信息
- 插件端自动注册,配置服务端 token,在插件端中配置注册信息
- SSH 安装插件端,先添加 ssh 到服务端中,然后根据页面按钮提示安装
- 快速安装并绑定,节点列表中有快速安装操作引导
# 关于上传文件进度条说明
目前 Jpom 中到上传文件进度条仅是一个心里安慰剂(有相关经验到开发同学都懂)
目前暂时没有考虑优化为真实进度条的计划(主要是因为开发起来有一定工作量,带来的体验并不能提升多少)
关于在浏览器中上传项目文件缓慢原因说明, Jpom 目前都使用 http 协议和插件端通讯,那么在浏览器中上传,首先会将文件上传到服务端,再由服务端上传到插件端(节点),用户感知到的上传耗时就会多用一部分时间。服务端上传到插件端中理论上如果使用内网通讯那么此耗时基本可以忽略。
# 如何在 Jpom 中备份项目文件
在 Jpom 中备份项目相关文件有如下方式:
- 在线构建产生到构建历史
- 为节点项目开启备份文件功能
# 在线构建备份文件说明
在线构建会为每次构建成功到产物目录生成一个构建历史并备份相关文件
可以针对相关产物文件进行:
- 下载:下载到本地
- 回滚:重新执行一遍发布逻辑
# 常见问题未知问题
https://github.com/alibaba/arthas/issues/347 (opens new window)
https://bugs.java.com/bugdatabase/view_bug.do?bug_id=4770092 (opens new window)
# windows 环境项目在运行中不能删除文件
由于系统原因,暂时还没有找到解决办法
# 快速在Jpom管理页面中添加自定义js代码
比如我们需要对Jpom的后台页面添加一些自定义js代码,来实现自己的业务。如通用的添加cnzz监测代码
# 操作流程如下
- 在Jpom的Server端的数据目录同级创建【script】目录
- 在创建的【script】目录中添加【common.js】文件即可
# common.js 文件中支持html和js混写
如:(此代码为Jpom演示平台的实例)
<div style="display: none;">
<script type="text/javascript" src="https://s96.cnzz.com/z_stat.php?id=0000&web_id=0000"></script>
</div>
<script type="text/javascript">
if(location.pathname=='/login.html') {
const user = layui.data('user');
if(!user.userName){
layer.msg('演示账号:demo </br> 密码:demo123');
}
}
</script>
2
3
4
5
6
7
8
9
10
11
# kill: xx xxx : arguments must be process or job IDs
当相关日志出现类似错误信息时候,是因为 kill 默认只支持单过进程,当传入多过进程 id 就会出现类似提示
一般是因为使用: pid=$(ps -ef | grep -v 'grep' | egrep xxxx | awk '{printf $2 " "}')
匹配到多过进程号
这里解决方案有如下:
- 检查 ps 命令筛选是否准确唯一,如果筛选关键词错误请先修正筛选关键词
- 使用相关命令实现批量 kill 进程
# 批量关闭进程相关命令举例:
- kill -9 $(ps aux |grep "xxxx"| awk '{print $2}')
- kill -9 $(pgrep xxxx)
- ps -ef | grep -v 'grep' | egrep xxxx | awk '{printf $2 " "}' | xargs kill -9
xxxx 需要替换为进程标识,比如:java、php、springbootxxx
# 获取远程版本信息失败: Received fatal alert: internal_error
当使用在线升级中出现一直没有办法获取到新版本,并且控制台出现如下日志:Received fatal alert: internal_error
可能原因为:JDK 版本问题
参考文档:
- https://blog.csdn.net/sarafina527/article/details/104813015 (opens new window)
- https://blog.csdn.net/qq_36218267/article/details/121741914 (opens new window)
解决办法:
建议升级 JDK:JDK 1.8.0_311+
- 升级JDK版本,从 JDK1.8.0_121 升级到 jdk1.8.0_212
# 数据存储方式、使用的说什么数据库?
Jpom 为了方便用户快捷安装使用不需要额外配置数据所以采用了 h2 数据库在存储。
h2database 官网 (opens new window)
# The stack size sprcified is too small, Specify at least 328k
修改sh(agent.sh/agent.bat/server.sh/server.bat)脚本内容 -Xss=328k ,后可以启动。