1. 程式人生 > >搭建符合自己實際需求的web生產環境之java篇

搭建符合自己實際需求的web生產環境之java篇

       在介紹如何搭建一個web生產環境的之前,我們先了解一下,如何選擇系統和相關軟體,還有一個web生產環境需要滿足哪些要求,只要把這些內容瞭解清楚,那麼再搭建過程中就會找到你自己的思路,而不是一成不變。

一:系統的選擇

       適合做web生產環境的伺服器系統版本有很多,我們要怎樣從這些系統中選出適合自己的的一種呢?那麼就要滿足以下幾個條件:

  1. web應用的語言環境,如果你手中的web應用端是.net,那麼直接選擇win的系統,如果web應用端是php或者jsp,那麼就要從以下幾點繼續考慮了。

  2. 對系統的認真程度,作為中小型企業或者個人使用者在選擇伺服器系統時,一般都是兩個選擇,一種是我們最常用的windows,一種是使用者逐步上漲的linux,那麼再選擇屬於我們自己的系統時,就要考慮我們對系統的瞭解了。很多人選擇linux,問他為什麼。他說,linux更安全,不會中病毒,不會中木馬,不宕機。windows病毒木馬太多了,太容易受到惡意攻擊了。在這裡我可以說這種盲目的選擇是錯誤的。任何系統都有破綻,都會中病毒,或者受到惡意攻擊。

  3. 對成本的要求,windows與linux最大的區別就是一個是不開源的專案,一個是開源專案,很簡單。

    windows有成熟的系統服務支援,價格昂貴,那有人說了,我把server破解了,一樣用啊,也不收費,我自己維護。那我想有這樣想法的童鞋,有一大部分都選擇了linux,因為linux屬於開源的專案,有很多精英團隊在共同開發linux,很多服務都有開源提供下載,網上相關資料也很多,這就為我們在系統和服務支援上面節省了大量的資金。

    從上面我自己囉哩囉嗦總結的這三點,我選擇是的linux -centos作業系統,就不多說了,繼續往下走。

二:web伺服器的選擇

  我們linux下面常用的web伺服器有apache nginx tomcat resin  等等web伺服器,這裡我們選擇nginx+tomcat的組合 來搭建我們的生產環境。

  原因這裡簡單的說幾點:nginx處理速度要快於apache佔用記憶體資源也少,這點毋庸置疑。

                        nginx所有的模組都是靜態編譯的,而且對fcgi有非常好的支援。

                        nginx支援epoll模式,而apache卻不支援。

  nginx作為web伺服器的優勢顯而易見,但是他不支援動態處理,因為我們這裡的環境是java,所以接下來選擇與nginx的組合是老牌的tomcat,tomcat是大家普遍公認的java處理伺服器,雖然它也支援靜態處理,但是效果也比nginx差很遠。所以我們採用組合,讓他們的強項結核在一起,更好的發揮web伺服器的效能。

三:上面介紹了軟體方面,接下來說硬體選擇。

   如果有條件,在資金允許的情況下,品牌伺服器是首選,我也只購買過dell的R720伺服器,不多做評論,只說下我選擇dell伺服器的理由:

  1. 在IBM HP DELL之間 同等配置 DELL屬於價格最便宜的。

  2. DELL伺服器可以根據自己實際需求來選擇硬體。

  3. 我們這邊的DELL的售後我接觸過,比較放心。

基於上面幾點簡單的有力,我選擇了DELLR720機架伺服器

那麼再選擇CPU 記憶體 raid卡 等硬體上需要怎麼選擇呢?

  1. CPU對mysql資料庫的起至關重要的作用,核心多少,效能高低,決定了資料庫查詢快慢

  2. 記憶體這裡建議選擇大記憶體,記憶體還是比較便宜的16G或者32G都要普及了。

  3. 硬碟選擇,這裡我建議選擇4塊15000轉的硬碟,具體每塊磁碟空間大小根據實際需求決定,這麼選擇的好處是,RAID 可選性交多,可以選擇RAID10或者選擇RAID5,而且也處於災備考慮,若是在RAID5情況下 壞掉了一塊硬碟,那麼就拔掉一塊,一時半會來不及換新硬碟也不會影響到我們伺服器的正常執行。

  4. 陣列卡的選擇,若是選擇硬陣列卡的話就有快取問題,再有對儲存讀取方面有需求的話,可以選擇快取較大的。

  5. 電源選擇我覺得為了安全起見就選2塊,一塊電源就幾百塊錢,買個放心。

   其他的也不多說了。有了硬體上的支援,最後一個選擇就是頻寬線路的支援了。有的投入是該省的省,但有的則是該花的花啊。

   如果你的站點很火爆,人氣很旺,增長量很快,充足的頻寬是多麼重要啊,可不要成為大炮打蚊子,有了好伺服器發揮不好出效果。

