前言?

為什么是CherryPy??

Cherrypy是Python最古老的Web框架之一,但許多人并不知道它的存在。其中一個原因是,Cherrypy不是一個完整的堆棧,它內置了對多層體系結構的支持。它既不提供前端實用程序,也不會告訴您如何使用存儲設備。相反,Cherrypy的做法是讓開發人員做出這些決定。與其他著名框架相比,這是一個對比立場。

Cherrypy有一個干凈的界面,在為您提供可靠的腳手架的同時,盡最大努力避開您的道路。

Cherrypy的典型用例僅從具有用戶前端的常規Web應用程序(比如博客、CMS、門戶、電子商務)轉到Web服務。

以下是您選擇Cherrypy的一些原因:

  1. 簡單性

    用Cherrypy開發是一項簡單的任務?!癶ello,world”只有幾行長,不需要開發人員同時學習整個(盡管非常容易管理)框架??蚣芊浅:唵?;也就是說,它非常好地遵循了Python的約定(代碼稀疏且干凈)。

    與J2EE和Python最流行和可見的Web框架(django、zope、pylons和turbogears)形成對比。在所有這些研究中,學習曲線都是巨大的。在這些框架中,“hello,world”要求程序員建立一個跨越多個文件的大型框架,并鍵入許多樣板代碼。Cherrypy之所以成功,是因為它不包括其他框架的膨脹,允許程序員快速編寫Web應用程序,同時仍保持較高的組織和可伸縮性。

    Cherrypy也是非常模塊化的。核心是快速和干凈的,擴展特性易于編寫和使用代碼或優雅的配置系統插入。主要組件(服務器、引擎、請求、響應等)都是可擴展的(甚至是可替換的)并且管理良好。

    簡而言之,Cherrypy允許開發人員使用這個框架,而不是與它對抗或圍繞它工作。

  2. 功率

    奇瑞利用了 Python 的所有力量。python是一種動態語言,允許快速開發應用程序。Python還有一個廣泛的內置API,它簡化了Web應用程序的開發。然而,更廣泛的是,第三方庫可用于Python。從對象關系映射器到表單庫,再到自動python優化器、Windows exe生成器、圖像庫、電子郵件支持、HTML模板引擎等,奇瑞派應用程序與普通的python應用程序一樣。如果你想使用這些出色的工具,奇瑞不會妨礙你。

    Cherrypy還提供 toolsplugins 這是開發世界級Web應用程序所需的強大擴展點。

  3. 到期

    在開發實際應用程序時,成熟度非常重要。與許多其他Web框架不同,Cherrypy有許多最終的、穩定的版本。它經過了全面的測試、優化,并被證明對現實世界的使用是可靠的。API不會突然改變和破壞向后的兼容性,因此即使在當前版本系列的后續更新中,您的應用程序也可以繼續工作。

    Cherrypy也是一個“3.0”項目:第一版的Cherrypy設定了基調,第二版讓它發揮作用,第三版讓它變得美麗。每個版本都建立在從以前的經驗教訓的基礎上,為開發人員提供了一個更好的工作工具。

  4. 社區

    Cherrypy有一個專門的社區,開發部署的Cherrypy應用程序,愿意并準備在Cherrypy郵件列表或Gitter上幫助您。開發人員還經常使用列表,經?;卮饐栴}并實現最終用戶請求的功能。

  5. 可部署性

    與許多其他的python web框架不同,部署cherrypy應用程序有一些經濟高效的方法。

    開箱即用,Cherrypy包括自己的生產就緒的HTTP服務器來承載您的應用程序。Cherrypy還可以部署在任何符合wsgi的網關上(一種用于連接多種類型Web服務器的技術):mod_wsgi、fastcgi、scgi、iis、uwsgi、tornado等。反向代理也是一種常見且簡單的設置方法。

    此外,Cherrypy是純python,與python 2.3兼容。這意味著Cherrypy將在所有主要的平臺上運行,而python將在這些平臺上運行(windows、macosx、linux、bsd等)。

    webfaction.com _由Cherrypy的發明者運行,是一個提供Cherrypy托管軟件包(以及其他一些軟件包)的商業Web主機。

  6. 它是免費的!

    所有Cherrypy都獲得了開源BSD許可,這意味著Cherrypy可以以零成本商業化使用。

  7. 從這里到哪里?

    退房 tutorials 開始享受樂趣吧!

