KZKY memo

自分用メモ.

Python: TCP Server

基本

Cのsokcet programmingとほとんど同じ

Server側

  • create socket
  • bind socket to (host, port)
  • socket listens with qsize
  • socket accepts connection
  • socket recv msg from a client
  • socket send msg to a client

Client側

  • create socket
  • socket connects to a server
  • socket send msg to a server
  • socket recv msg from a server

Workerを使う

シングルスレッドだと処理が重いので,Workerプロセスを使う

Main process

  • create socket
  • bind socket to (host, port)
  • socket listens with qsize
  • pass socket to child process

Child process

  • socket accepts connection
  • socket recv msg from a client
  • socket send msg to a client
  • msgを処理したらconn.shutdown, conn.close

今回はこうしているだけで,connを切らない方がいい場合もある.

コード

TCP Server