心得:

使用 Jetty 的用戶,通常也都會了解到 Tomcat

這兩者都是 Servlet 引擎,我猜可以看成 apache 與 Nginx 的關係

以下是之前安裝 Tomcat 的方式

CentOS 7 安裝 Apache Tomcat 8 & ServerJRE 8

哪個比較好,需要依照實際環境需求去判斷而選擇工具

個人認為應該選擇"環境適合"的工具,而不要選擇"自己熟悉"的工具

這也是尋找 solution 很重要的一個原則,就像不同應用場景也會有不同的程式語言一樣

不要去"學習工具",而要"理解原理"

在生活的各種事物上,相信都適用這句話

安裝:

安裝JDK

# yum install java-1.8.0-openjdk

下載jetty套件,可到以下網站查詢所需版本,本次範例為v9.4.9

# wget http://central.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.4.9.v20180320/jetty-distribution-9.4.9.v20180320.tar.gz

比對是否檔案有被修改過

# sha1sum jetty-distribution-9.4.9.v20180320.tar.gz

解壓縮檔案

# tar zxvf jetty-distribution-9.4.9.v20180320.tar.gz

移動至/opt

# mv jetty-distribution-9.4.9.v20180320 /opt/jetty-9.4.9

建立連結,主要是讓以後更換版本的時候,變數設定更加快速

# ln -s /opt/jetty-9.4.9/ /opt/jetty

建立 temp 與 webappbase,位置可以照個人喜好做選擇

# mkdir /opt/temp && mkdir /opt/webappbase

移動資料於以下資料夾,將網站資料與程式分開的方式,有利於備份與更新

# mv /opt/jetty/webapps /opt/webappbase/webapps
# mv /opt/jetty/start.ini /opt/webappbase

建立使用者 jetty

# useradd -M -s /sbin/nologin jetty

設定 jetty 檔案權限

# chown -RH jetty:jetty /opt/jetty
# chown -R jetty:jetty /opt/webappbase
# chown -R jetty:jetty /opt/temp

設定環境變數

# vim /etc/default/jetty

檔案內容如下:

TMPDIR=/opt/temp 
JETTY_BASE=/opt/webappbase
JETTY_HOME=/opt/jetty
JETTY_USER=jetty
export JAVA_OPTIONS="-Xms128m -Xmx1024m -server -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled"

建立 systemd service

# vim /usr/lib/systemd/system/jetty.service

檔案內容如下:

# Systemd unit file for jetty
[Unit]
Description=Jetty Web Application Server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking

ExecStart=/opt/jetty/bin/jetty.sh start
ExecStop=/opt/jetty/bin/jetty.sh stop
ExecReload=/opt/jetty/bin/jetty.sh restart
ExecStatus=/opt/jetty/bin/jetty.sh status

User=jetty
Group=jetty

[Install]
WantedBy=multi-user.target

重新載入 systemd daemon

# systemctl daemon-reload

啟動 jetty

# systemctl start jetty

設定開機啟動 jetty

# systemctl enable jetty

檢查是否啟動成功

# curl localhost:8080

備註:

修改啟動 port number

# vim /opt/webappbase/start.ini

找到以下字串或加入以下字串,紅字可依照個人喜好變更

jetty.http.port=8088

當然也可以像開頭的 Tomcat 利用 Nginx 做一個 Proxy Server 來應用

兩者原理基本上都是一樣的

參考資料:

https://myadventuresincoding.wordpress.com/2016/04/03/jetty-setup-jetty-on-centos-7/

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s