本書是《mongrel:服務、部署及擴展Ruby應用程式》和《Rails路由》的合訂本。第一本書介紹並指導Mongrel(一個Ruby語言環境下快速、通用的Web伺服器)的部署和使用。第二本書介紹Rails路由的相關內容,包括路由系統概述、編寫自定義路由、REST風格路由、具名路由以及對路由的反思等。這兩本書都由行業專家和暢銷書作者寫就,包含了讀者最需要的最新的專業技術信息。
作者: (美)皮爾特爾,(美)肖,(美)布萊克 著,洪文迅 譯
出 版 社: 機械工業出版社
出版時間: 2008-12-1
版次: 1
頁數: 67
印刷時間: 2008/12/01
開本: 16開
印次: 1
紙張: 膠版紙
I S B N : 9787111253518
包裝: 平裝
內容簡介
本書是《Mongrel:服務、部署及擴展Ruby應用程式》和《Rails路由》的合訂本。第一本書介紹並指導Mongrel(一個Ruby語言環境下快速、通用的Web伺服器)的部署和使用。第二本書介紹Rails路由的相關內容,包括路由系統概述、編寫自定義路由、REST風格路由、具名路由以及對路由的反思等。這兩本書都由行業專家和暢銷書作者寫就,包含了讀者最需要的最新的專業技術信息。
本書適合Ruby開發人員和Ruby愛好者參考。
作者簡介
Matt Peiletier NYC.rb的創立者之一,曾在Rails Conf,My SQL Conf發表主題演講,他也參與編寫了《The Rails Way》。
目錄
譯者序
致謝
關於作者
第1章 本書涵蓋內容
1.1 本書的格式
1.2 ZED說(zed sez)
第2章 入門簡介
2.1 Mongrel是什麼
2.2 Mongrel是如何工作的
2.3 Mongrel能做些什麼
2.3.1 對於開發者
2.3.2 對於系統/網路管理員
2.3.3 對於開發經理
第3章 Mongrel的安裝和使用初步
3.1 安裝Mongrel
3.2 使用Mongrel
3.3 支持的平台
3.3.1 UNIX
3.3.2 Windows
3.4 支持的框架
3.4.1 ruby on rails
3.4.2 Iowa
3.4.3 Camping
3.4.4 Og/Nitro
第4章 配置
4.1 配置Mongrel
4.2 常見配置
4.2.1 獨立運行的Mongrel
4.2.2 一組Mongrel(mongrel_cluster)
4.2.3 “靜態”Web伺服器後面的Mongrel
4.3 實際運行的配置範例
4.3.1 Apache的回歸:Apache+mod_proxy_balancer+Mongrel
4.3.2 來自俄羅斯的愛:Nginx
第5章 產品運行環境的部署
5.1 基本要求
5.1.1 必需的系統訪問許可權
5.1.2 最佳實踐的規則
5.1.3 最糟糕的實踐
5.2 可供選擇(太)多
5.3 模擬的硬體規劃
5.4 軟體的部署
5.4.1 web1(Apache)
5.4.2 app1(運行Mongrel)
5.4.3 db1(運行MySQL)
5.4.4 對於所有機器
5.5 配置
5.5.1 Mongrel
5.5.2 一個簡單的Rails測試套用
5.5.3 mongrel_cluster
5.5.4 Apache
5.5.5 MySQL
5.5.6 最後一步:將套用投入生產環境
5.6 照看你的套用
5.6.1 監控
5.6.2 安全性
第6章 擴展Mongrel
6.1 Mongrel的架構
6.2 處理程式
6.3 過濾器
6.4 將你的外掛程式作為RubyGems發布
6.5 命令
6.5.1 創建項目
6.5.2 建立項目檔案
6.5.3 編寫初始化檔案
6.5.4 安裝和運行
6.6 處理程式作為GemPlugins
6.7 高級處理程式
6.8 尋找更多外掛程式
第7章 調試
7.1 現有工具
7.1.1 “Dash-Bee'’日誌選項(“-B”)
7.1.2 USR1日誌
7.1.3 對日誌配置進行定製
7.2 常見情形
7.3 其他工具
7.3.1 客戶端調試
7.3.2 伺服器端調試
7.3.3 網路調試
7.4 報告Mongrel的Bugs
第8章 性能
8.1 第一次部署的簡單調優過程
8.1.1 設定你的目標
8.1.2 帶齊你的工具
8.1.3 收集基準數據
8.1.4 調優的流程
第9章 安全性
9.1 Mongrel的安全性設計
9.1.1 嚴格的HTTP 1.1分析
9.1.2 請求長度的限制
9.1.3 限制並發處理
9.1.4 沒有HTTP管道和長連線
9.1.5 沒有SSL
9.1.6 沒有[這裡填上你認為“必須”的功能]
相關資源
書摘插圖
第2章 入門簡介
本章將向你介紹Mongrel,解釋它的來由和歷史,以及如何使用。由於我們發現關於Mongrel如何工作、能做些什麼,有哪些普遍的錯誤看法。所以,需要澄清這些誤解,以便能順利開始。即使你認為自己了解Mongrel是什麼,還是應該先讀一下這部分內容。
2.1 Mongrel是什麼
Mongrel是一個小型、快速、幾乎完全由Ruby開發的Web伺服器。它的設計目標就是只做很少的幾件事情,但一定把這些事情做好:包括讓Ruby套用的開發、部署、擴展變得極為簡易——主要就是這些!
Mongrel的簡短歷史
Zed Shaw在2005年12月底的時候開始了Mongrel這個項目。他之所以編寫Mongrel,是因為在開發和部署Ruby的Web應用程式時,對當時的解決方案很失望:FastCGI方式問題百出,而WEBrick則慢得難以忍受。同年早些時候,Zed曾寫過一個scgi方式的Rails運行環境(Runner),試圖作為FastCGl的替代方案,但他很快遇到了阻礙,因為這個新方案也只是個折中方式。這一次,Zed也感到厭煩了,但他仍然滿懷信心,所以親手編寫了Mongrel來解決眼前的棘手問題。事實上,許多人跟Zed一樣在這個問題上碰壁,所以Zed的解決方案對許多Ruby開發者和系統管理員大有裨益。Mongrel的成功很大程度上基於Zed對軟體架構的思路,而在Ruby開發的世界裡,開發思想與實踐和代碼本身是同等重要的事情。因此,Zed按照自己的思路打造了Mongrel——它是一個Web伺服器,而不是一個通用的適配器(adapter);它緊湊、小巧並且安全。Zed很樂意向你解釋為何如此設計。
Mongrel已經包含在許多Linux版本的發行包里,此外還將在Apple公司的OSX的下一個發布版(命名為“Leopard”,詳情可參考http://www.apple.com/server/maeosx/leop-ard/more.html)中出現。