B站掛了之后出現的tengine是個啥?


一、描述

晚上剛洗漱完之后聽同學說:B站掛了?woc?真掛了?

嗯!確實掛了,404的狀態碼,懂的都懂。

不過,最下面的tengine字眼吸引了我的注意,一時興起,打算看看它是個什么東西,起碼搞一個hello world出來,所以特意去購買了一台服務器,打算搞一個hello tengine

服務器就位,准備開干!

二、官方的介紹

Tengine是由淘寶網發起的Web服務器項目。它在Nginx的基礎上,針對大訪問量網站的需求,添加了很多高級功能和特性。Tengine的性能和穩定性已經在大型的網站如淘寶網、天貓商城等得到了很好的檢驗。它的最終目標是打造一個高效、穩定、安全、易用的Web平台。

從2011年12月開始,Tengine成為一個開源項目,Tengine團隊在積極地開發和維護着它。Tengine團隊的核心成員來自於淘寶、搜狗等互聯網企業。Tengine是社區合作的成果,我們歡迎大家參與其中,貢獻自己的力量。

三、下載、編譯、安裝

源碼下載地址:http://tengine.taobao.org/download.html

解壓:

-rw-r--r--  1 root root 2848144 7月  13 23:13 tengine-2.3.3.tar.gz
[root@VM-0-4-centos ~]# tar -zxvf tengine-2.3.3.tar.gz

安裝:

# 切換進tengine-2.3.3目錄
# 安裝依賴
$ yum install gcc-devel openssl-devel zlib-devel pcre-devel

# 通過 --prefix 指定安裝目錄
[root@VM-0-4-centos sbin]# ./configure --prefix=/usr/local/tengine
$ make && make install

編譯時有很多可選項,感興趣可以參考這個鏈接:http://tengine.taobao.org/document_cn/install_cn.html

Tengine默認將安裝在/usr/local/nginx目錄。你可以用'--prefix'來指定你想要的安裝目錄。

四、啟動

# 切換到安裝目錄
$ cd /usr/local/tengine

目錄詳情如下,整體不難看懂,bin文件、配置文件、html文件,大概看起來和使用nginx沒啥區別。默認的配置文件也是conf/nginx.conf

conf目錄中存放的是配置文件,看了一下配置文件中的sever模塊,和nginx的配置相當,熟悉的location語法和80端口、熟悉的gzip壓縮傳輸...

再去稍微修改一下它的html代碼

切換進sbin目錄,通過nginx命令啟動tengine

-rwxr-xr-x 1 root root 6291432 7月  13 23:55 nginx
[root@VM-0-4-centos sbin]# ./nginx

看一下效果:

最后再看一看熟悉的404:

五、小結

哎,搞了一會,發現沒啥難度。從看它的官網再到編譯安裝啟動,大概也就十幾二十分鍾的樣子,使用起來和nginx幾乎沒啥差別,零難度,易上手。感覺用起來還是個nginx

官網也有介紹說tengine相對於nginx有很多優化點如下:

比如有更友好的錯誤提示:比如這次我們都能看到B站出問題的機器到hostname(通過hostname可以獲取機器ip甚至是直接登陸上機器)

更多的好處,大家可以自己去看官網瞄一眼哦~

http://tengine.taobao.org/documentation.html

六、推薦閱讀

  1. MySQL的修仙之路,圖文談談如何學MySQL、如何進階!(已發布)
  2. 面前突擊!33道數據庫高頻面試題,你值得擁有!(已發布)
  3. 大家常說的基數是什么?(已發布)
  4. 講講什么是慢查!如何監控?如何排查?(已發布)
  5. 對NotNull字段插入Null值有啥現象?(已發布)
  6. 能談談 date、datetime、time、timestamp、year的區別嗎?(已發布)
  7. 了解數據庫的查詢緩存和BufferPool嗎?談談看!(已發布)
  8. 你知道數據庫緩沖池中的LRU-List嗎?(已發布)
  9. 談談數據庫緩沖池中的Free-List?(已發布)
  10. 談談數據庫緩沖池中的Flush-List?(已發布)
  11. 了解臟頁刷回磁盤的時機嗎?(已發布)
  12. 用十一張圖講清楚,當你CRUD時BufferPool中發生了什么!以及BufferPool的優化!(已發布)
  13. 聽說過表空間沒?什么是表空間?什么是數據表?(已發布)
  14. 談談MySQL的:數據區、數據段、數據頁、數據頁究竟長什么樣?了解數據頁分裂嗎?談談看!(已發布)
  15. 談談MySQL的行記錄是什么?長啥樣?(已發布)
  16. 了解MySQL的行溢出機制嗎?(已發布)
  17. 說說fsync這個系統調用吧! (已發布)
  18. 簡述undo log、truncate、以及undo log如何幫你回滾事物! (已發布)
  19. 我勸!這位年輕人不講MVCC,耗子尾汁! (已發布)
  20. MySQL的崩潰恢復到底是怎么回事? (已發布)
  21. MySQL的binlog有啥用?誰寫的?在哪里?怎么配置 (已發布)
  22. MySQL的bin log的寫入機制 (已發布)
  23. 刪庫后!除了跑路還能干什么?(已發布)
  24. 自導自演的面試現場,趣學數據庫的10種文件(已發布)
  25. 大型面試現場:一條update sql執行都經歷什么?(已發布)
  26. 大型翻車現場:如何實現記錄存在的話就更新,如果記錄不存在的話就插入。(已發布)
  27. 視頻+圖文串講:MySQL 行鎖、間隙鎖、Next-Key-Lock、以及實現記錄存在的話就更新,如果記錄不存在的話就插入如何保證並發安全(已發布)
  28. 自導自演的面試現場:說說char 和 varchar的區別你了解多少?。(已發布)
  29. 自導自演的面試現場之--你竟然不了解MySQL的組提交?。(已發布)
  30. 全網最清楚的:MySQL的insert buffer和change buffer 串講(已發布)
  31. Double Write並不難理解
  32. 簡述MySQL的三大范式
  33. 盤點各種登陸數據庫的方式
  34. 面試現場:join聯表的注意點、有哪些聯表查詢方式、真題...
  35. 心里有點樹
  36. 心里有點B樹
  37. 聚簇索引到底是怎么回事?是如何長高的?
  38. 8分鍾回顧MySQL的索引


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM