JAVA编程:Jetty部署中tmpdir招致服务不成用的成绩仓酷云
再说说缺点:首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。成绩征象Java历程存在,Servlet服务存在,cpu利用率低,未发明逝世锁。重启服务器,成绩失掉办理。
成绩剖析
依据tomcat的解压部署体例,发明jetty中设置为:-Djava.io.tmpdir=/tmp,依据前往的毛病搜刮/tmpjetty,发明linux存在watchdong主动清算tmp目次。
#cat/etc/cron.daily/tmpwatch
#!/bin/sh
flags=-umc
/usr/sbin/tmpwatch"$flags"-x/tmp/.X11-unix-x/tmp/.XIM-unix
-x/tmp/.font-unix-x/tmp/.ICE-unix-x/tmp/.Test-unix
-X/tmp/hsperfdata_*10d/tmp
/usr/sbin/tmpwatch"$flags"30d/var/tmp
fordin/var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?};do
if[-d"$d"];then
/usr/sbin/tmpwatch"$flags"-f30d"$d"
fi
done
体系默许每10天清算一次/tmp目次。
Spring会在体系启动加载类到内存中,可是不会加载servlet的相干内容。检察jetty的文档,TemporaryDirectories有以下申明:
【本段笔墨为翻译】Jetty自己没有一时目次,每一个使用在war解压的时分指定temp目次,JSPs在运转是编译。
断定一个使用一时目次的算法以下:
1:实验利用这个使用明白指定的目次:
[*]假如webapp.getTempDirectory()设置了,则利用它,在JVM运转时不要删除这个目次。
[*]假如web使用的javax.servlet.context.tempdir这个高低文属性设置,这个目次存在,而且可写。则利用它,在JVM运转时不要删除它。
2:基于全局设置创立一个目次。这个目次中在war解压后发生的目次是如许的:"Jetty_"host""port""context""+virtualhost
[*]假如$(jetty.home)/work存在,不要在JVM运转的时分删除,不克不及在文件夹存在的时分删除内里的内容
[*]假如WEB-INF/work存在,不克不及在jvm运转的时分删除,不克不及删除文件夹中的内容。
[*]大概是创立目次$(java.io.tmpdir),在JVM加入的时分删除这个目次,假如该目次存在,删除该目次的内容。
一个主要的提醒:webapp的一时目次只能在它中断的时分删除内里的内容。
一旦一时目次被分派,它将作为一个web使用的javax.servlet.context.tempdir的文件实例被设置和检索。
办理成绩的办法:
办法1:在jetty.home目次上面创立一个可写的文件夹work,往失落davinci.sh中的-Djava.io.tmpdir=/tmp设置。
办法2:修正davinci.sh中的-Djava.io.tmpdir=/tmp为-Djava.io.tmpdir=指定的目次,然后在davinci.sh的stop函数中设置删除该目次中的内容。主要提醒:每一个使用设置的目次不克不及不异
你对java乐观有点盲目。java的关键就是在服务器上表现优异,而且它提供了整个开发所需要的工具。应该是说,看哪天。net网页编程有没有机会赶上java。 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。 是一种使用者不需花费很多时间学习的语言 是一种语言,用以产生「小应用程序(Applet(s)) 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想) 如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。 Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。 是一种突破用户端机器环境和CPU http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。 是一种将安全性(Security)列为第一优先考虑的语言 是一种突破用户端机器环境和CPU 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
页:
[1]
2