RSS

Apache Tomcat Multiple Instance in One Machine Part 1

Pada Tulisan saya ini, Ingin berbagi untuk menjalankan beberapa instance dalam satu machine.

Pertanyaan pertama, Kenapa sih kita harus run multiple instance?
Alasan pertama, Jika applikasi yang kita buat merupakan applikasi yang berbeda dan independence. Contohnya kita memiliki applikasi yang namanya Content Management System dan applikasi yang kedua adalah applikasi sms. Bayangkan jika mereka dalam instance yang sama. Jika ada perubahan applikasi dan perlu untuk di restart. Maka salah satu applikasi yang seharusnya tidak mati, malah ikutan mati. Kalau bahasa mudahnya easy to maintaince.
Alasan yang kedua, Jika kita ingin melakukan management memory pada tiap-tiap applikasi. Jika dalam satu instance kita kurang tau tiap-tiap applikasi memakan berapa banyak memory. Dengan adanya pemisahan instance, kita dapat mengetahui applikasi yang mana yang telah memakan memory yang banyak di server kita. Berikut tampilanya
[takmgr@localhost bin]$ top
top - 16:20:31 up 17:06,  5 users,  load average: 0.20, 0.11, 0.07
Tasks:  87 total,   1 running,  86 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  1.3 sy,  0.0 ni, 94.5 id,  1.6 wa,  1.0 hi,  1.6 si,  0.0 st
KiB Mem :  1529248 total,    78936 free,   330540 used,  1119772 buff/cache
KiB Swap:  2326524 total,  2325620 free,      904 used.  1164836 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
32146 root      20   0   15720   8508   7500 S  0.3  0.6   0:01.14 sshd
32274 takmgr    20   0  404080 152832   9304 S  0.3 10.0   0:11.94 java
32385 takmgr    20   0  404240 152820   9276 S  0.3 10.0   0:12.50 java
32430 takmgr    20   0    8768   3564   3120 R  0.3  0.2   0:00.06 top
    1 root      20   0    8308   6432   3792 S  0.0  0.4   0:09.61 systemd
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.01 kthreadd
    3 root      20   0       0      0      0 S  0.0  0.0   0:17.93 ksoftirqd/0
    5 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H
    7 root      20   0       0      0      0 S  0.0  0.0   0:13.75 rcu_sched
    8 root      20   0       0      0      0 S  0.0  0.0   0:08.18 rcuos/0
    9 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh
   10 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/0
[takmgr@localhost bin]$ ps aux | grep tomcat
takmgr   32274  2.9  9.9 404080 152832 pts/3   Sl   16:14   0:12 /usr/local/src/jdk1.7.0_79/bin/java -Djava.util.logging.config.file=/opt/sendmail-app/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Xmx256m -Xms100m -Djava.endorsed.dirs=/opt/apache-tomcat-7.0.65-master/endorsed -classpath /opt/apache-tomcat-7.0.65-master/bin/bootstrap.jar:/opt/sendmail-app/bin/tomcat-juli.jar -Dcatalina.base=/opt/sendmail-app -Dcatalina.home=/opt/apache-tomcat-7.0.65-master -Djava.io.tmpdir=/opt/sendmail-app/temp org.apache.catalina.startup.Bootstrap start
takmgr   32385 17.7  9.9 404240 152820 pts/3   Sl   16:19   0:12 /usr/local/src/jdk1.7.0_79/bin/java -Djava.util.logging.config.file=/opt/mail-app/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Xmx256m -Xms100m -Djava.endorsed.dirs=/opt/apache-tomcat-7.0.65-master/endorsed -classpath /opt/apache-tomcat-7.0.65-master/bin/bootstrap.jar:/opt/mail-app/bin/tomcat-juli.jar -Dcatalina.base=/opt/mail-app -Dcatalina.home=/opt/apache-tomcat-7.0.65-master -Djava.io.tmpdir=/opt/mail-app/temp org.apache.catalina.startup.Bootstrap start
takmgr   32432  0.0  0.1   6300  2128 pts/3    S+   16:21   0:00 grep --color=auto tomcat
Baris yang dicetak tebal itu merupakan bagian memory.

Sedikit bocoran saja sebenarnya dalam melakukan pemisahan instance ini seperti halnya kita melakukan copy paste apache tomcat menjadi jumlah yang kita ingin tentukan(instance). Jadi sebelum kita melakukan peng-copyan alangkah lebih baiknya kita mengetahui isi dalam folder apache tomcat tersebut
Structure Directory Apache Tomcat
bin: Merupakan directory untuk mengeksekusi perintah start dan stop
conf: Merupakan directory untuk melakukan configurasi pada sisi tomcat instance-nya
webapps: Merupakan directory untuk deploy dan expand applikasi
work: Merupakan directory dari applikasi yang telah dicompile. sehingga kita bisa lihat dalamnya dari applikasi kita
logs: Merupakan kumpulan dari log-log si tomcat
lib: Merupakan directory kumpulan dari library-library yang dibutuhkan oleh tomcat/applikasi kita
temp: Merupakan directory yang digunakan untuk menyimpan data temporary

0 comments:

Posting Komentar

Please copy and share it, if it helps you
 
Copyright 2009 My Note All rights reserved.
Free Blogger Templates by DeluxeTemplates.net
Wordpress Theme by EZwpthemes
Blogger Templates