aiokafka
Python 开发里使用的异步 kafka 客户端,大多是 aiokafka,因为它是目前 Python 社区里唯一一个直接支持 asyncio 的 kafka 客户端库。
但这个库有个大问题,也就是
[Producer] Performance drop when …
poetry
满足了我对包管理器的一切愿望,它的野心有点大,向着 Python 界的 npm 一路狂奔。
但这不是贬义词,它是一款比 pipenv 优秀的包管理器——当你适应它之后。
poetry init
就像
npm init
一样,poetry …
在之前的一篇文章
输出彩色命令行
里,我介绍了 Colorama 的基本使用方法。但作为一个命令行程序,除了好看的五颜六色的输出,还需要解析命令行参数。
一个简单好用的库——
click
,不仅集成了 Colorama,还提供了更简单的命令行解析。
使用click创建一个命令十分简单:
无服务函数也许是近来较为热门的一个东西。由于我没得信用卡,无奈只好在阿里云上小试一番。
但我惊奇的发现,如果使用flask等支持WSGI的Web框架去写一个无服务函数,是没办法直接用阿里云的API网关去调用函数的。因为网关为了通用性,它不可能一个个协议去做适配。
那么我为了方便开发与使用,创造了
Aliyun Gateway Interface
(aligi)。
按例,
pip install aligi
安装一下 …
最近在用阿里云的函数计算服务,需要使用JWK(Json Web Key)来生成JWT(Json Web Token),一时之间竟没有找到一个优雅的、提供JWK生成JWT的库,差点绝望的使用了阿里云给的Java样例。然后惊喜的发现
PyJWT
其实是支持JWK的,但是文档上并没有写。
此篇做一个系统的梳理,算是对官方文档的补充。
如果你不需要使用类似于RSA的加密算法 …
最近由于PM的需求,又去研究了Django一个app对应一个子域名的用法。寻找资料的过程中发现没有较好的中文教程,遂有此篇。
按照惯例,首先需要
pipenv install django-hosts
(如果你没有pipenv, pip也是一样的)。
把
'django_hosts'
加入项目设置中的
INSTALLED_APPS
把
'django_hosts.middleware …
Windows7之后的Windows系统自带的CMD或者Powershell,就不再支持ANSI代码来控制颜色了。那么我们如果想要改变Windows的命令行颜色,只好通过Windows给的句柄来控制颜色。
import sys
import ctypes
if sys.platform.startswith('win'):
stdout = ctypes.windll.kernel32.GetStdHandle(-11)
def …
最近我一个开发怎么就干上了运维的活,此篇以作记录。
下载之后修改
/etc/supervisord.conf
其中取消后台Web端口的注释
[inet_http_server] ; inet (TCP) server disabled by default
port=127.0.0.1:9001 …
一般来说Python打包成系统可执行文件,有两个库,但支持更新版本(3.6+)的Python的就是Pyinstaller了,有趣的是Pyinstaller在windows7上运行的十分完美,到windows10上就有一些warning,它是由于win10的feature导致的,这个warning并不影响我们的打包。
在win10上面打包虽然有warning,但是打包出来的exe放到别的电脑上跑就没有问题。在win7打包出来的,放到别的win7上就找不到dll,我差点因为这个而挂科。
安装Pyinstaller
首先
pip install pyinstaller …
定时任务无论是个人开发还是企业业务都是需要的。但个人开发的时候使用celery,未免有点杀鸡用牛刀的感觉。Celery性能不错,但配置起来并没有那么简单。非密集型的定时任务,我们完全可以使用
django-background-tasks
来替代Celery。
How to use
按例,
pip install django-background-tasks
来安装。
然后加入INSTALLED_APPS:
INSTALLED_APPS = (
# ...
'background_task' …