常见排序算法总结和 Go 标准库排序源码分析

前言

排序算法是数组相关算法的基础知识之一,它们的经典思想可以用于很多算法之中。这里详细介绍了 7 个最常见排序算法,并用 Go 做了实现,同时对比这几种算法的时间复杂度、空间复杂度和稳定性 。最后是对 Go 标准库排序实现的源码阅读和分析, 来理解官方如何通过将以上排序算法进行组合提高性能,完成生产环境的排序实践。

如何校验 email 地址以提高邮件送达率

背景

在发送 email 的时候,如果邮件收件人是一个不存在的 email 账号、或者收件人账号存在问题、收件箱无法接收 email, 那么 email server 就会将该无法接收的信息响应回来, 这种情况称之为 bounce email,对应的衡量指标是 bounce 率。bounce email 是影响邮件送达率(email delivery rate)的一个重要因素。根据 Sendgrid 统计结果, bounce 率在 5% 以上,送达率为71%;但如果 bounce 率在2%或以下,平均送达率可以提高到91%。

高并发下的流量控制

背景

目前在做一个消息中台,提供给业务方各种消息通道能力。我们在系统设计过程中,除了有对业务方在使用时做 Quota 限制;也有对请求做流量控制(几w+ QPS),防止并发流量上来时打垮服务。下面是个人在调研流量控制方案的一些梳理和总结。