Python 邮箱服务

最近在封装一些自己用的通讯服务,例如有短信/邮件/Slack 这些,但是,在编写邮件的时候突然发现自己以前都是只使用了邮件的发送功能,也就是简单得通过 smtplib 来发送的,但是,好像收邮件就没有那么简单了,发现收邮件有 POP3 和 IMAP 两种协议比较常用,虽然这两个名字都很熟悉,但是,说不上来有啥区别,分别是啥特点,所以需要小结一番。

Python 整数数据类型的实现

之前概括了一下 Python 的对象数据结构,比较笼统,所以还是需要找一两个有意思的数据结构看看具体实现,以及针对这些实现的操作。其实,可以发现,内部的实现都是计算机的基础知识,大数运算/哈希表/动态数组这些。

Python 对象模型

这几天闲下来看看 Python 的源码,感觉很不错,虽然看到的是些皮毛,但是还是总结一下,毕竟这也是 Python 中比较核心的一部分,承载着 Python 的基础

编译 Python API开发环境

最近在探索 Python 的源码,但是,发现瞎看也没啥意思,所以就想折腾折腾。我的方式是直接编写 C++ 代码调用 Python API 然后看一些输出和数据状态,从而验证 Python 的一些内部实现,而本文就为搭建和测试 Python API 环境的简单教程

pyev 的简单用法

最近发现了一个很有意思的 Python 库 — pyev,它是 libev 的 python 封装库,之前见过一种方式是使用 cffi(gevent) 的方式进行交互,但是 pyev 确实直接使用扩展模式的形式进行交互,所以它的代码都是清一色的 c 代码,而且它的使用形式和 C 的形式基本一致,而且更加 OOP,所以本文就简单得做个对比。

简单看看缓存一致性的几种做法

缓存是个好东西,一个好的缓存算法可以让我们系统的吞吐能力轻松上升一个到两个数量级。当只有唯一的操作缓存的接口时,一切都很简单;但是,一旦有两个或以上的操作接口时,事情就会变得复杂,其核心的问题就是缓存会被失效,这个时候该怎么处理是个值得探究的问题,而我尝试以我的了解,以 Python 代码为示例,做一下小结。

Python syslog 浅谈

最近在写一些命令行守护程序,类似于 Linux 下的一些常运行的程序,除了用到一些常见的IO 以及进程间通信的内容之外,还尝试了一下 Unix 系列的 syslog,在尝试过程中,发现 Python 已经在 logging 模块中很方便得集成了 syslog 的功能,很是方便;但同时,Python 的内置库中也提供了 syslog 的支持,所以,我就对这两种方式都进行一个介绍和总结。

聊聊 Python 中的内存管理

虽然在 Python 中垃圾回收不那么引人注意,但是除了垃圾回收之外,Python 的内存管理还是有很多有意思的点值得我们去关注,而我作为一个小学生对这方面也是有些兴趣,所以先写篇博客热身热身,为接下来进一步了解铺垫铺垫

TCP 快速打开

提到 TCP,我们可能印象最深的莫过于三次握手和四次挥手,虽然这很经典,但是,这却引发了一些问题,其中之一就是资源浪费。为了提供资源的使用率,学术界和工业界的前辈们都作出或者正在作很大的努力,而且也产出了不少优秀的成果,本文介绍的 TCP 快速打开就是其中的一种,虽然不深,但是希望能给大家一点启发

Linux 实现定时器

在后台开发中,定时器是我们基本上避不开的一个概念,无论是用什么语言,都会遇到需要自行定时任务的情形。虽然有很多强大的第三方组件可以帮助我们完成,但是有时开发一些不是很大的系统,那么上这么组件有点显得杀鸡用牛刀的感觉,所以,这里我对 Linux 下实现定时器的一些知识进行了一点总结。