【阿里雲自助實驗】如何快速學習網站基本搭建和伺服器環境配置?

如何快速學習網站基本搭建和伺服器環境配置?

雲中沙箱實驗「在阿里雲上部署Tomcat伺服器」、「快速搭建和部署LAMP環境」、「在阿里雲上部署LNMP」教您快速學習網站伺服器環境配置

雲中沙箱,阿里雲官方實驗平台。網址:雲中沙箱 - 基於阿里雲的IT實驗平台

一、基本概念

實驗1: 在阿里雲上部署Tomcat伺服器

業務背景

Tomcat為網站的伺服器,每個網站在後面都有一個伺服器來解析那個網頁,Tomcat 對於 Java 來說它就是一個 Servlet 處理器,支持運行基於 Servlet 的 Java 程序,同時 JSP 本身也是基於 Servlet 的技術,也是支持的,像傳說中的 Spring, Struts, JSF 都是基於 Servlet 的,都可以在 Tomcat 上跑起來。

技術背景

Tomcat是Apache 軟體基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發而成。由於有了Sun 的參與和支持,最新的Servlet 和JSP 規範總是能在Tomcat 中得到體現,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 規範。因為Tomcat 技術先進、性能穩定,而且免費,因而深受Java 愛好者的喜愛並得到了部分軟體開發商的認可,成為目前比較流行的Web 應用伺服器。

Tomcat 伺服器是一個免費的開放源代碼的Web 應用伺服器,屬於輕量級應用伺服器,在中小型系統和並發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP 程序的首選。

實驗2: 快速搭建和部署LAMP環境

LAMP是指Linux(操作系統),ApacheHTTP伺服器,MySQL(有時也指MariaDB,資料庫軟體)和PHP(有時也指Perl或Python)的第一個字母,一般用來建立web應用平台。雖然這些開放源代碼程序,本身並不是專門設計成同另幾個程序一起工作的,但由於它們的免費和開源,這個組合開始流行(大多數Linux發行版本捆綁了這些軟體)。當一起使用的時候,它們表現的像一個具有活力的解決方案包。和Java/J2EE架構相比,LAMP具有Web資源豐富、輕量、快速開發等特點,微軟的.NET架構相比,LAMP具有通用、跨平台、高性能、低價格的優勢,因此LAMP無論是性能、質量還是價格都是企業搭建網站的首選平台。

Apache是LAMP架構最核心的Web Server,開源、穩定、模塊豐富是Apache的優勢。但Apache的缺點是有些臃腫,內存和CPU開銷大,性能上有損耗,不如一些輕量級的Web伺服器(例如nginx)高效,輕量級的Web伺服器對於靜態文件的響應能力來說遠高於Apache伺服器。Apache做為Web Server是負載PHP的最佳選擇,如果流量很大的話,可以採用nginx來負載非PHP的Web請求。nginx是一個高性能的HTTP和反向代理伺服器,Nginx以它的穩定性、豐富的功能集、示例配置文件和低系統資源的消耗而聞名。Nginx不支持PHP和CGI等動態語言,但支持負載均衡和容錯,可和Apache配合使用,是輕量級的HTTP伺服器的首選。

PHP的加速使用eAccelerator加速器,eAccelerator是一個自由開放源碼PHP加速器,優化和動 態內容緩存,提高了性能PHP腳本的緩存性能,使得PHP腳本在編譯的狀態下,對伺服器的開銷幾乎完全消除。它還有對腳本起優化作用,以加快其執行效率。 使PHP程序代碼執效率能提高1-10倍。

開源的資料庫中,MySQL在性能、穩定性和功能上是首選,可以達到百萬級別的數據存儲,網站初期可以將MySQL和Web伺服器放在一起,但是當訪問量達到一定規模後,應該將MySQL資料庫從Web Server上獨立出來,在單獨的伺服器上運行,同時保持Web Server和MySQL伺服器的穩定連接。

實驗3: 在阿里雲上部署LNMP

LNMP簡介

LNMP代表的就是:Linux系統下Nginx+MySQL+PHP這種網站伺服器架構。

  • Linux:是一類Unix計算機操作系統的統稱,是目前最流行的免費操作系統。代表版本有:debian、centos、ubuntu、fedora、gentoo等。

  • Nginx:是一個高性能的HTTP和反向代理伺服器,也是一個IMAP/POP3/SMTP代理伺服器。

  • Mysql:是一個小型關係型資料庫管理系統。

  • PHP:是一種在伺服器端執行的嵌入HTML文檔的腳本語言。

這四種軟體均為免費開源軟體,組合到一起,成為一個免費、高效、擴展性強的網站服務系統。

Nginx簡介和使用場景

Nginx是俄羅斯人編寫的十分輕量級的HTTP伺服器,Nginx,它的發音為 「engine X」, 是一個高性能的HTTP和反向代理伺服器,同時也是一個IMAP/POP3/SMTP 代理伺服器.Nginx是由俄羅斯人 Igor Sysoev為俄羅斯訪問量第二的 Rambler.ru站點開發的,它已經在該站點運行超過三年了。Igor Sysoev在建立的項目時,使用基於BSD許可。

為什麼Nginx的性能要比Apache高得多?這得益於Nginx使用了最新的epoll(Linux 2.6內核)和kqueue(freebsd)網路I/O模型,而Apache則使用的是傳統的select模型。目前Linux下能夠承受高並發訪問的 Squid、Memcached都採用的是epoll網路I/O模型。

處理大量的連接的讀寫,Apache所採用的select網路I/O模型非常低效。下面用一個比喻來解析Apache採用的select模型和Nginx採用的epoll模型進行之間的區別:假設你在大學讀書,住的宿舍樓有很多間房間,你的朋友要來找你。select版宿管大媽就會帶著你的朋友挨個房間去找,直到找到你為止。而epoll版 宿管大媽會先記下每位同學的房間號,你的朋友來時,只需告訴你的朋友你住在哪個房間即可,不用親自帶著你的朋友滿大樓找人。如果來了10000個人,都要 找自己住這棟樓的同學時,select版和epoll版宿管大媽,誰的效率更高,不言自明。同理,在高並發伺服器中,輪詢I/O是最耗時間的操作之 一,select和epoll的性能誰的性能更高,同樣十分明了。

在高並發連接的情況下,Nginx是Apache伺服器不錯的替代品。Nginx同時也可以作為7層負載均衡伺服器來使用。Nginx 0.8.46 + PHP 5.2.14 (FastCGI) 可以承受3萬以上的並發連接數,相當於同等環境下Apache的10倍。

二、如何購買實驗:

現如上3個實驗雲市場購買年末優惠中,可直接點擊如下鏈接進行購買並操作實驗。

雲市場商品名稱:阿里雲上雲自助實驗-快速學習網站基本搭建和伺服器環境配置

1. 在阿里雲上部署Tomcat伺服器

2. 快速搭建和部署LAMP環境

3. 在阿里雲上部署LNMP


推薦閱讀:

土豪大牌 Life Technologies 過往的輝煌
高轉化率的著陸頁巧用實驗提高著陸頁信息的可信度
大科學工程項目,如何減振是個問題
生物實驗室的翡翠鑒定入門

TAG:雲計算 | 阿里雲 | 實驗 |