Linux服务器对论对于前端还是后端,无论对测试还是运维都是需要了解的内容,我在日常工作中整理收集了一个《linux常用操作》的文档,用来辅助日常工作,我们不可能记住所有内容,不用时就有可能忘掉,记录下来可以随时查阅。这个系列会把文档里的内容发布出来,希望对大家有所帮助。
JDK环境配置
1、 有root权限,配置全局环境变量
vim /etc/profile
JAVA_HOME=/usr/java/jdk1.6.0_10
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH JAVA_HOME CLASSPATH
source /etc/profile或. /etc/profile
修改系统默认JDK,并使之立马生效(提示:改为自己的路径哦, 如果要装myeclipse的话这一步是必须得)
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/bin/jdk1.7.0_11/java" 300
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/jdk1.7.0_11/bin/javac" 300
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/jdk1.7.0_11/bin/javaws" 300
sudo update-alternatives --config java
sudo update-alternatives --config javac
sudo update-alternatives --config javaws
centos7卸载Openjdk后配置jdk出现:
A Java Runtime Environment (JRE) or Java Development Kit (JDK)
must be available in order to run STS. No Java virtual machine
was found after searching the following locations:
/home/lilinlugis/src/sts-bundle/sts-3.6.0.RELEASE/jre/bin/java
java in your current PATH
修改eclipse.ini:
openFile
-vm
/home/lilinlugis/jdk7/bin
-showsplash
2、 .profile 或 .bash_profile 中添加环境变量,只对当前用户有效
export JAVA_HOME=/usr/local/jdk1.7.0_10
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
3、 windows环境变量
JAVA_HOME【C:\Program Files\Java\jdk1.7】
PATH 【%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin】
CLASSPATH 【.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar 】
tomcat参数调整
windows tomcat7\bin\catalina.bat
位置set CURRENT_DIR=%cd%后面添加,红色的为新添加的.
set JAVA_OPTS=-server -Xms512m -Xmx512m -Xss256k -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m
Linux tomcat/bin/catalina.sh 里
位置cygwin=false前 。注意引号要带上.
\# OS specific support. $var _must_ be set to either true or false.
JAVA_OPTS="-Xms256m -Xmx512m -Xss1024K -XX:PermSize=128m -XX:MaxPermSize=256m"
cygwin=false
tomcat connector
如果要达到最好性能,必须对tomcat的进程、压缩等做一些设置。
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8080"
connectionTimeout="60000"
redirectPort="8443"
enableLookups="false"
acceptCount="5000"
maxSpareThreads="5000"
maxThreads="2000"
minSpareThreads=”20”
enableLookups="false"
compression="on"
compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
disableUploadTimeout="true"
URIEncoding="UTF-8"/>
说明:
acceptCount=”1000” 可接受的最大连接数
maxProcessors=”1000” 最大活动线程数
port=”8080” 服务端口
protocol=”HTTP/1.1” 服务协议
connectionTimeout=”20000” 超时时间 单位是ms
redirectPort=”8443” 重定向端口 需要安全通信的场合,将把客户请求转发至SSL的redirectPort端口
maxThreads:Tomcat可创建的最大的线程数,每一个线程处理一个请求; maxThreads决定了tomcat的最大线程阀值,需要设置的大一些
minSpareThreads:最小备用线程数,tomcat启动时的初始化的线程数;
maxSpareThreads:最大备用线程数,一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程;
URIEncoding=”gbk” 设置tomcat的转码格式 默认是按ISO-8859-1
查看当前tomcat的连接数
假设服务器上开启了 2个tomcat实例,分别监听8080和8090端口
netstat -na | grep ESTAB | grep 8080 | wc -l
netstat -na | grep ESTAB | grep 8090 | wc -l
二者之和,就是所有tomcat的连接数
eclipse常见问题
No Suitable Driver Found For Jdbc
今天出现编码出现了No suitable driver found for jdbc,又是找遍了网上的资料,基本上都说是三个问题:
一:连接URL格式出现了问题(Connection conn = DriverManager.getConnection( “jdbc:mysql://localhost:3306/XX”,”root”,”XXXX”)
二:驱动字符串出错(com.mysql.jdbc.Driver)
三:Classpath中没有加入合适的mysql_jdbc驱动
四:放到lib下后,项目要添加引用
经过我的仔细检查,这三种错误我都没有犯,为什么呢?
尝试着将mysql-connector-java-3.1.14-bin.jar的jar包加入C:\Program Files\Java\jre1.6.0_02\lib\ext文件夹下,问题解决了!原来是不仅仅要求将驱动加入classpath中,而且需要将该jar包加入到java运行环境的外部jar包中
javaweb项目自动调试进入ThreadpoolExecutor的run方法
preferences - java - debug
suspend execution 里面,把suspend execution on uncaught exceptions勾掉。