91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python tornado怎樣啟動和配置

發布時間:2020-11-10 09:38:20 來源:億速云 閱讀:176 作者:小新 欄目:編程語言

這篇文章主要介紹python tornado怎樣啟動和配置,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

如果小伙伴一直關注這個系列,那么第一步應該對你來說習以為常。

$ mkdir tornado_todo
$ cd tornado_todo
$ pipenv install --python 3.6
$ pipenv shell
(tornado-someHash) $ pipenv install tornado

創建一個 setup.py 文件來安裝我們的應用程序相關的東西:

(tornado-someHash) $ touch setup.py
# setup.py
from setuptools import setup, find_packages
 
requires = [
    'tornado',
    'tornado-sqlalchemy',
    'psycopg2',
]
 
setup(
    name='tornado_todo',
    version='0.0',
    description='A To-Do List built with Tornado',
    author='<Your name>',
    author_email='<Your email>',
    keywords='web tornado',
    packages=find_packages(),
    install_requires=requires,
    entry_points={
        'console_scripts': [
            'serve_app = todo:main',
        ],
    },
)

因為 Tornado 不需要任何外部配置,所以我們可以直接編寫 Python 代碼來讓程序運行。讓我們創建 todo 目錄,并用需要的前幾個文件填充它。

todo/
    __init__.py
    models.py
views.py

 就像 Flask 和 Pyramid 一樣,Tornado 也有一些基本配置,放在 __init__.py 中。從 tornado.web 中,我們將導入 Application 對象,它將處理路由和視圖的連接,包括數據庫(當我們談到那里時再說)以及運行 Tornado 應用程序所需的其它額外設置。

# __init__.py
from tornado.web import Application
 
def main():
    """Construct and serve the tornado application."""
app = Application()

像 Flask 一樣,Tornado 主要是一個 DIY 框架。當構建我們的 app 時,我們必須設置該應用實例。因為 Tornado 用它自己的 HTTP 服務器來提供該應用,我們必須設置如何提供該應用。首先,在 tornado.options.define 中定義要監聽的端口。然后我們實例化 Tornado 的 HTTPServer,將該 Application 對象的實例作為參數傳遞給它。

# __init__.py
from tornado.httpserver import HTTPServer
from tornado.options import define, options
from tornado.web import Application
 
define('port', default=8888, help='port to listen on')
 
def main():
    """Construct and serve the tornado application."""
    app = Application()
    http_server = HTTPServer(app)
http_server.listen(options.port)

當我們使用 define 函數時,我們最終會在 options 對象上創建屬性。第一個參數位置的任何內容都將是屬性的名稱,分配給 default 關鍵字參數的內容將是該屬性的值。

例如,如果我們將屬性命名為 potato 而不是 port,我們可以通過 options.potato 訪問它的值。

在 HTTPServer 上調用 listen 并不會啟動服務器。我們必須再做一步,找一個可以監聽請求并返回響應的工作應用程序,我們需要一個輸入輸出循環。幸運的是,Tornado tornado.ioloop.IOLoop 的形式提供了開箱即用的功能。

# __init__.py
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop
from tornado.options import define, options
from tornado.web import Application
 
define('port', default=8888, help='port to listen on')
 
def main():
    """Construct and serve the tornado application."""
    app = Application()
    http_server = HTTPServer(app)
    http_server.listen(options.port)
    print('Listening on http://localhost:%i' % options.port)
IOLoop.current().start()

我喜歡某種形式的 print 語句,來告訴我什么時候應用程序正在提供服務,這是我的習慣。如果你愿意,可以不使用 print。

我們以IOLoop.current().start() 開始我們的 I/O 循環。讓我們進一步討論輸入,輸出和異步性。

以上是python tornado怎樣啟動和配置的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永泰县| 宁化县| 洛扎县| 惠州市| 佛山市| 高密市| 汶川县| 玛多县| 鹤壁市| 靖宇县| 五台县| 蓬溪县| 威海市| 龙陵县| 大化| 雷州市| 乌鲁木齐县| 神木县| 桃园市| 西充县| 蒲江县| 昆明市| 柞水县| 二手房| 晋中市| 房山区| 新民市| 三江| 聂荣县| 沂水县| 漳平市| 南京市| 鄂托克前旗| 阜新市| 白玉县| 诏安县| 山西省| 阿勒泰市| 江达县| 逊克县| 昭通市|