随笔分类 - --- 谷粒商城
摘要:1、定时任务 1)cron表达式 2)SpringBoot整合corn表达式做定时任务
阅读全文
摘要:1、加密 2、公钥、私钥、加密、签名、验签 1)公钥、私钥 2)加密和数字签名
阅读全文
摘要:1、场景: 比如未付款订单,超过一定时间后,系统自动取消订单,并释放占用物品 2、上述场景的解决方案: 1)spring schedule的定时任务轮询数据库 缺点:消耗系统内存,增加数据库压力,存在较大的时间误差 (例如如果订单30分钟未支付时取消订单,且定时任务30分钟执行一次,那么一个订单最晚
阅读全文
摘要:1、什么是接口幂等性 接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用;比如说支付场景,用户购买了商品支付扣款成功,但是返回结果的时候网络异常,此时钱已经扣了,用户再次点击按钮,此时会进行第二次扣款,返回结果成功,用户查询余额返发现多扣钱了,流水
阅读全文
摘要:1、feign远程调用导致请求头丢失问题 如何解决? 加上feign远程调用的请求拦截器 /** * @author houChen * @date 2022/2/3 17:20 * @Description: 谷粒商城feign请求的相关配置 */ @Configuration public cl
阅读全文
摘要:1、RabbitMQ的作用 2、概述 3、RabbitMQ的概念 4、Docker安装RabbitMQ 5、RabbitMQ中的Exchange类型 6、SpringBoot整合RabbitMQ 1)pom文件中引入spring-boot-starter-amqp 7、RabbitMQ消息确认机制
阅读全文
摘要:一、背景 上篇博客,使用微博社交登录谷粒商城后,将用户信息保存在session中,此时进入到谷粒商城的任何页面都需要能够取到用户信息, 谷粒商城首页(gulimall.com/index.html), 首页搜索商品后搜索到的商品列表(search.gulimall.com/index.html) 二
阅读全文
摘要:大致流程如下图所述 前置工作 去微博开放平台上(https://open.weibo.com/)申请网站接入 审核通过后会给你的应用分配 App Key 和 App Secret (后续根据授权码获取access_token需要用到这个东西) 填写用户授权成功后的回调地址 1、点击社交登录按钮 社交
阅读全文
摘要:在保存用户密码时,不能以明文的方式将密码保存在数据库中,这时就需要将密码进行加密后存储 MD5: Message Digest aigorithm 5:信息摘要算法 压缩性:任意长度的数据,算出的MD5长度都是固定的 容易计算: 从原数据计算出MD5值很容易 抗修改性:对原数据进行任何改动,哪怕只修
阅读全文
摘要:增加此配置后,就不需要在controller中手动写路径到视图的映射了
阅读全文
摘要:1、初始化线程的四种方式 继承Thread 实现Runnable接口 实现Callable接口 + FutrueTask(可以拿到结果处理异常) 线程池 方式1和方式2:主进程无法获取线程的运算结果 方式3:主进程可以获取线程的运算结果,但是不利于控制服务器中的线程资源,会导致服务器资源耗尽 方式4
阅读全文
摘要:查询语句:包含模糊匹配,过滤(包括属性,分类,品牌,价格区间,库存),排序。分页、高亮、聚合这个查询语句只是为了方便自己查找,记录下 ES 的DSL语法GET product/_search { "query": { "bool": { "must": [ { "match": { "skuTitle": "iPhone" } } ], "filter": [ { "term": { "catal
阅读全文
摘要:1、简介 Spring 从 3.1 开始定义了 org.springframework.cache.Cache 和 org.springframework.cache.CacheManager 接口来统一不同的缓存技术; 并支持使用 JCache(JSR-107)注解简化我们开发 Cache 接口为
阅读全文
摘要:1、双写模式 2、失效模式 缺点:在删除缓存前,有请求读到缓存,那么读取到的数据就不是最新的 3、缓存数据一致性解决方案
阅读全文
摘要:1、加锁解决缓存击穿问题 1)本地锁: 使用同步代码块 public Map<String,List<Catalog2Vo>> getCatalogJsonFromDb() { //只要是同一把锁,就能锁住使用这个锁的所有线程 //synchronized (this) SpringBoot项目中所
阅读全文
摘要:1、高并发下缓存失效问题 — 缓存穿透 2、缓存雪崩 3、缓存击穿
阅读全文
摘要:在配置文件中配置: spring jackson: date-format: yyyy-MM-dd HH:mm:ss 就可以将返回实体中的date类型的属性,转换成如上格式的字符串
阅读全文
摘要:①、进入git bash,使用 ssh-keygen -t rsa -C “xxx@xxxx.com”命令,连续三次回车生成秘钥 ②、使用命令 cat ~/.ssh/id_rsa.pub 查看生成的秘钥 ③、将生成的ssh key拷贝到gitee的 SSH 公钥中 ④、使用 ssh -T git@g
阅读全文