摘要: 基本IO模型 网上搜了很多关于同步异步,阻塞非阻塞的说法,理解还是不能很透彻,有必要买书看下。 参考:使用异步 I/O 大大提高应用程序的性能 怎样理解阻塞非阻塞与同步异步的区别? 同步和异步:主要关注消息通信机制(重点在B?)。 同步:A调用B,B处理直到获得结果,才返回给A。 异步:A调用B,B 阅读全文
posted @ 2018-12-31 21:55 b02330224 阅读(843) 评论(0) 推荐(0) 编辑
摘要: 在使用tornado框架进行开发的过程中,发现tornado的mysql数据库操作并不是一步的,造成了所有用户行为的堵塞.tornado本身是一个异步的框架,要求所有的操作都应该是异步的,但是数据库这一层就把整个服务器都拖住了. ##查找到的解决办法: 使用异步的mysql操作库. 查找了一下,有两 阅读全文
posted @ 2018-12-31 21:32 b02330224 阅读(707) 评论(0) 推荐(0) 编辑
摘要: Tornado是一个异步框架,在异步操作的时候能提升程序的处理性能。但是如果在程序中碰到同步的逻辑,由于GIL的关系,会直接卡死,导致性能急剧下降。 目前对于mongodb以及redis都有比较不错的异步框架,但是对于Mysql,目前的异步框架都不是很成熟。 在实际应用中,由于一开始不是特别了解,在 阅读全文
posted @ 2018-12-31 21:31 b02330224 阅读(364) 评论(0) 推荐(0) 编辑
摘要: 最近一直在研究Tornado异步操作,然而一番研究后发现要使一个函数异步化的最好方法就是采用相关异步库,但目前很多功能强大的库都不在此列。经过一番查找文档和搜索示范,终于发现了ThreadPoolExecutor模块和run_on_executor装饰器。用法就是建立线程池,用run_on_exec 阅读全文
posted @ 2018-12-31 21:29 b02330224 阅读(1052) 评论(0) 推荐(0) 编辑