PHP中编码检测

背景:

  • 编码问题在Python同学眼中应该是老生常谈的,本文谈下PHP中常见的编码相关检测方法及局限
  • 数据在写入时决定了编码形式,而由于历史变更可能存在历史数据中写入编码不同
  • 编码检测的目的:检测数据的编码形式,正确解码及界面展示

阿里云多种消息服务的差异及选型

背景:消息中间件日益在应用系统中必不可少,阿里云提供多种消息MessageQueue服务,有历史原因也有产品线不统一或尽可能提供用户更多选择的原因。笔者根据实际使用,总结下阿里云消息服务的历史、不同消息服务的差异、最后给出推荐选用原则。

缓存系统中面临的雪崩/穿透/一致性问题

There are only two hard things in Computer Science: cache invalidation and naming things.
计算机科学中有两件难事:缓存失效和命名
– Phil Karlton

From Martin Fowler : TwoHardThings

缓存系统一定程度上极大提升系统并发能力,但同样也增加额外技术考虑因素,下面针对缓存系统设计与使用中面临的常见问题展开。

  • 缓存应用的典型场景
  • 缓存雪崩
  • 缓存穿透
  • 缓存更新与数据一致性