分类:实战

30
Dec

Curl 请求引发一场血案:利用 Redis 实现熔断器

在前段时间,我负责的推送中台出现了一个非常严重的 Bug,差点造成线上服务宕机。我简单来描述一下当时的场景。我们使用个推来来推送我们的 APP 通知,以及用户画像,用户分析等等。每一次在 app 启动都会访问一个接口来判断用户信息,然...
22
Aug

PHP 利用 Redis Sorted Set的延时队列

延迟队列是我们在业务中经常遇到的场景,例如订单过期,定时发布,定时推送等等。在 Zset里面,每一个成员都有一个所谓的分数:score,把当前时间作为分数,因为 Zset 是有序的,时间越小的排名越靠前。所以使用Zset作为延时队列就...
20
Aug

PHP 利用 Redis List 数据结构实现消息队列

Redis 本身是用来做缓存的,但是其中有一些特性是我们可以用来完成消息队列的功能,比如如果能够容忍数据的丢失,并且持久化方面要求不是很高的场景下完成任务的分布式处理。队列的基本实现Redis列表是简单的字符串列表,按照插入顺序排序。...
08
Dec

变种的数据中心:实现数据的组合返回

网上有很多数据模式的文章,这里不会按照已经成型的书和文章来进行编写,这样没有任何意义,在应用设计模式的时候一定要根据自己业务和使用的语言来进行编写。在工厂模式中,我们基于商城的案例编写了一个书、狗和酒的工厂案例,在线我们对需求进行一次...