好了,選來選去的,也選完了,接下來就是安裝配置伺服器的環節了,下面也會圖文並茂的介紹一下整個過程.

四:搭建web生產環境

   系統環境:最小化安裝centos6.3_64

   jdk版本:jdk1.6,選擇和開發時一樣的版本

   nginx版本:nginx.1.2.5.tar.gz

   tomcat版本:tomcat7

   mysql版本:mysql.5.5.11.tar.gz

   如果伺服器之前有硬防火牆的話,可以關閉linux系統自帶的iptables和selinux

   最後也會簡單介紹一下。

在安裝這些軟體之前,我們通過yum 來安裝一些必要的工具,這裡就不多解釋了,不裝的話,後面安裝軟體就會報錯。

1 2 yum install gcc gcc-c++ make cmake wget libtool perl-devel ncurses-devel libxml2-devel zlib-devel

1.    安裝jdk

1 2 3 4 5 6 7 8 9 10 tar -xvf jdk1.6.tar.gz mv jdk1.6.tar.gz /usr/local/jdk 接下來加入環境變數 vi /etc/profile 在最後新增上: export JAVA_HOME=/usr/local/jdk export PATH=$PATH:$JAVA_HOME/bin 儲存退出: source /etc/profile  重新整理一下系統變數,這樣可以不用重啟伺服器 java -version 檢視一下 jdk版本

2.    安裝tomcat

1 2 3 4 tar -xvf tomcat.6.0.36.tar.gz mv apache-tomcat-6.0.36 /usr/local/tomcat 啟動tomcat: /usr/local/tomcat/bin/startup.sh

   tomcat這就安裝完成了,測試一下,在位址列輸入http://ip地址:8080

相關推薦

搭建符合自己實際需求web生產環境java

       在介紹如何搭建一個web生產環境的之前,我們先了解一下,如何選擇系統和相關軟體,還有一個web生產環境需要滿足哪些要求,只要把這些內容瞭解清楚,那麼再搭建過程中就會找到你自己的思路,而不是一成不變。 一:系統的選擇        適合做web生產環境的伺服器系統版本有很多

centos6.5實踐(2):搭建Java Web生產環境

準備工作 已安裝centos 6.5系統 jdk下載,筆者下的是rpm版的 Tomcat下載,筆者下的是tar.gz版的 做法 安裝jdk 新建java安裝目錄 mkdir /usr/java sudo mv ‘/home/

JDK環境搭建 & Web執行環境配置 & Java專案部署釋出(附:解決Linux防火牆限制問題)

學習目標  - Linux/Unix 作業系統上JDK環境的配置  - Linux/Unix 作業系統上web執行環境的配置  - Linux/Unix 作業系統上Java專案的部署釋出 學習步

在windows搭建tomcat+eclipse的j2ee web開發環境

最近剛剛搭建好了j2ee和django的開發環境,於是記錄下來,以免自己忘記了。 java jdk下載連結:http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html

Tensorflow object detection API 搭建屬於自己的物體識別模型——環境搭建與測試

1、開發環境搭建 ①、安裝Anaconda   建議選擇 Anaconda3-5.0.1 版本,已經整合大多數庫,並將其作為預設python版本(3.6.3),配置好環境變數(Anaconda安裝則已經配好)。也可以直接安裝python,安裝各種包比較麻煩,因此直接裝了Anaconda整合環境。   安

ubuntu搭建apache+python+django+mysql web開發環境

我是在ubuntu12.04的環境下配置的,系統預設安裝python2.7.3。 還需要安裝apache,mod_python,django以及mysql 一.安裝apache2 sudo apt-get install apache2   安裝完成,重啟: sudo

如何在windows7作業系統下搭建用於開發網站的web伺服器環境

相信很多人和我一樣,都想過搭建一個自己的web伺服器,設計一個網站,好讓別人來訪問。 怎麼在windows下實現呢?方法其實非常簡單,你既不需要任何特別的作業系統,也不需要租用別人的伺服器,你自己的

