使用nginx的负载均衡机制实现用户无感更新服务

前言

用户请求的转发是接口服务在部署时必须要做的一步。

请求转发的步骤大约分为如下几步:

  1. 域名解析到转发服务器
  2. 转发服务器会根据权重(weight)、备用(backup)配置转发到统一网关
  3. 如果统一网关存在灰度的配置,需要根据身份或者头信息过滤请求
  4. 转发到具体的业务服务

目前市面上优秀的请求转发有很多种,比如:NginxF5KongTengine等,其中Tengine是阿里巴巴基于Nginx进行封装,我们本章的内容基于Nginx进行讲解,我们先来准备下nginx的测试环境。

阅读更多

使用Gitbook创建文档并导出PDF

导出PDF的方式有很多种,之前使用过马克飞象的导出功能,不过只是简单的导出并不能添加目录,因为源文件是markdown编写的,经过筛选后采用了gitbook的方式进行编写文档并且使用gitbook pdf .的方式导出为PDF文件。

阅读更多

记一次操蛋的方案降级(云上冷热分离的坎坷之路)

系统的数据,就是公司的生命。哪怕是狗屎,我们也要将它冷冻起来冰封以备后用。垃圾的产品设计就比较让人费解,会时不时从冰柜中将屎取出,想要品尝其中残留的味道。
不过这其中,还是有些有价值的需求。这种情况,就需要将数据进行冷热分离,对数据进行隔离。不至于让一颗老鼠屎,坏了一锅粥。

阅读更多

聊聊缓存淘汰算法-LRU 实现原理

我们常用缓存提升数据查询速度,由于缓存容量有限,当缓存容量到达上限,就需要删除部分数据挪出空间,这样新数据才可以添加进来。缓存数据不能随机删除,一般情况下我们需要根据某种算法删除缓存数据。常用淘汰算法有 LRU,LFU,FIFO,这篇文章我们聊聊 LRU 算法。

阅读更多