内存溢出的解决思路

内存溢出是指应用系统中存在无法回收的内存或使用的内存过多,最终使得程序运行要用到的内存大于虚拟机能提供的最大内存。   引起内存溢出的原因有很多种,常见的有以下几种: 1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据; 2.集合类中有对对象的引用,使用完后未清空,使得JVM不能回收; 3.代码中存在死循环或循环产生过多重复的对象实体; 4.使用的第三方软件中的BUG; 5.启动参数内存值设定的过小; 内存溢出的解决方案:    ...
阅读全文

Tomcat 8以上版本文件上传后无权限访问的问题

之前在tomcat 7下文件上传后访问一直没问题,现在tomcat版本升到8.5,在测试文件http上传时,发现所传文件无法通过nginx访问了:报错 403 forbidden 反复确定nginx配置没有问题,上服务器查看了一下文件,发现上传目录下自动创建的目录权限750,文件权限640,也即:默认赋予的文件权限中其他用户的权限始终为0。 因此怀疑是默认的环境变量里umask被改了,然而cat /etc/profile后发现: if [ $UID -gt 199 ] &&am...
阅读全文

Tomcat设置普通用户启动

新建用户tomcat,该用户不能登录 useradd tomcat -s '/sbin/nologin' chown -R tomcat:tomcat /usr/local/tomcat/ chmod -R 744  /usr/local/tomcat # 判断用户是否存在 ret=`id -u tomcat >& /dev/null` if [ $? -ne 0 ];then   echo "n...
阅读全文

grep 精确匹配

如果是有进程名为abcd,abcde等有包含"abc"字符的,那么判断将会不准备,如果精确的匹配到abc呢,当时不知道,只能很诚实的回答,不清楚 其实答案很简单,用grep –w "abc" 或者是grep "\<abc\>"都可以实现 -w, --word-regexp         强制 PATTERN 仅完全匹配字词
阅读全文