设为首页 收藏本站
查看: 657|回复: 0

[经验分享] 【原创】linux下tomcat安装及常用命令

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-8-12 09:20:08 | 显示全部楼层 |阅读模式
一、tomcat安装
  1.首先要安装JDK(这里选用1.7版本),因为tomcat是运行在jvm上的。这也是为何java的可移植性好的原因。
  jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
  下载后复制到/opt文件夹内解压即可。
  为方便以后替换JDK,为其做软链接 “ln -s jdk1.7.0_45 java” --- 指令说明"ln -s jdk根目录文件夹名 我起的软链接名字"
  2.安装tomcat,wget 就好"wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.47/bin/apache-tomcat-7.0.47.tar.gz"
  下载后复制到/opt文件夹内解压即可。
  
  同样为tomcat做软链接,“ln -s apache-tomcat-7.0.47 tomcat” 方便以后的替换升级。
  3.修改 /etc/profile 文件



vim /etc/profile
#在最后插入
export JAVA_HOME="/opt/java"
export PATH="$PATH:$JAVA_HOME/bin"
  
  
  

二、linux常用命令
  首先,说下“/bin”文件夹,此文件夹一般保存二进制可执行文件。我们执行的命令也都是这些二进制文件,这就有了配置PATH时,要把他指向"$JAVA_HOME"的bin文件夹,就是为了让系统能够找到你输入的指令对应哪个程序或脚本来执行。
  linux命令超级多,就说几个人觉得对java调试比较有帮助的吧!
  1.jmap -heap PID
         查看java 堆(heap)使用情况
  using thread-local object allocation.
        Parallel GC with 4 thread(s)    //GC 方式          Heap Configuration:       //堆内存初始化配置
        MinHeapFreeRatio=40          //对应jvm启动参数-XX:MinHeapFreeRatio设置JVM堆最小空闲比率(default 40)
        MaxHeapFreeRatio=70       //对应jvm启动参数 -XX:MaxHeapFreeRatio设置JVM堆最大空闲比率(default 70)
        MaxHeapSize=512.0MB       //对应jvm启动参数-XX:MaxHeapSize=设置JVM堆的最大大小
        NewSize  = 1.0MB         //对应jvm启动参数-XX:NewSize=设置JVM堆的‘新生代’的默认大小
        MaxNewSize =4095MB      //对应jvm启动参数-XX:MaxNewSize=设置JVM堆的‘新生代’的最大大小
        OldSize  = 4.0MB          //对应jvm启动参数-XX:OldSize=<value>:设置JVM堆的‘老生代’的大小
        NewRatio  = 8           //对应jvm启动参数-XX:NewRatio=:‘新生代’和‘老生代’的大小比率
        SurvivorRatio = 8         //对应jvm启动参数-XX:SurvivorRatio=设置年轻代中Eden区与Survivor区的大小比值
        PermSize= 16.0MB         //对应jvm启动参数-XX:PermSize=<value>:设置JVM堆的‘永生代’的初始大小
        MaxPermSize=64.0MB      //对应jvm启动参数-XX:MaxPermSize=<value>:设置JVM堆的‘永生代’的最大大小
  Heap Usage:               //堆内存分步
        PS Young Generation
        Eden Space:          //Eden区内存分布
          capacity = 20381696 (19.4375MB)  //Eden区总容量
          used     = 20370032 (19.426376342773438MB)  //Eden区已使用
          free     = 11664 (0.0111236572265625MB)  //Eden区剩余容量
          99.94277218147106% used  //Eden区使用比率
        From Space:        //其中一个Survivor区的内存分布
             capacity = 8519680 (8.125MB)
             used     = 32768 (0.03125MB)
             free     = 8486912 (8.09375MB)
             0.38461538461538464% used
        To Space:            //另一个Survivor区的内存分布
            capacity = 9306112 (8.875MB)
            used     = 0 (0.0MB)
            free     = 9306112 (8.875MB)
            0.0% used
        PS Old Generation  //当前的Old区内存分布
            capacity = 366280704 (349.3125MB)
            used     = 322179848 (307.25464630126953MB)
            free     = 44100856 (42.05785369873047MB)
            87.95982001825573% used
        PS Perm Generation  //当前的 “永生代” 内存分布
            capacity = 32243712 (30.75MB)
            used     = 28918584 (27.57891082763672MB)
            free     = 3325128 (3.1710891723632812MB)
            89.68751488662348% used
  2. jmap -histo pid
  查看堆内存(histogram)中的对象数量,大小
  num     #instances         #bytes  class name
  序号         实例个数            字节数       类名   
        ----------------------------------------------
         1:       3174877      107858256  [C
         2:       3171499       76115976  java.lang.String
         3:       1397884       38122240  [B
         4:        214690       37785440  com.tongli.book.form.Book
         5:        107345       18892720  com.tongli.book.form.Book
         6:         65645       13953440  [Ljava.lang.Object;
         7:         59627        7648416  <constMethodKlass>
         8:        291852        7004448  java.util.HashMap$Entry
         9:        107349        6871176  [[B
  ..........
  total       9150732      353969416
  3. jmap - dump  pid
  将内存使用的详细情况输出到文件
  jmap -dump pid > ~/ filename
  sun 官方文档  http://download.oracle.com/javase/1.5.0/docs/tooldocs/share/jmap.html
  
class name对应的就是Class文件里的class的标识
B代表byte
C代表char
D代表double
F代表float
I代表int
J代表long
Z代表boolean
前边有[代表数组,[I 就相当于int[]
对象用[L+类名表示
  4.show processlist; (mysql 内的指令)
    查看mysql当前对外提供了多少连接,可以帮助你知道你的数据库状态,是否达到最大连接数,或者你数据库连接池的上限;
  5.tail -f filename(文件名) -n Number(显示行数)
  从指定点开始将文件写到标准输出。使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。Number 变量的值可以是正的或负的整数。如果值的前面有+(加号),从文件开头指定的单元数开始将文件写到标准输出。如果值的前面有-(减号),则从文件末尾指定的单元数开始将文件写到标准输出。如果值前面没有+(加号)或-(减号),那么从文件末尾指定的单元号开始读取文件。
  记住吧,查日志就靠他了,如果你不想在几十个G的日志面前跪下的话。
  详见:http://www.iyunv.com/os/201111/110143.html
  6.netstat -lpn & netstat -apn
  -lpn:监听端口,可以判定服务是否启动;
  -apn: 共有多少连接;
  方便统计,可以结合“wc -l”一起使用,如:“netstat -apn | wc -l”;
  7.wc
  这个命令很好记,是不是!
  wc -c filename: 显示一个文件的字节数
  wc -m filename: 显示一个文件的字符数
  wc -l filename: 显示一个文件的行数
  wc -L filename: 显示一个文件中的最长行的长度
  wc -w filename: 显示一个文件的字数
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-97757-1-1.html 上篇帖子: Tomcat学习 HttpConnector和HttpProcessor启动流程和线程交互 下篇帖子: linux开机启动增加tomcat启动项
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表