c-bata / webframework-in-python

"How to write WSGI WEB Framework" talked at PyConJP 2016
https://c-bata.github.io/webframework-in-python/
25 stars 3 forks source link

「リクエスト・レスポンス」の章の不備 #9

Closed kwatch closed 6 years ago

kwatch commented 6 years ago

https://c-bata.link/webframework-in-python/environ.html

WSGIのアプリケーションの第一引数には、各種リクエストの情報が含まれています。 しかしこの辞書型のオブジェクトから、様々な情報を取り出すのは少し大変でしょう。 またviewの関数

文章が途中で切れてませんか?

curlでjsonを叩いてみましょう。

実行結果が抜けてませんか?

チューニング

文章からいろいろ抜けてませんか?。書きかけを公開するなら「書きかけ」とか「WIP」と書いたほうがよさそう。

10000個作ったときのメモリ使用量

リクエストオブジェクトやレスポンスオブジェクトは短命なので、10000リクエストを同時にさばけるようになるまでは「10000個作ったときのメモリ使用量」を気にする必要はないのでは? それより「10000個作ったときの時間」を計測したほうがよさそう。

そもそもここはボトルネックになってるのでしょうか。計測してボトルネックを突き止めるほうが先だと思います。 (ボトルネックを突き止める方法をこのチュートリアルに入れる必要はないけど、ボトルネックではないことのチューニングも入れる必要はない。)

自分が過去に行ったプロファイリングを基にいうと、ルーティングのmatch()で正規表現を大量にコンパイルしていることのほうが、よほどボトルネックになるでしょう。

kwatch commented 6 years ago

問題点の指摘ばかりしてしまいましたが、発表資料をドキュメントに書き起こすのは大変だと思います。自分も社内の新人向けにフレームワークの作り方の資料を作ったことがあるので、大変さはわかります。 頑張ってください。

c-bata commented 6 years ago

ひとまずリクエストオブジェクトとレスポンスオブジェクトで章を分けて、それぞれ一度書き直しました。

フィードバックありがとうございました。