02 2022 档案

摘要:锁的粒度 锁的粒度越小 对业务影响的越小 双写模式 写数据库是一并将缓存进行更新 但在高并发下会出现一点问题 这里有两个请求 首先请求一进去了 将数据修改完毕 因为一些原因卡住了 这时候请求二进入 将数据修改哭数据修改完毕顺便将缓存修改完了 这时候请求一才将缓存修改完毕 这时候缓存中的数据和数据库中 阅读全文
posted @ 2022-02-24 15:49 RainbowMagic 阅读(56) 评论(0) 推荐(0) 编辑
摘要:环境搭建 导入pom包 <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.16.8</version> </dependency> 创建redisson客户端 根据文档提 阅读全文
posted @ 2022-02-23 10:04 RainbowMagic 阅读(704) 评论(0) 推荐(0) 编辑
摘要:基本原理 所有的服务从redis中插入数据 若插入成功 则表示拿到锁 则可以进行数据库操作 若插入失败 则未拿到锁 则不可以进行插入操作 可以使用redis SET key value [EX seconds] [PX milliseconds] [NX|XX] 命令 EX seconds – 设置 阅读全文
posted @ 2022-02-21 19:19 RainbowMagic 阅读(23) 评论(0) 推荐(0) 编辑
摘要:产生缓存击穿的原因 发生缓存击穿的原因是在高并发场景下 大量请求访问一个已失效数据 频繁访问数据库 导致数据库宕机 解决方案 可以引入本地锁 因为在springboot 容器中的bean都是单例 所以只要锁住当前对象即可 在进行缓存查询时 若发现在缓存中数据不存在 去数据库中查询 在数据库查询时添加 阅读全文
posted @ 2022-02-21 17:25 RainbowMagic 阅读(78) 评论(0) 推荐(0) 编辑
摘要:缓存雪崩 在某一时刻 大量缓存在同一时刻失效 导致大量请求打到数据库中 将数据库打摊 解决方案: 将缓存失效时间随机设置到1-5分钟内 这样就避免了在 一段时间内 缓存数据大量失效 缓存击穿 类似缓存雪崩 不同的是缓存穿透是由单个数据失效 高并发场景下 大量请求打到数据库中 导致数据库宕机 解决方案 阅读全文
posted @ 2022-02-21 10:36 RainbowMagic 阅读(25) 评论(0) 推荐(0) 编辑
摘要:缓存的访问流程 redis中查询缓存数据 若不存在则进行数据库查询并将缓存数据存入redis中 若存在在直接进行放回 引入缓存 首先导入spring-data-redis的pom包 <dependency> <groupId>org.springframework.boot</groupId> <a 阅读全文
posted @ 2022-02-21 10:05 RainbowMagic 阅读(25) 评论(0) 推荐(0) 编辑
摘要:缓存概述 为什么要使用缓存 因为系统已经无法从优化业务代码的角度去优化系统了 为了提高系统的性能 可以将对数据一直性不高和不会频繁修改的数据存入缓存中 避免频繁访问数据库 以此来优化性能 缓存使用流程 首先去缓存中查询如果没有再从数据库中查询并保存至缓存中 如果有直接返回 本地缓存 可以在项目中新建 阅读全文
posted @ 2022-02-18 11:34 RainbowMagic 阅读(93) 评论(0) 推荐(0) 编辑
摘要:为什么要进行压力测试 为了找出系统中最高的瓶颈 使系统稳定运行 未来找出一些错误 如并非和内存泄漏 产生内存泄漏的原因是系统中new了大量对象而未进行复用 性能指标 响应时间: 客户端发起请求 服务端响应所花费的时间 tps: 每秒所处理的交易数 所谓的交易数可以理解为一个业务功能 如下订单, 下订 阅读全文
posted @ 2022-02-16 14:25 RainbowMagic 阅读(115) 评论(0) 推荐(0) 编辑
摘要:1. nginx配置文件的组成 nginx 由以下几部分组成 2. nginx 反向代理的使用 proxy_pass指令可以根据规则代理到proxy_pass后的url地址 server_name 用于定义哪些url使用此规则 将gulimaill.com 下所有请求进行代理 负载均衡语法如下 up 阅读全文
posted @ 2022-02-15 16:42 RainbowMagic 阅读(51) 评论(0) 推荐(0) 编辑
摘要:微服务项目部署 将静态资源部署到nginx中 以减轻微服务的并发压力 根据nginx反向代理 将请求转发到网关中 这样做的好处是增强了安全性 避免暴露网关接口和减轻微服务的压力 渲染首页 由以下操作: 导入thymeleaf模板引擎 关闭thymeleaf cache并导入静态资源和html 静态资 阅读全文
posted @ 2022-02-15 15:46 RainbowMagic 阅读(334) 评论(0) 推荐(0) 编辑
摘要:一. 业务思路 根据es mapping创建java entity 根据spuId 查询到sku列表 根据查询到的sku列表 将sku值映射到 第一步创建的java entity中 设置商品热度 热度服务hotScore 先初始化为0 之后再拓展 第三步查询到的sku中有保存brandId 根据br 阅读全文
posted @ 2022-02-12 23:28 RainbowMagic 阅读(113) 评论(0) 推荐(0) 编辑
摘要:有两种存储方式: 方式一 将属性冗余字段一并保存 { "spuId": xxx, "skuId": xxx, "xxxx基本属性": "", "attrs": { "属性1"; "xxx", "属性2": "xxx" } } 方式二: 将冗余字段接偶 { "spuId": xxx, "skuId": 阅读全文
posted @ 2022-02-08 15:21 RainbowMagic 阅读(180) 评论(0) 推荐(0) 编辑
摘要:进行检索 如文档所示 SearchResponse<Product> search = client.search(s -> s .index("products") .query(q -> q .term(t -> t .field("name") .value(v -> v.stringValu 阅读全文
posted @ 2022-02-06 10:59 RainbowMagic 阅读(239) 评论(0) 推荐(0) 编辑
摘要:根据文档将maven依赖导入 因为spring boot web导入过jackson了 所以jackson可以不用导入 <dependencies> <dependency> <groupId>co.elastic.clients</groupId> <artifactId>elasticsearc 阅读全文
posted @ 2022-02-06 10:11 RainbowMagic 阅读(117) 评论(0) 推荐(0) 编辑
摘要:解决方式: 查看包名为: jakarta.json.spi.JsonProvider 由此可知jakarta.json-api依赖的问题 右键进入source 重新导入这个包问题解决 阅读全文
posted @ 2022-02-05 11:41 RainbowMagic 阅读(2247) 评论(0) 推荐(0) 编辑
摘要:根据某种规则 将搜索后的结果进行聚合 语法 "aggs": { "聚合名称": { "规则": { } } } 比如 GET bank/_search { "query": { "match_all": {} }, "aggs": { "age_term": { "terms": { "field" 阅读全文
posted @ 2022-02-04 21:41 RainbowMagic 阅读(318) 评论(0) 推荐(0) 编辑
摘要:首先安装一个web服务器 然后在nginx中新建一个目录和文件用于存储自定义分词 然后启动web服务器即可 进入elasticsearch-7.16.3/plugins/ik/config目录 编辑 IKAnalyzer.cfg.xml 根据注释内容填写即可 <entry key="remote_e 阅读全文
posted @ 2022-02-04 20:20 RainbowMagic 阅读(32) 评论(0) 推荐(0) 编辑
摘要:打开文档 根据文档下载ik分词器的版本 下载解压到elasticsearch的plugin目录即可 然后调用elasticsearch-plugin list 可以查看已安装插件 发送请求查看ik分词器是否安装成功 POST _analyze { "analyzer": "ik_max_word", 阅读全文
posted @ 2022-02-03 00:59 RainbowMagic 阅读(30) 评论(0) 推荐(0) 编辑
摘要:mapping 在es7及以上 es删除每个 索引拥有多个类型 原因是索引中不同类型中相同字段名在检索时会发生冲突 使检索效率下降 所以取消映射类型 一个索引值可以拥有一个映射 数据类型 借鉴于: https://www.cnblogs.com/wupeixuan/p/12514843.html 核 阅读全文
posted @ 2022-02-02 23:28 RainbowMagic 阅读(167) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示