分布式
文章平均质量分 77
豆奶快攻
这个作者很懒,什么都没留下…
展开
-
如何保证Kafka不丢失消息
丢失消息有 3 种不同的情况,针对每一种情况有不同的解决方案。原创 2024-01-15 11:43:18 · 1119 阅读 · 1 评论 -
Redis 内存淘汰策略有哪些?过期数据如何删除?
Redis 在面试中出现的概率非常大,毕竟后端项目如果用到分布式缓存的话,一般用的都是 Redis。目前,还没有出现一个能够取代 Redis 的分布式缓存解决方案。这篇文章中,我会分享几道 Redis 内存管理相关的问题,都很常见。不论是面试还是项目中用到 Redis,都能有帮助。原创 2024-01-10 15:23:12 · 988 阅读 · 2 评论 -
kafka除了作为消息队列还能做什么?
与其之前的竞品不同,Kafka 不仅仅是一个消息队列,它还是一个适用于各种情况的开源事件流平台。Kafka 传输原始点击流数据,Flink 对其进行处理,而模型训练则消耗数据湖中的汇总数据。不同的是,指标是结构化数据,而日志是非结构化文本。例如,在下图中,事务日志被发送到 Kafka,并被 ElasticSearch、Redis 和二级数据库摄取。如上图所示,为了升级订单服务,我们更新了旧订单服务,以便从 Kafka 中消费输入,并将结果写入 ORDER Topic。如果它们完全相同,新服务就会通过测试。原创 2024-01-11 15:12:17 · 705 阅读 · 0 评论 -
数据库的分库分表
数据切分关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到 1000W 或 100G 以后,由于查询维度较多,即使添加从库、优化索引,做很多操作时性能仍下降严重。此时就要考虑对其进行切分了,切分的目的就在于减少数据库的负担,缩短查询时间。数据库分布式核心内容无非就是数据切分(Sharding),以及切分后对数据的定...原创 2020-02-26 01:36:50 · 512 阅读 · 0 评论 -
系统如何支撑高并发
一道面试题的背景引入大多数同学被问到这个问题压根儿没什么思路去回答,不知道从什么地方说起,其实本质就是没经历过一些真正有高并发系统的锤炼罢了。因为没有过相关的项目经历,所以就没法从真实的自身体会和经验中提炼出一套回答,然后系统的阐述出来自己负责过的系统如何支撑高并发的。所以,这篇文章就从这个角度切入来简单说说这个问题,用一个最简单的思路来回答,大致如何应对。...原创 2020-02-22 22:35:46 · 630 阅读 · 0 评论 -
SnowFlake 分布式 id 生成器
在高并发或者分表分库情况下怎么保证数据id的幂等性呢?经常用到的解决方案有以下几种。微软公司通用唯一识别码(UUID)Twitter公司雪花算法(SnowFlake)基于数据库的id自增对id进行缓存这里我们要谈到snowflake算法了snowflake是Twitter开源的分布式ID生成算法,结果是一个long型的ID。其核心思想是:使用41bit作为毫秒数,10...原创 2020-02-05 20:48:11 · 2104 阅读 · 0 评论 -
理解大型分布式网站你必须知道这些概念
1. I/O优化增加缓存,减少磁盘的访问次数。优化磁盘的管理系统,设计最优的磁盘方式策略,以及磁盘的寻址策略,这是在底层操作系统层面考虑的。设计合理的磁盘存储数据块,以及访问这些数据库的策略,这是在应用层面考虑的。例如,我们可以给存放的数据设计索引,通过寻址索引来加快和减少磁盘的访问量,还可以采用异步和非阻塞的方式加快磁盘的访问速度。应用合理的RAID策略提升磁盘I/O。2. Web前端调优减少网...原创 2018-04-12 10:10:57 · 233 阅读 · 0 评论