成功案例?

您對Cherrypy很感興趣,但您希望從使用它的人那里聽到更多的信息,或者簡單地查看運行它的產品或應用程序。

如果您希望在此列出您的Cherrypy Powered網站或產品,請通過我們的 mailing listGitter .

在Cherrypy上運行的網站?

Hulu Deejay and Hulu Sod -Hulu在一些項目中使用Cherrypy?!狈招枰浅8叩男阅?。 Python ,還有奇瑞, gunicorn 和gevent提供了更多?!?/p>

Netflix -Netflix在其基礎設施中使用CherryPy作為構建基塊:“為具有請求的大型應用程序提供RESTful API,為Web界面提供CherryPy和Bolt,并使用SciPy處理數據?!?/p>

Urbanility -法國雷恩當地社區資產網站。

MROP Supply -工業設備webshop,使用cherrypy 3.2.2開發,使用python 3.2,使用libs: Jinja2-2.6 ,davispuh-mysql-for-python-3-3403794,pyenchant-1.6.5(搜索拼寫)?!蔽覐?NET開發部門過來,發現python和cherrypy的極簡風格令人驚訝。沒有不必要的開銷-建立你所需要的一切沒有額外的絨毛。我是個粉絲!”

CherryMusic -用python編寫的音樂流服務器:將您自己的音樂收藏流到所有設備!CherryMusic是開源的。

YouGov Global -國際市場研究公司每年對CherryPy進行數百萬次調查。

Aculab Cloud -云上的語音和傳真應用程序。一個簡單的Python電話API,C,C,+,VB等。網站以及所有的前端和后端Web服務都是用cherrypy構建的,前面是nginx(只處理ssh和反向代理),在兩個區域的AWS上運行。

Learnit Training -荷蘭IT、管理和通信培訓公司網站?;赾herrypy 3.2.0和python 2.7.3構建,具有 oursqlDBUtils 類庫等。

Linstic -瀏覽器中的便簽(帶有鏈接)。

-帶博客的簡單主頁。

Fight.Watch -用于戰斗游戲的twitch.tv網站?;赾herrypy 3.3.0和python 2.7.3,以及jinja 2.7.2和sqlacalchemy 0.9.4。

基于Cherrypy的產品?

SABnzbd -用python編寫的開源二進制新聞閱讀器。

Headphones -Sabnzbd的第三方附加組件。

SickBeard -“Sick Beard是新聞組用戶的一個pvr(具有有限的Torrent支持)。它會監視您最喜愛的節目的新集,當它們被發布時,它會下載它們,對它們進行排序和重命名,還可以選擇為它們生成元數據?!?/p>

TurboGears -快速的Web開發MegaFramework。渦輪齒輪1.x使用了CherryPy。Cherrypy是渦輪齒輪的底層應用服務器。它負責接收用戶瀏覽器的請求,解析它們,并將它們轉換為Web應用程序的python代碼。它的作用類似于其他編程語言中使用的應用服務器”。

Indigo -“智能家庭控制服務器,集成家庭控制硬件模塊,為您的家庭提供控制。Indigo的內置Web服務器和客戶機/服務器體系結構使您可以從其他Mac、PC、Internet平板電腦、PDA和移動電話遠程控制和訪問您的家庭?!?/p>

SlikiWiki -wiki基于cherrypy構建,具有wikiwords、自動反向鏈接、網站地圖生成、全文搜索、鎖定并發編輯、RSS源嵌入、每頁訪問控制列表以及使用PyTextile標記的頁面格式?!?/p>

read4me -read4me是一個python feed reading Web服務。

Firebird QA tools -Firebird質量保證工具基于Cherrypy。

salt-api -一個用于salt的RESTAPI,基礎結構編排工具。

以奇瑞為靈感的產品?

OOWeb -“OOWEB是一個輕量級的、用于Java應用程序的嵌入式HTTP服務器,它將對象映射到URL目錄、將方法映射到頁面和形成/查詢字符串參數作為方法參數。Ooweb最初的靈感來源于Cherrypy?!?/p>