协程

工具

  • 压力测试 模拟多线程并发请求
  • 工具 apachebench /bin/ab.exe
  • 命令
    -n 请求个数
    -c 请求次数
ab -c 30 -n 1000 http://127.0.0.1:8000/xxx/ 

模拟客户端请求

同步
client = HTTPClient()
异步
client = AsyncHTTPClient()
client.fetch(url)

协程

  • 多个子程序。在需要暂停的地方暂停执行其它子程序。
  • async、await
  • 旧方法 croutine、yield
async def get(self, *args, **kwargs):
    url = 'xxx'
    client = tornado.httpclient.AsyncHTTPClient()
    response = await client.fetch(url)
    self.write('')

问题

cpython: GIL 全局解释性锁

你可能感兴趣的:(协程)