About Cosense
Help
Log in
清水川のScrapbox
s
o
c
k
e
t
Related
Sort by
Related
Modified
Created
Last visited
Most linked
Page rank
Title
Links
PyCon JP 2018: Webアプリケーションの仕組み
Webサーバーを多重化
なぜ[Webサーバー]を複数にしたいのかアクセスがたくさん来る場合、1台だと処理しきれないためなぜ処理しきれないのかリソースがサーバーの許容量を超えるからメモリーの使用量
file descriptor
file descriptor: [ファイルディスクリプタ], [fd]ファイルを開くと1つ使われる、閉じると返却されるファイルだけでなく、[socket]を開くのにも使われるファイルや[socket]を開くと[file descriptor]([fd])番号が割り当てられる使用数上限がある
同時アクセスを受け付けるWebサーバーを作る
[socket]で複数のリクエストを受け付けるにはメインプロセスがそのまま処理すると、処理が終わるまで次は待たされる受け付け(accept)たら、すぐに別の担当者に渡して、受け付け待ちに戻る別の担当者: 別プロセス、別スレッド、がある[マルチプロセス]
Gunicornのアーキテクチャ
Gunicornを起動すると最初に起動した親プロセスが、[HTTPリクエスト]の窓口、兼、[モニタープロセス]になる親プロセスは決められた数の[ワーカープロセス]を起動する 親プロセスは、acceptした[socket]をすぐに[ワーカープロセス]に転送する[ワーカープロセス]は親プロセスから渡された[socket]を受取り、リクエストを処理する。
socketのbind
[socket] をbindする #Python コードリファレンス[https://docs.python.org/ja/3/library/socket.html#socket.socket 18.1. socket --- 低水準ネットワークインターフェイス — Python 3.6.6 ドキュメント]> `socket.socket(family=AF_INET, type=SOCK_STREAM, proto=0, fileno=None)`
Created
a few seconds ago
by
Takayuki Shimizukawa
Updated
a few seconds ago
by
Takayuki Shimizukawa
Views: 1
Page rank: 0
Copy link
Copy readable link
socket