中間件的安裝和優化——開源軟件誕生6

軟件及中間件的安裝和配置--第6篇

用日誌記錄「開源軟件」的誕生javascript

赤龍ERP開源地址:

點亮星標,感謝支持,與開發者交流 kzca2000css

碼雲:https://gitee.com/redragon/redragon-erphtml

GitHub:https://github.com/redragon1985/redragon-erpjava

赤龍ERP官網:https://www.redragon-erp.comgit

中間件的安裝和優化——開源軟件誕生6

軟件安裝

上一篇剛剛講了雲服務器的搭建,在服務器搭建完成後,緊接着就是安裝各類必須的軟件、中間件、以及進行必要的優化配置。先說說須要安裝的軟件及注意事項:github

(1)JDK安裝及環境變量的配置:如何安裝JDK以及如何配置環境變量,網絡有不少資料,在此不作贅述。只說幾個建議,首先建議安裝JDK而不是JRE,由於JDK的bin目錄自帶了更多功能組件,其次JDK版本建議選擇JDK7或8,新版每每因爲各類緣由不夠穩定和持續。web

(2)Tomcat安裝的版本建議選擇7或8,根據JDK的對應版本去選擇。安裝過程簡單無特殊要注意的地方。redis

(3)MySQl能夠選擇最新版,安裝時注意端口號和服務名。算法

(4)Redis能夠選擇最新版,Redis默認都是Linux版,若是須要Windows版本,可去GitHub下載:https://github.com/microsofta...。安裝時注意端口,安裝後最好設置一下開機啓動。apache

Tomcat優化配置

網上涉及到Tomcat優化的內容不少,人家已經屢次說過的我不作贅述。我以本身服務器Tomcat配置爲案例進行一下簡單的分析:

(1)Connector是用於Tomcat創建鏈接的,下面作一下簡要說明

<Connector port="80" protocol="org.apache.coyote.http11.Http11NioProtocol" URIEncoding="UTF-8" 
maxThreads="200" 
minProcessors="5" 
maxProcessors="1000" 
minSpareThreads="25" 
maxSpareThreads="75" 
acceptCount="100" 
connectionTimeout="50000" 
enableLookups="false" 
redirectPort="443" 
compression="on" 
compressionMinSize="2048" noCompressionUserAgents="gozilla,traviata" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
  • port是端口,通常對外的服務會改爲80
  • protocol是協議,改成NIO,非阻塞式I/O會優化線程的利用率
  • URIEncoding編碼UTF-8,避免沒必要要的亂碼
  • maxThreads是用於處理請求的最大線程數
  • acceptCount等待分配線程的鏈接的隊列數量
  • connectionTimeout鏈接超時的毫秒數
  • redirectPort重定向HTTPS協議的端口
  • compression爲gzip壓縮,必定程度上能夠壓縮傳輸數據的大小

(2)SSL協議配置

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" URIEncoding="UTF-8" 
maxThreads="200" 
SSLEnabled="true" 
scheme="https" 
secure="true" 
clientAuth="false" 
sslProtocol="TLS" 
keystoreType="PKCS12" 
keystoreFile= "/conf/redragon-erp.com.pfx"
keystorePass="123456" />
  • port端口爲443
  • SSLEnabled用於HTTPS協議的開啓
  • keystore幾個參數項用於證書的配置。keystoreFile證書的存儲位置,keystorePass證書密碼

(3)Host用來配置虛擬主機,結合Context實現應用的配置,下面作一下簡要說明

<Host name="www.redragon-erp.com" appBase="webapps" unpackWARs="true" autoDeploy="true"> 
<Alias>redragon-erp.com</Alias> 
<Context path="" docBase="F:erp" reloadable="false"/>
<Context path="caserver" docBase="F:caserver" reloadable="false"/> 
<Context path="root" docBase="ROOT" reloadable="false"/>
</Host>
  • Host的name屬性配置你的主域名
  • Alias用於多個域名的配置
  • Context用於配置應用,一個應用配置一個Context,path用於配置訪問應用的路徑,空表明域名直接訪問當前應用。docBase用於配置應用的路徑,能夠是相對路徑也能夠是絕對路徑。

JVM優化配置

JVM優化主要是對內存的優化,直接修改Tomcat啓動文件便可,下面說下經常使用參數

-Xmx2048m -Xms2048m :堆內存初始大小和最大內存,若是內存足夠建議直接相等便可 
-XX:NewRatio=3 :新生代和老年代內存比,即1:3,建議適當調大新生代的佔比,減小垃圾回收次數 
-XX:MaxTenuringThreshold=6 :新生代進入老年代的垃圾回收次數 
-XX:+UseConcMarkSweepGC :設置老年代併發GC
-XX:+UseParNewGC : 設置新生代併發GC
-XX:ParallelGCThreads=4 : 並行GC線程數,與CPU內核數相等 
-XX:+CMSParallelRemarkEnabled :開啓並行標記收集 
-XX:+UseCMSCompactAtFullCollection :老年代內存壓縮
-XX:CMSFullGCsBeforeCompaction=3 :老年代幾回GC後進行內存壓縮
-XX:+UseCMSInitiatingOccupancyOnly 
-XX:CMSInitiatingOccupancyFraction=70 :上面兩個配置,表示老年代內存佔用70%時GC
因爲1.8後JVM的永久代已取消,而替代者元空間無須特殊配置

Redis優化配置

Redis配置較爲簡單,主要是密碼,鏈接,內存和持久化

port 6379 : 監聽端口 
requirepass redis :配置redis用戶密碼 
maxclients 10000 :設置redis的最大鏈接數 
maxmemory 1024MB :配置的最大內存容量 
maxmemory-policy volatile-lru :內存容量超過maxmemory後的處理策略(LRU算法) 
appendonly yes :使用AOF持久化 
appendfsync everysec :AOF持久化策略的配置(每秒執行一次)

JDK安裝證書

首先要有一個SSL的證書,如何獲取證書上一篇已說明。但有了證書JDK必須完成相應的證書導入才能生效。具體步驟以下:

(1)進入JDK找到文件cacerts所在目錄

cd $JAVA_HOME/jre/lib/security

(2)使用keytool命令導入證書

keytool -import -alias 別名 -keystore cacerts -file /目錄/證書.cer

輸入以上命令後,會提示輸入證書庫的密碼,默認密碼changeit(可修改)

後記

今天寫了開源系列最長的一篇文章,但願可以讓你們對開源軟件的誕生過程有一個清晰的認識,也但願更多的人能夠理解支持咱們的開源精神,以及這種分享和創新理念。開源不斷,文章不停,讓咱們下篇繼續!

但願您讀完本文能夠幫助筆者進入【碼雲】或【GitHub】點擊星標。等待着您的支持!
相關文章
相關標籤/搜索