SAE中Python无法创建多线程的解决方案
2014-11-07 10:15
155 查看
最近在SAE上开发了一个给kindle退送书的小公众号(kindle免费书库),由于微信对http响应时间
有限制,而推送本身是发邮件,当附件一大就很容易超时而使得用户收不到应答。一开始我是想通过多线程
thread.start_new_thread的方式来多开线程发送,主线程直接告诉用户发过去了的方案解决的。但代码
上到SAE后发现不可行,因为SAE本身不支持Python的多线程,使用thread.start_new_thread的效果跟
直接在主线程掉函数是完全一样的。
这个问题郁闷了我一段时间,后来发现SAE有提供一个叫TaskQueue的玩意,可以通过异步http请求的
方式实现多进程。示例见:http://sae.sina.com.cn/doc/python/taskqueue.html
试过发现效果相当好,同时它是可以高并发公工作的。所以,以后如果有速度不够需要多线程来加速的话,就
直接适用TaskQueue啦:)
有限制,而推送本身是发邮件,当附件一大就很容易超时而使得用户收不到应答。一开始我是想通过多线程
thread.start_new_thread的方式来多开线程发送,主线程直接告诉用户发过去了的方案解决的。但代码
上到SAE后发现不可行,因为SAE本身不支持Python的多线程,使用thread.start_new_thread的效果跟
直接在主线程掉函数是完全一样的。
这个问题郁闷了我一段时间,后来发现SAE有提供一个叫TaskQueue的玩意,可以通过异步http请求的
方式实现多进程。示例见:http://sae.sina.com.cn/doc/python/taskqueue.html
试过发现效果相当好,同时它是可以高并发公工作的。所以,以后如果有速度不够需要多线程来加速的话,就
直接适用TaskQueue啦:)
相关文章推荐
- [IIS]由于无法创建应用程序域,因此未能执行请求解决方案汇总
- 关于ASP.NET中由于无法创建应用程序域,因此未能执行请求解决方案
- PYTHON升级导致yum命令无法使用的解决方案
- visual studio 2010 创建新项目时,提示无法找到项目模板的一个解决方案
- Javascript中无法创建ActiveXObject("WScript.Shell")对象的解决方案
- “Visual Studio .NET 无法创建或打开应用程序。问题很可能是因为本地WEB本地服务器上没有安装所需的组件。请运行Visual Studio .NET安装程序并添加WEB开发组件“的一种解决方案
- 【解决方案】Visual Studio替换/修改默认项目模板后无法创建该项目或不呈现修改
- 启用“快速启动栏”提示“无法创建工具栏”解决方案
- Visual Studio2008创建新项目时无法识别工具版本3.5解决方案
- 用Python写了一个多线程,但无法推出循环,请高人指点
- SQL2000 MMC无法创建管理单元解决方案
- 由于无法创建应用程序域,因此未能执行请求解决方案汇总
- 出现"会话状态已创建一个会话ID,但由于响应已被应用程序刷新而无法保存它" 解决方案
- C#中,使用UserActivityHook无法创建钩子的解决方案
- 关于ASP.NET中由于无法创建应用程序域,因此未能执行请求解决方案
- [IIS]由于无法创建应用程序域,因此未能执行请求解决方案汇总
- Visual Studio .NET 2003 无法创建或打开应用程序的解决方案
- “Visual Studio .NET 无法创建或打开应用程序。问题很可能是因为本地WEB本地服务器上没有安装所需的组件。请运行Visual Studio .NET安装程序并添加WEB开发组件“的一种解决方案
- 无法创建维护计划(备份DB、log、Diff) 解决方案
- visual studio 2010 创建新项目时,提示无法找到项目模板的一个解决方案 或者 无法从项目模版中加载xxx文件