竜巻ソースパッケージは、視点helloworld.pyアプリケーション竜巻単純なコード構造から、いくつかの例示的な手順のデモディレクトリを含んでいます。
次のように完全なサンプルプログラムは次のとおりです。
01#!は/ usr / binに/ envをpythonの 02# 03#著作権2009 Facebookの 04# 05 06インポートtornado.httpserver 07インポートtornado.ioloop 08インポートtornado.options 09インポートtornado.web 10 tornado.optionsから11定義のインポート、オプション 12 13(デフォルト= 8888、ヘルプ= "指定されたポート上で実行"、タイプ= INT、 "ポート")を定義する 14 15 :16クラスMainHandler(tornado.web.RequestHandler) 17 DEF(自己)を得る: 18 self.write ( "こんにちは、Nowamagic") 19 20 21 DEFメイン(): 22 tornado.options.parse_command_line() 23アプリケーション= tornado.web.Application([ 24(R "/"、MainHandler)、 25]) 26 HTTP_Serverの= tornado.httpserver.HTTPServer(アプリケーション) 27 http_server.listen(options.port) 28 tornado.ioloop.IOLoop。 。インスタンス()()開始 29 30 31なら__name__ == "__main__": 32メイン()
最初は輸入のセットです。もちろん、他の人の前やコメントか何かを持って、より正常な。
tornado.httpserver 1つのインポート 2インポートtornado.ioloop 3インポートtornado.options 4インポートtornado.web 5 tornado.optionsから6は、オプションを定義インポート
次に、アプリケーションを起動するときにパラメータを指定することができますので、アプリケーションを定義するためのオプションです。竜巻tornado.options.defineはパラメータが特定のヘルプが表示できるカスタマイズオプションを簡素化する方法を提供します。ここでポートパラメータを定義し、直接の例を以下に示します。
1( "ポート"、デフォルト= 8888、ヘルプ= "指定したポートで実行"、タイプ= int型)を定義
次はMainHandler設定です。
1クラスMainHandler(tornado.web.RequestHandler): 2 DEF GET(自己): 3 self.write( "こんにちは、Nowamagic")
URLのXXHandler具体的な実装は、マッピングされました。
ハンドラは、main()関数の下に定義されます:
1 DEFメイン(): 2 tornado.options.parse_command_line() 3アプリケーション= tornado.web.Application([ 4(R "/"、MainHandler)、 5]) 6 HTTP_Serverの= tornado.httpserver.HTTPServer(アプリケーション) 7 HTTP_Serverの.listen(options.port) 8 tornado.ioloop.IOLoop.instance()。)(開始
アプリケーションが実行されると、それは最初のパラメータの解析を選択します。あなたは、アプリケーションのインスタンスを作成し、HTTPServerのインスタンスに渡された後、これをこのインスタンスを開始した後、HTTPサーバが開始されました。tornado.httpserverモジュールは、非ブロッキングHTTP Serverをサポートするために使用されます。
サーバを起動した後、あなたはまた、あなたが非ブロックHTTPサーバでの作業、イベント・ループ・メカニズムを起動することができますので、インスタンスIOLoopを開始する必要があります。もちろん、具体的な実装は非常に複雑で、ここだけの簡単な概要です。