发表于: 2019-12-16 23:23:09
1 1292
今天完成的事情:
1.tomcat部署war包
把war包放到web-apps下
尝试运行 出现错误
The JSP specification requires that an attribute name is preceded by whitespace,
但idea本地运行是没问题的
<%@ page language="java" contentType="text/html; charset=GBK"pageEncoding="GBK"%>
加个空格,问题解决
不过这个url是必须带项目名的,想要去掉项目名
我有尝试百度,搜到3种方法
1. Tomcat9部署WAR包访问不带项目名的方式 (保留webapps)
https://blog.csdn.net/h363659487/article/details/80796946
server.xml下增加最后一行内容
我加了 但并没有任何用
https://blog.csdn.net/u014622229/article/details/86304973
也没有任何用
3.终极解决方法
直接删除webapps文件下的 ROOT 把自己war解压完的文件改成ROOT
不过这不是最好的解决方法,但目前没找到其他的
2. jetty部署war包

直接点项目名称就可以进去
也可以直接输入URL
https://blog.csdn.net/hanshangzhi/article/details/75452415
resin jetty tomcat 三者部署项目差别
jetty需要在pom修改 在线上服务器没找到隐藏项目名称 方法
resin jetty tomcat 生成access-log日志
Resin生成日志
关于resin access-log配置命令的详解:
path 日志生成路径
format 日志输出格式 (我增加了一个%D %D含义为完成请花费花费的时间,以微妙为单位(微妙=毫秒)
https://www.xuebuyuan.com/839009.html
rollover-preiod 表示回滚的周期,1D表示以一天为单位回滚,所谓的回滚是将当前所有写日志操作都先锁住,然后将文件的内容复制到文件名带时间戳的文件里,完成之后access.log文件继续使用。
D W 时间戳格式是哪里来的呢 还是参考上方的那篇连接 都有
rollover-size 回滚的大小,这里是5M 用处是假如碰到大量用户请求时,日志会快速增加 caaess.log的大小如果超过5M 就备份到上方access.log.20191207 里 (2分钟扫描一次)
运行后打开日志 后面的数字为毫秒数
tomcat生成日志
修改tomcat bin目录下的 server.xml文件
此处在后方增加了
%m (显示GET POST等方法的运行返回结果)
%D (统计时间 以毫秒为单位)
格式参考连接:
https://www.cnblogs.com/cbwleft/articles/6728440.html
jetty生成日志
这个好难找啊 我看师兄的日报
在jetty的 start.ini文件增加了以下内容
--module=requestlog
## Logging directory (relative to $jetty.base)
# jetty.requestlog.dir=logs
## File path
jetty.requestlog.filepath=logs/yyyy_mm_dd.zzz.log
## Date format for rollovered files (uses SimpleDateFormat syntax)
# jetty.requestlog.filenameDatemat=yyyy_MM_dd
## How many days to retain old log files
# jetty.requestlog.retainDays=90
## Whether to append to existing file
# jetty.requestlog.append=false
## Whether to use the extended log output
# jetty.requestlog.extended=true
## Whether to log http cookie information
# jetty.requestlog.cookies=true
## Timezone of the log entries
# jetty.requestlog.timezone=GMT
## Whether to log LogLatency
# jetty.requestlog.LogLatency=false
但并没有什么用
logs文件里还是空的 什么都没有
网上搜到的配置都是修改 idea的插件jetty配置 和这个不相符
resin修改内存
</server-default>
关于内存设置
XX:MaxPermSize内存的永久保存区域大小
我同时修改的Xms xmx
以下是分别运行的结果:
64m 可以运行
运行最小内存大概为64m
resin 4.0 配置优化建议
https://blog.csdn.net/weixin_33874713/article/details/91603588
top命令
作用: 显示服务器相关进程内容
第一行显示了当前的系统时间,up是指系统运行时间,user 是指用户登录数,以及load average是指系统平均负载。
在平均负载有3个值:最近1分钟,最近5分钟,最近15分钟点。值越大说明系统的负载越高。由于进程短期的突发性活动,出现最近1分钟的高负载值也很常见。但近15分钟内平均负载都很高,说明说系统可能有问题。通常系统的负载值超过了2,就说明系统比较繁忙了。
最后二行是系统内存的状态。 第一行说的是系统的物理内存总量。Used当前用了多少内存。Free还有多少空闲内存。Buff/cache缓存的内存量。第二行说的是系统的交换空间。
默认情况下,top命令会按照%CPU值对进程排序。当top命令运行监控时,可以使用多种交互命令。例如按下f 键允许你选择对输出进行排序字段,默认是%CPU字段排序。按d键允许修改轮询间隔,按q键退出t监控。使用这个工具能经常找出占用系统大部份资源的进程。
kill命令
也可以用ps -ef|grep +进程名 查找resin进程
然后用kill命令结束进程
再次查看 已经结束运行
https://www.cnblogs.com/Selling-fish-bears/p/10327791.html
使用resin 自带命令停止resin运行
思考kill命令和停止脚本的区别
而常用的kill命令有3种
2.kill -9 pid 强制关闭进程
发送的是SIGKILL信号 ——— 此信号强制进程立刻停止运行。程序不能忽略此信号,而未保存的进度将会丢失。
3.kill all 关闭所有(顾名思义,不推荐用)
和kill命令是一样的 程序可以在关闭的时候保存进度并释放资源
个人觉得,相比于程序自带的停止脚本 kill命令比较好
原因:
2.在一个进程出故障,无法正常运行停止脚本时,就可以用kill命令强制关闭
明天计划的事情:
编写部署脚本
推进剩下的任务
评论