BLOG
Enjoy when you can, and endure when you must.
JUL 26, 2016/后端开发与架构
协程在 I/O 密集型场景中的应用

在 I/O 密集型的应用中,CPU 可能总是苦苦等待着 I/O 操作的完成。如果是一个提供 Web 的服务的话,也就意味着一个线程会因为 I/O 阻塞而无法快速的对其他请求进行响应。势必也造成一种资源浪费和效率低下。在这种时候,协程的价值就体现了出来。这里,我延续之前的 APNs 话题,从应用的角度去实实在在的体验一下协程。

JUL 15, 2016/Python
苹果推送 APNs Provider API 在 Python 中的使用

当参与后端开发,并且所涉及的项目是为 APP 提供服务的时候,就不可避免的会遇到推送这个需求。就 iOS 的推送而言,要规规矩矩的来做,当属直接与 APNS 进行对接来实现推送。APNS 的接口有两种,一种为 Binary Provider API,还有一种为最新的 APNs Provider API。现在就来针对在 Python 中使用 APNs Provider API 做一个简单初步的探索。

解决Nginx+uwsgi+Django线程发送邮件的问题
最近一直在完善我的新版网站,在这一版中我加入了用户注册的功能,系统会生成用户帐户并向用户的注册邮箱发送一封激活邮件。在开发服务器上,我花了很多时间来完善这个功能,但转入生产服务器时却遇到了一个怪问题 —— 邮件不能成功发送,甚至日志里也并未记录任何错误。通过各方面的搜索,终于发现该问题是因为uwsgi的参数设置不当造成的,应在uwsgi启动参数中加入:--enable-threads该参数允许用内嵌的语言启动线程(即允许在app程序中产生子线程)。至此,问题解决!
1