NOSQL
文章平均质量分 87
算法小生Đ
算法小生
展开
-
21.Redis系列之缓存穿透、击穿、雪崩、预热、更新、降级
本文学习Redis应用问题中经典的缓存穿透、缓存击穿、缓存雪崩问题及常用的解决办法。原创 2022-12-01 20:38:40 · 276 阅读 · 0 评论 -
19.Redis系列之高可用哨兵与集群模式
监控功能:哨兵监测主节点与从节点是否正常通知功能:哨兵可以通知系统管理员或其他程序某节点发生异常自动故障迁移:主节点宕机后,可自动实现主从切换配置提供者:客户端询问哨兵已获取主节点地址。原创 2022-11-23 09:41:02 · 294 阅读 · 0 评论 -
18.Redis系列之AOF方式持久化
本文学习redis7两大持久化技术之一:AOF(Append Only File)日志追加方式持久化备份与还原,重写以及AOF方式的优缺点。原创 2022-11-19 12:44:24 · 664 阅读 · 0 评论 -
17.Redis系列之快照RDB方式持久化
fork()出来的子进程共享主进程的物理空间,当主进程有内存写入操作时,read-only内存页发生中断,将触发异常的内存页复制一份(其余的页还是共享主进程的)从而主进程可写,而子进程继续进行老数据的RDB快照。原创 2022-11-18 20:53:18 · 670 阅读 · 0 评论 -
16.Redis系列之Redisson分布式锁原理
本文学习Redisson分布式锁的原理以及优缺点。原创 2022-11-15 22:35:33 · 504 阅读 · 0 评论 -
15.Redis系列之事务和锁机制及Redisson分布式锁实现秒杀
本文学习采用redis官方推荐java客户端Redisson分布式锁实现秒杀,从而避免超卖、库存遗留、连接超时问题所有代码已提交至https://gitee.com/SJshenjian/blog-code/tree/master/src/main/java/online/shenjian/redis2. 新增RedissonConfig配置3. 新增controller与service4. 秒杀核心代码逻辑5. jmeter压力测试SecKill.jmx与userId.csv也已上传到代码原创 2022-11-13 09:41:48 · 1304 阅读 · 0 评论 -
13.Redis系列之布隆过滤器
布隆过滤器(Bloom Filter)是一个高空间利用率的概率性数据结构,由二进制向量(即位数组)和一系列随机映射函数(即哈希函数)两部分组成。布隆过滤器使用exists()来判断某个元素是否存在于自身结构中。当布隆过滤器判定某个值存在时,其实这个值只是有可能存在;当它说某个值不存在时,那这个值肯定不存在,这个误判概率大约在 1% 左右。添加元素原理布隆过滤器主要由位数组和一系列 hash 函数构成,其中位数组的初始状态都为 0。原创 2022-11-08 19:57:39 · 1902 阅读 · 0 评论 -
11.Redis系列之Stream消息队列及K8S部署单节点
Stream实际上是一个具有消息发布/订阅功能的组件,也就常说的消息队列。其实这种类似于 broker/consumer(生产者/消费者)的数据结构很常见,比如 RabbitMQ 消息中间件、 Kafka 分布式消息系统等,而 Redis Stream 正是借鉴了 Kafaka 系统。优点: Stream 除了拥有很高的性能和内存利用率外, 它最大的特点就是提供了消息的持久化存储,以及主从复制功能,从而解决了网络断开、Redis 宕机情况下,消息丢失的问题,即便是重启 Redis,存储的内容也会存在。原创 2022-11-05 15:31:54 · 790 阅读 · 0 评论 -
2.Redis系列之特殊数据类型
Redis中提供了bitmaps实现对位的操作,应用在统计月活跃用户数【活跃用户量千万级别】时比set能够明显的提高内存使用率我们可以把bitmaps想象为一个,数组每个单元智能存储0和1,数字的下标在bitmaps中称为偏移量offset。原创 2022-11-03 20:15:32 · 594 阅读 · 0 评论 -
1.Redis系列之Docker本地部署及基本数据类型
本文介绍采用docker-compose快速部署redis7,供学习使用。原创 2022-10-29 15:36:52 · 809 阅读 · 0 评论 -
8. ElasticSearch系列之批量插入与更新
本文介绍工作中Python版常用的高效ES批量插入、更新数据方式。原创 2022-10-21 21:08:19 · 3509 阅读 · 0 评论 -
7.ElasticSearch系列之深入聚合分析
深入理解聚合分析原理及精确性问题。原创 2022-10-20 21:13:05 · 426 阅读 · 0 评论 -
6.ElasticSearch系列之分布式特性及分布式搜索机制(三)
【代码】14.ElasticSearch系列之分布式特性及分布式搜索机制(三)原创 2022-10-20 21:09:37 · 412 阅读 · 0 评论 -
5.ElasticSearch系列之分布式特性及分布式搜索机制(二)
ES Flush & Lucene Commit执行过程:欢迎关注公众号或。原创 2022-10-20 20:57:54 · 202 阅读 · 0 评论 -
4.ElasticSearch系列之分布式特性及分布式搜索机制(一)
文档会存储在具体的某个主分片和副本分片上,例如文档1,存储在P0和R0上。文档到分片的映射算法。文档到分片的路由算法。原创 2022-10-20 20:55:36 · 188 阅读 · 0 评论 -
3.ElasticSearch系列之深入搜索
Disjunction Max Query: 将任何与任一查询匹配的文档做为返回结果。采用字段上最匹配的评分作为最终评分返回。原创 2022-10-20 20:48:56 · 313 阅读 · 0 评论 -
3.ElasticSearch系列之分词、索引、聚合
并按照docker-compose.yml中挂载plugins目录重启即可。欢迎关注公众号算法小生或沈健的技术博客shenjian.online。于ES安装目录plugins下并重命名为ik重启ES即可。对于docker-compose方式部署,可参考。分词器Analyzer由三部分组成。原创 2022-10-18 20:24:54 · 294 阅读 · 0 评论 -
2.ElasticSearch系列之基本概念与操作
假设你启动了集群,如果没有多台机器,可以参考。索引是文档的容器,是一类文档的集合。原创 2022-10-18 20:22:06 · 260 阅读 · 0 评论 -
1.ElasticSearch系列之集群部署及权限认证
ES安装目录 /usr/local数据目录 /home/elasticsearch/data日志目录 /home/elasticsearch/logs配置目录 /home/elasticsearch/config。原创 2022-10-18 20:19:22 · 590 阅读 · 0 评论 -
13.MongoDB系列之分片
分片的目标之一是由多个分片组成的集群对应用程序来说就像是一台服务器。为了此实现,需要在分片前面运行一个或多个称为mongos的路由进程。路由服务器哪些数据在哪些分片上,可以将请求转发到适当的分片。如果有对请求的响应,路由服务器会收集他们,并在必要时进行合并,然后在发送给应用程序。可以看到,这个集合被分为了13个块,其中6个块在分片one-min-shards-rs0上,7个块在分片one-min-shards-rs1上。通常来说,如果查询中没有使用片键,mongos就不得不将查询发送到每个分片上。原创 2022-10-17 19:53:03 · 948 阅读 · 0 评论 -
11.MongoDB系列之连接副本集与副本集管理
var config = rs . config() // 设置节点标签表示北京、上海数据中心 config . members [ 0 ] . tags = {"dc" : "bj" } // 第一次时设置{} config . settings = {} // 2表示在2个分组中,每组至少写入一台服务器 config . settings . getLastErrorModes = {现在可以在可操作中应用这条规则。原创 2022-10-17 19:51:19 · 1198 阅读 · 0 评论 -
8.MongoDB系列之创建副本集
在MongoDB中,创建副本集后就可以使用复制功能了,副本集是一组服务器,其中一个是用于处理写操作的主节点,还有多个用于保存主节点的数据副本的从节点,如果主节点崩溃了,则从节点会从中选举中一个新的主节点。原创 2022-10-16 13:02:19 · 229 阅读 · 0 评论 -
7.MongoDB系列之聚合框架、特殊索引和集合类型
/ 先插入文档 db . blog . insert({// _id为分组的字段,多个可以{title: '$title', 'comments': '$comments'} // num名称自定义,可以$sum求和 $avg平均等 db . getCollection('blog') . aggregate([ {{原创 2022-10-17 19:48:23 · 275 阅读 · 0 评论 -
4.MongoDB系列之索引
对于多条件查询,复合查询用处很大,比如上面索引会严格按照age排序在按username排序,所以按照索引键对文档排序速度会快的多。原创 2022-10-16 12:34:37 · 604 阅读 · 0 评论 -
2.MongoDB系列之创建更新删除查询文档
来自公众号《算法小生》、沈健的技术博客shenjian.online。原创 2022-10-16 12:28:32 · 410 阅读 · 0 评论