关于Jetty锁定静态文件的问题解决办法
2023-02-18 15:31:15 时间
Jetty是一个优秀的Web服务器,最大的特点是可嵌入应用程序,因此作为调试服务器非常方便,就像跟踪普通的main()方法一样可以在Eclipse中直接调试Web应用而无需远程连接。但是使用Jetty发现一个问题,即Windows上启动后Jetty会锁定已访问的静态文件,如HTML,CSS等,这给页面设计带来了不便。
其实Jetty官方站点对此问题已有回答,锁定文件据说是为了提高性能,但我觉得缓存也不一定需要长时间锁定文件:
其实可以修改Jetty默认的配置文件,在jetty-6.1.5.jar中找到org/mortbay/jetty/webapp/webdefault.xml,搜索useFileMappedBuffer:
<init-param>
<param-name>useFileMappedBuffer</param-name>
<param-value>true</param-value>
</init-param>
将param-value从true改为false即可。可以直接修改jar包内的这个文件,但是修改发行包毕竟不好,可以将此文件复制一份,在启动Jetty时用自己的这个webdefault.xml覆盖Jetty的设置即可。加上:
WebAppContext webapp = new WebAppContext();
webapp.setDefaultsDescriptor("./webdefault.xml");
重新启动后问题解决。
相关文章
- CodeArts TestPlan:一站式测试管理平台
- cookie、session,、token,还在傻傻分不清?
- 一文了解华为FusionInsight MRS HBase的集群隔离方案RSGroup
- 高并发环境下构建缓存服务,你需要注意这6点
- 一文详解RocketMQ的存储模型
- Serverless时代的微服务开发指南:华为云提出七大实践新标准
- 用100W+行代码贡献经验,带你了解如何参与OpenHarmony开源
- CSV:简单格式下隐藏的那些坑
- 能将三次握手讲到这个程度,不给你offer给谁!
- 细数华为云云原生产品及五大开源实践
- 解密秒杀系统架构:不是所有的秒杀都是秒杀
- 《迷你世界》亿级玩家都在用的游戏场景推荐系统长啥样?
- ROMA Connect: 5大联接能力+4大集成能力,推进企业数字化转型
- DTT年度收官圆桌π,华为云8位技术专家的年末盘点
- 工业数据分析为什么要用FusionInsight MRS IoTDB?
- 云网络运维必备神器:全链路故障诊断与分析
- 掌握这5大功能,解锁鲲鹏开发新发现
- 华为云助推武水集团项目成功入选住建部“智慧水务”典型案例!
- 数字化时代,校园生活还可以这样过
- 管理有方!华为云数据库为医药行业管理加速