Borg

Live as if you were to die tomorrow. Learn as if you were to live forever.


python GIL 缺陷思考 7 months, 1 week ago

python 开发者都知道 python 由于 GIL(Global Interpretor Lock) 的限制,开出的线程无法使用多核 cpu,只适合处理 IO 密集型任务而不适合计算密集型。当需要处理计算密集型任务时,只能通过多进程来…

View

python调用二进制程序-标准输入输出流重定向 7 months, 1 week ago

# 背景介绍 [fastalign](https://github.com/clab/fast_align) 是自然语言处理领域的一个词对齐工具,需要对 fastalign 的训练、模型存储、文本/单句对齐(模型使用)等步骤封装成自动化…

View

nameko 的使用及注意事项 9 months, 3 weeks ago

# nameko 的使用及注意事项 nameko 是python语言的一个微服务框架,支持通过 rabbitmq 消息队列传递的 rpc 调用,也支持 http 调用。本文主要介绍 nameko 的 rpc 调用以及一些注意事项。 …

View

Python 协程 1 year, 4 months ago

协程是比线程轻量,由 Python 自行处理控制流的切换,不像线程的切换需要借助操作系统,因此同样是IO密集型程序协程的效率比线程高。然而 Python 中 yield、yield from、async、await 的使用十分容易混淆,需…

View

Python 多进程及进程间通信 2 years, 6 months ago

python 因 GIL 的存在,处理计算密集型的任务时无法高效利用多核 CPU 的计算资源,这时就需要使用多进程来提高对 CPU 的资源利用。Python 多进程主要用 multiprocessing 模块实现,提供了进程、进程池、队列…

View

reload 实现热更新 3 years ago

# 什么是 reload 当我们在 python 的交互模式下测试某个类的时候,发现这个类的某个方法有错误进行了修改,而这个方法的输入又依赖于之前在交互模式下的好几个操作,这时要怎么办呢?如果重启交互模式,那么该方法依赖的操作就得重新再…

View

robotparser 与 requests 结合使爬虫遵守 robots.txt 协议 3 years ago

# 什么是 robots.txt ? robots.txt 文件放置在网站根目录下,定义了什么样的客户端(web服务器以User-Agent识别客户端)可以访问的资源有哪些,不能访问的资源有哪些。以百度的 robots.txt 为例,如…

View

用Apache Kafka 和 Python 搭建分布式流处理系统 3 years ago

注: 本篇翻译自 [scotch.io][1] 。 # Apache Kafka 是什么? Kafka 是一个开源的分布式流处理平台,其简化了不同数据系统的集成。流指的是一个数据管道,应用能够通过流不断地接收数据。Kafka 作为流处…

View

Celery + Django : 异步邮箱验证 3 years, 2 months ago

其实。。。这篇教程不包括邮箱验证的,不过我有实现个 celery + django 的邮箱验证博客,文末附 repo 。 Web 应用中的长时操作如果没有异步实现会阻塞代码运行,用户需要等待较长时间才能收到响应。而像 Celery …

View

Django Channels 实现在线用户列表 3 years, 2 months ago

本篇翻译自: [Getting Started with Django Channels][1] 译者: Borg 本篇教程中,我们将使用 Django Channels 来创建实时应用,当用户登录或登出时将实时更新已登录用户…

View