本篇主要内容如下:本地锁的问题首先我们来说下本地锁的问题,以此来引申出分布式锁:假设原本有一个微服务被拆分成了四个微服务。前端请求进来时,会被转发到不同的微服务。假如前端接收了 10 W 个请求,每个微服务接收 2.5 W 个请求,假如缓存失效了,每个微服务在访问数据库时加锁,通过锁(synchronzied 或 lock)来锁住自己的线程资源,从而防止缓存击穿。这是一种本地加锁的方式,在分...
前不久手欠,不小心将一台老服务器重启了,当初部署这台服务器的运维前后连着走了2位,也没交接文档,没办法自己挖的坑,含着泪也要填了,摸索着重启了各种服务,最...
今天,朋友的朋友说他们外包的项目,出了问题,后端使用PHP写的接口,要找我修复,如果可以,以后提供长期的维护,因为他们公司没有开发,我就接了下来。结果,着实有点坑到我了,倒不是项目复杂,问题棘手,而是当时做项目的时候,外包只给了他们Ios端代码,后端PHP项目代码,没给他们,也没有交接文档、部署文档等等,上了运行的服务器一看,因为不敢乱来,疯狂的用 whereis 或者 lsof -i 查找...
背景线上阿里云 redis 内存使用持续飙升,短时间内爆了好几次,一开始清空了些存了一百多万key的库,但内存缓慢释放了一定程度还是没什么用,仍然在警戒线...
在Redis中,我们可以将Set类型看作为没有排序的字符集合,和List类型一样,我们也可以在该类型的数据值上执行添加、删除或判断某一元素是否存在等操作。需要说明的是,这些操作的时间复杂度为O(1),即常量时间内完成次操作。Set可包含的最大元素数量是4294967295。