eBay 的员工 Venkatesh Ramaswamy 于 2017 年 1 月发表了一篇文章,文章发表在 eBay 技术博客上,文章主要讲了针对购物车缓存数据丢失情况,eBay 思考的三种解决方案,以及最终采用的解决方案。背景eBay 的购物车信息存储依赖于两个不同的数据存储介质,MongoDB 存储用户完整的购物车信息,Oracle 仅存储购物车的大致 ......
294
0
0
2022-05-21
系统命令shutdown 正常关闭服务器redis-server 启动服务器redis-cli 客户端连接服务器flushall 删库跑路,一般不这么做REDIS 持久化 RDB AOF区别RDB:[Redis Database] 在指定时间间隔把内存中的数据快照写入磁盘,之后可以备份快照,或者复制到其他服务器创建相同副本,或者服务器重启也会用到这个快照恢复 ......
341
0
0
2022-05-19
About Cache作后端开发的同学,缓存是必备技能。这是你不需要花费太多的精力就能显著提升服务性能的灵丹妙药。前提是你得知道如何使用它,这样才能够最大限度发挥它的功效,并抑制其副作用。本文将介绍最如何正确的添加和更新缓存。开始之前这部分将介绍在开始加缓存之前我们必须要做的事情。这步非常重要,如果没弄好,很有可能加了缓存反而不如不加。为什么要用缓存?对于一 ......
352
0
0
2022-05-19
Redis为什么这么快内存数据库,所有的操作都是在内存中完成,内存的访问速度很快。使用了高效的数据结构。Redis底层数据结构一共有 6 种,分别是简单动态字符串、双向链表、压缩列表、哈希表、跳表和整数数组。它们和数据类型的对应关系如下图所示:Redis全局哈希表为了实现从键到值的快速访问,Redis使用了哈希表来保存所有的键值对。一个哈希表,其实就是一个数 ......
359
0
0
2022-05-13
O!NO!缓存又挂了,redis不给力啊;哎哟我去,内存爆了?DBA干啥去了,怎么老是挂啊?你的缓存是不是经常爆掉呢?是不是讨厌DBA经常叨叨叨的?跟唐僧一个样?如果是,那么可能是你还没玩会redis哦,为什么?因为缓存是用来对抗高并发热点数据请求的,而你可能将大量的长时间不使用的数据也放在里面了,白白浪费了内存。今天教你一招,解决大量冷点数据白白浪费内存。 ......
514
0
0
2022-04-20
一:缓存——热数据热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用redis缓存,毕竟强大到冒泡的QPS和极强的稳定性不是所有类似工具都有的,而且相比于memcached还提供了丰富的数据类型可以使用,另外,内存中的数据也提供了AOF和RDB等持久化机制可以选择,要冷、热的还是忽冷忽热的都可选。结合具体应用需要注意一下:很多人用sprin ......
373
0
0
2022-04-20
尺有所短,寸有所长,看待一种技术我们不能人云亦云,而是分场景去分析。我们先看看redis吧,redis是一个开源的,基于内存并可持久化的日志型、Key-Value数据库,提供多种语言的API,是对传统关系型数据库的重要补充。redis的数据类型主要有以下几种:string(字符串)hash(哈希)list(列表)set(集合)zset(sorted set: ......
432
0
0
2022-04-20
Redis是什么Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis 是一个高性能的key-value数据库。Redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/ ......
358
0
0
2022-04-20
1:缓存技术和框架的重要性互联网的一些高并发,高性能的项目和系统中,缓存技术是起着功不可没的作用。缓存不仅仅是key-value的简单存取,它在具体的业务场景中,还是很复杂的,需要很强的架构设计能力。我曾经就遇到过因为缓存架构设计不到位,导致了系统崩溃的案例。2:缓存的技术方案分类1)是做实时性比较高的那块数据,比如说库存,销量之类的这种数据,我们采取的实时 ......
306
0
0
2022-04-19
背景秒杀活动是绝大部分电商选择的低价促销,推广品牌的方式。不仅可以给平台带来用户量,还可以提高平台知名度。一个好的秒杀系统,可以提高平台系统的稳定性和公平性,获得更好的用户体验,提升平台的口碑,从而提升秒杀活动的最大价值。本次主要讨论阿里云云数据库Redis缓存设计高并发的秒杀系统。秒杀的特征秒杀活动对稀缺或者特价的商品进行定时,定量售卖,吸引成大量的消费者 ......
439
0
0
2022-04-18
作者 | 初一责编 | 胡巍巍不管你是从事Python、Java、Go、PHP、Ruby等等......Redis都应该是一个比较熟悉的中间件。而大部分经常写业务代码的程序员,实际工作中或许只用到了set value、GetValue两个操作,而对Redis缺乏一个整体的认识。今天就来对Redis的常见问题做一个总结。希望能够帮助到大家。1.Redis是什么 ......
302
0
0
2022-04-18
1 分组聚合的原因SQL中分组函数和聚合函数之前的文章已经介绍过,单说这两个函数有可能比较好理解,分组函数就是group by,聚合函数就是COUNT、MAX、MIN、AVG、SUM。拿上图中的数据进行解释,假设按照product_type这个字段进行分组,分组之后结果如下图。SELECT product_type from product group by ......
298
0
0
2022-04-17
Previously前两篇文章(缓存稳定性 和 缓存正确性)跟大家讨论了缓存的『稳定性』和『正确性』,缓存常见问题还剩下『可观测性』和『规范落地&工具建设』稳定性正确性可观测性规范落地和工具建设上周文章发完之后,很多同学对我留的问题进行了深入的讨论,我相信经过深度的思考,会让你对缓存一致性的理解更加深刻!首先,各个 Go 群和 go-zero 群里有 ......
220
0
0
2022-04-17
我是面试官现在很多面试官还是喜欢问:“在你的项目里面有没有用过缓存?redis还是memcached?”,如果你连缓存都没有用过,那么你直接就被pass了。那么有的网友会说:“我知道如何用redis实现分布式锁”,面对这个回答面试官肯定很喜欢,瞬间对你产生了好感,如果你再回答的详细一点,拿到offer的概率就更大了。那么,你知道如何利用redis实现分布式锁 ......
314
0
0
2022-04-16
面试题如何保证缓存与数据库的双写一致性?面试官心理分析你只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题?面试题剖析一般来说,如果允许缓存可以稍微的跟数据库偶尔有不一致的情况,也就是说如果你的系统不是严格要求 “缓存+数据库” 必须保持一致性的话,最好不要做这个方案,即:读请求和写请求串行化 ......
285
0
0
2022-04-15