摘要: 一、分布式事务产生得原因: 1.1、数据库分库分表 当数据库单表一年产生的数据超过1000W,那么就要考虑分库分表,具体分库分表的原理在此不做解释,以后有空详细说,简单的说就是原来的一个数据库变成了多个数据库。这时候,如果一个操作既访问01库,又访问02库,而且要保证数据的一致性,那么就要用到分布式 阅读全文
posted @ 2020-10-27 20:49 键盘三个键 阅读(3547) 评论(0) 推荐(0)
摘要: 1、高并发缓存失效问题: 缓存穿透: 指查询一个一定不存在的数据,由于缓存不命中导致去查询数据库,但数据库也无此记录,我们没有将此次查询的null写入缓存,导致这个不存在的数据每次请求都要到存储层进行查询,失去了缓存的意义; 风险:利用不存在的数据进行攻击让数据库压力增大最终崩溃; 解决:对不存在的 阅读全文
posted @ 2020-10-17 16:17 键盘三个键 阅读(1275) 评论(0) 推荐(0)
摘要: 一、基本介绍 ①延时队列(实现定时任务) 场景:比如未付款订单,超过一定时间后,系统自动取消订单并释放占有物品。 常用解决方案: spring的 schedule定时任务轮询数据库:缺点:消耗系统内存、增加了数据库的压力、存在较大的时间误差解决: rabbitmqExchange的消息TTL和死信结 阅读全文
posted @ 2020-10-13 21:06 键盘三个键 阅读(1100) 评论(0) 推荐(0)
摘要: 一、官方文档网址 http://seata.io/zh-cn/docs/overview/what-is-seata.html Seata1.3.0开发组提供的开发文档 二、常见问题 2.1:网址: http://seata.io/zh-cn/docs/overview/faq.html 2.2:在 阅读全文
posted @ 2020-09-28 16:41 键盘三个键 阅读(2562) 评论(0) 推荐(0)
摘要: 一、无异步线程得情况下feign远程调用: 0、登录拦截器: @Component public class LoginUserInterceptor implements HandlerInterceptor { public static ThreadLocal<MemberResVo> log 阅读全文
posted @ 2020-09-05 23:38 键盘三个键 阅读(5308) 评论(0) 推荐(0)
摘要: 一、概述: 大多应用中,可通过消息服务中间件来提升系统异步通信、扩展解耦能力。 1.消息服务中两个重要概念: 消息代理(message broker)和目的地(destination)当消息发送者发送消息以后,将由消息代理接管,消息代理保证消息传递到指定目的地。 2.消息队列主要有两种形式的目的地: 阅读全文
posted @ 2020-09-02 22:23 键盘三个键 阅读(272) 评论(0) 推荐(0)
摘要: 1、代码部分 1.1认证中心代码: 1.1.1Controller @Controller public class LoginController { /** * 当你的redis数据库里面本来存的是字符串数据或者你要存取的数据就是字符串类型数据的时候,那么你就使用StringRedisTempl 阅读全文
posted @ 2020-08-19 12:37 键盘三个键 阅读(438) 评论(1) 推荐(0)
摘要: 1、分布式环境下Session共享问题: 2、几种解决方法 3、通过后端统一存储方法在实际项目中问题的体现: 当session的作用域只限于auth.gulimall.com时,在auth.gulimall.com下登录账号所返回包含用户信息的session无法共享给gulimall.com 当我们 阅读全文
posted @ 2020-08-18 12:24 键盘三个键 阅读(691) 评论(0) 推荐(1)
摘要: 一、参考文档 OAuth2.0授权认证 二、原理: ①概念原理: ②实际操作时的原理图: 三、以POSTMAN为例对链接进行测试 ① 引导需要授权的用户到如下地址(在前端页面链接设置一下URL): URL:https://api.weibo.com/oauth2/authorize?client_i 阅读全文
posted @ 2020-08-16 22:59 键盘三个键 阅读(547) 评论(1) 推荐(2)
摘要: MD5&MD5盐值加密 Message Digest algorithm5,信息摘要算法: 压缩性:任意长度的数据,算出的MD5值长度都是固定的 容易计算:从原数据计算出MD5值很容易 抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别·强抗碰撞:想找到两个不同的数据, 阅读全文
posted @ 2020-08-14 21:36 键盘三个键 阅读(1241) 评论(0) 推荐(0)
摘要: 1、线程池七大参数介绍 (1)corePoolSize:线程池中常驻核心线程数 (2)maximumPoolSize:线程池能够容纳同时执行的最大线程数,此值必须大于等于1 (3)keepAliveTime:多余的空闲线程存活时间。当前线程池数量超过corePoolSize时,当空闲时间到达keep 阅读全文
posted @ 2020-08-13 23:14 键盘三个键 阅读(1091) 评论(0) 推荐(0)
摘要: [root@localhost ~]# docker pull elasticsearch:7.8.0 安装elasticsearch:7.8.0[root@localhost ~]# docker pull kibana:7.8.0 安装安装elasticsearch:7.8.0版本对应的可视化工 阅读全文
posted @ 2020-06-21 12:25 键盘三个键 阅读(565) 评论(0) 推荐(0)
摘要: 阿里云文档:参考文献 更正第三点:用户带着从服务器获取的数据签名和文件上传到OSS,这样做可以保证安全性、减轻服务器负担。 1、操作步骤 ①新建Bucket ②创建后更改跨域设置 这一步是保证跨域请胯下所有post请求都能访问 ③创建AccessKey 2、配置代码 ①参数讲解 String acc 阅读全文
posted @ 2020-06-09 20:54 键盘三个键 阅读(1573) 评论(0) 推荐(0)
摘要: 1、创建枚举自定义错误码以及提示: public enum BizCodeEnume { UNKNOW_EXCEPTION(10000,"系统未知异常"), VALID_EXCEPTION(10001,"参数格式校验失败"); private int code; private String msg 阅读全文
posted @ 2020-06-09 18:26 键盘三个键 阅读(336) 评论(0) 推荐(0)
摘要: 1,@Constraint注解 说到自定义验证类型的注解,那就要说说@Constraint这个官方注解了,我们既然自定义了注解,那么注解的逻辑在哪里处理呢?没错,就是这个@Constraint帮我们处理。 message则是定义错误提示,其取值路径一般是校验注解的全类名,会在配置文间种取出{}中配置 阅读全文
posted @ 2020-06-09 18:03 键盘三个键 阅读(745) 评论(0) 推荐(0)
摘要: 23种设计模式(java版本,图文并茂):http://c.biancheng.net/design_pattern/ 阅读全文
posted @ 2020-05-21 16:58 键盘三个键 阅读(209) 评论(0) 推荐(0)
摘要: (1)nacos官网:https://github.com/alibaba/nacos/releases/tag/1.2.1下载nacos安装包到window本地(后缀为tar.zip) (2)在linux上下载nginx包,linux安装指令:(先去nginx官网查看版本,Stable versi 阅读全文
posted @ 2020-05-04 18:20 键盘三个键 阅读(9778) 评论(23) 推荐(2)
摘要: 创建持久层: 在src目录下创造名为com.po的包 创建Dao层 在src创造com.dao包,创造UserDao的接口,该接口使用@Mapper注解自动装配为MyBatis的映射接口: 创建Service层: 创建com.service的包,创建UserService的接口: 创建Conttro 阅读全文
posted @ 2019-08-31 21:26 键盘三个键 阅读(334) 评论(0) 推荐(0)
摘要: Controller接受请求参数的常见方法: 1、通过Bean接受请求参数: 创建POJO实体类 创建pojo包,并在该包中创建实体类UserForm,代码: 创建控制器类,在controller包中创建控制器类IndexController和UserController 其中@RequestMap 阅读全文
posted @ 2019-07-25 12:11 键盘三个键 阅读(2825) 评论(0) 推荐(1)
摘要: 一对一级联查询映射文件PersonMapper.xml代码: IdCardMapper.xml代码: 一对多查询映射文件OrdersMapper.xml代码: UserMapper.XML代码: 多对多查询,映射文件OrdersMapper.xml文件 阅读全文
posted @ 2019-07-22 18:32 键盘三个键 阅读(1222) 评论(0) 推荐(0)