WEB 生產環境的 Linux iptables 設定指令碼

用於生產環境的 iptables rule,期間在內網測試把自己擋住在外面一次,接顯示器鍵盤才搞定,謹慎使用,下面指令碼經過無數次測試了,穩定無錯: 開啟了常用的埠 22 80 25 110 8080 3306 等,如果 sshd 埠不是 22,需要自行修改指令碼。 FTP

【轉】Docker 生產環境安全性 - 適用於 Docker 的 Seccomp 安全配置檔案

安全計算模式(secure computing mode,seccomp)是 Linux 核心功能。可以使用它來限制容器內可用的操作。seccomp() 系統呼叫在呼叫程序的 seccomp 狀態下執行。可以使用此功能來限制你的應用程式的訪問許可權。 只有在使用&nb

Linux搭建環境Mysql

CentOS7 64位安裝MySql教程 1. 先檢查系統是否裝有mysql rpm -qa | grep mysql 2. 下載mysql的repo源 wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 報

Docker 生產環境安全性

原文地址 在審查 Docker 安全性時,需要考慮四個主要方面: 核心固有的安全性及其支援的 namespace 及 cgroup Docker 守護程序本身的攻擊面(attack surface) 容器預設的或使用者自定義的配置中的漏洞 核心的“強化”安

如何對生產環境JAVA應用進行遠端除錯

JAVA自身支援除錯功能,並提供了一個簡單的除錯工具--JDB,類似於功能強大的GDB,JDB也是一個字元介面的除錯環境,並支援設定斷點,支援執行緒線級的除錯。  1.在伺服器上的程序啟動引數中新增:

Windows環境搭建基於Eclipse的STM32 GCC 開發環境(一)工具

        這段時間玩了一段STM32F207和STM32F407,以前一直用IAR環境,但STM32的庫函式太多,碼程式碼實在是費勁,要是有類似VC助手那樣的提示功能就好了。上網搜尋了一堆資料,貌似Eclipse + 外掛可以實現想要的功能,於是乎就搞了一下Windo

生產環境JAVA程序高CPU佔用故障排查

轉自:http://blog.chinaunix.net/uid-10449864-id-3463151.html 問題描述: 生產環境下的某臺tomcat7伺服器,在剛釋出時的時候一切都很正常,在執行一段時間後就出現CPU佔用很高的問題,基本上是負載一天比一天高。 問題分

CentOS7 64位下安裝基礎開發環境JDK

一. 安裝JDK 1.1 準備工作 確保系統中沒有其它已安裝的jdk,輸入命令:rpm -qa | grep java,如果有,使用命令rpm -e --nodeps 解除安裝已安裝的jdk 切換到root使用者並進入usr目錄: cd /usr 在usr目錄下建

CentOS7 64位下安裝基礎開發環境Tomcat

安裝Tomcat 注意:關閉防火牆 2.1 準備工作 1、 切換到/usr下:cd /usr/software 2、 建立tomcat目錄:mkdir tomcat 3、 進入tomcat的目錄中:/usr/software/tomcat 2.2 安裝步驟 上傳t

CentOS7 64位下安裝基礎開發環境MySQL

安裝MySQL 1 解除安裝CentOS7自帶的mariadb資料庫 檢視是否有自帶的mariadb: rpm -qa | grep mariadb 解除安裝自帶的mariadb資料庫 刪除:rpm -e --nodeps mariadb-libs-5.5.56

bug寶典JAVA web工程識別不了

使用mac的split view還是比較爽,可以一邊編寫程式碼,一邊寫blog,遇到問題就可以記錄下來。要是10年前開始有筆記的習慣就好了,當年年少不懂事,現在正當年,亡羊補牢,希望不晚。 以前習慣使用eclipse,win10下面使用idea,跑我的程式,也可

Unity3d搭建HTTP弱聯網的伺服器搭建及客戶端編寫(一)java伺服器

HTTP弱聯網java伺服器 通過tomcat搭建java伺服器(linux 1、java環境搭建 java環境較容易搭建,在網上很容易找到相關的教程。 2、tomcat環境搭建 開始配置tomcat: 複製解壓後的檔案到 /opt

Linux下安裝Lnmp環境準備(一)

1、準備 1.1、安裝lrzsz yum install lrzsz -y # rz 上傳 sz PATH 1.2、配置防火牆 vi /etc/sysconfig/iptables #編輯防火牆配置檔案 把以下內容貼上進去 #