
获得徽章 11
- #青训营笔记创作活动#
1月28日 打卡day32
今日学习MySQL命令。这篇文章可以当作MySQL命令的手册来用,从基础操作命令,对库和表的操作,增删改查,优化分析,索引,函数,事务,视图,存储过程,触发器,权限,备份和还原,表分区,存储引擎参数和常见错误码等,非常齐全。
展开评论点赞 - #青训营笔记创作活动#
1月27日 打卡day31
今日学习分布式锁。这篇文章从本地锁一直讲到分布式锁,将Redis实现分布式锁中的一些问题,逐步进行了讲述。从使用简单的 Redis 中的 SET KEY NX命令实现分布式锁,到使用SET KEY NX EX TIME 命令解决死锁问题,到增加身份标识(UUID) 解决锁被其他人释放问题,再到使用 Lua 脚本,将解锁操作变成原子性操作,再到Redisson实现分布式锁,解决了锁自动续期问题,最后扩展了Redlock。展开评论点赞 - #青训营笔记创作活动#
1月26日 打卡day30
今日学习跨域问题。跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。以下三种情况为跨域请求:
(1)协议不同
(2)域名不同
(3)端口不同
在 Spring Boot 中跨域问题有很多种解决方案,比如以下 5 个:
(1)使用 @CrossOrigin 注解实现跨域
(2)通过配置文件实现跨域
(3)通过 CorsFilter 对象实现跨域
(4)通过 Response 对象实现跨域
(5)通过实现 ResponseBodyAdvice 实现跨域展开评论点赞 - #青训营笔记创作活动#
1月25日 打卡day29
今日学习流程引擎。Flowable是一个使用Java编写的轻量级业务流程引擎,工作流在企业管理系统中是高频使用的功能,本文中介绍了三种流程绘制工具的使用。评论点赞 - #青训营笔记创作活动#
1月24日 打卡day28
今日学习如何在微服务中优雅的实现一个公用的接口访问限制工具。实现这个功能主要需要Redis和aop的依赖,通过注解的方式作用到方法上。首先获取注解参数,然后获取当前请求的IP和方法,生成Redis的key,获取key的访问次数,判断次数是否超过限制。展开评论点赞 - #青训营笔记创作活动#
1月23日 打卡day27
今日学习分库分表。分库分表是在海量数据下,由于单库单表数据量过大,导致数据库性能持续下降问题,演变出的计技术方案。分库分表的核心是对数据的分片,并均匀的分布在多个库和表中,可以从纵向和横向两种维度进行拆分,对于数据存在哪里可以通过取模算法,范围限定算法,预定义算法等规则指定。展开评论点赞 - #青训营笔记创作活动#
1月22日 打卡day26
今日学习缓存和数据库不一致问题的产生及主流解决方案和扩展。这篇文章首先讲了缓存的基本知识以及如何使用Redis来做缓存,然后讲解了面试常见的三大问题缓存穿透,缓存血崩,缓存击穿,最后讲解了缓存与数据库一致问题和解决方案。展开评论点赞 - #青训营笔记创作活动#
1月21日 打卡day25
今日学习缓存相关知识,这篇文章讲解了本地缓存,集中式缓存,多级缓存;在使用场景上能降低自身CPU消耗,减少对外IO交互,提升用户个性化体验;在集成方式上有旁路型缓存,穿透型缓存,异步型缓存。展开评论点赞 - #青训营笔记创作活动#
1月20日 打卡day24
今日学习针对秒杀这种瞬时高并发场景该怎么做,这篇文章从页面静态化,秒杀按钮,缓存问题,库存问题,分布式锁,mq异步处理,限流等方面介绍了秒杀系统从前端到后端的完整设计细节。评论点赞 - #青训营笔记创作活动#
1月19日 打卡day23
今日学习https相关的握手过程,对称加密和非对称加密,公钥和私钥,权威数字证书机构(CA),名词非常多。TLS四次握手的过程就是https的关键。评论点赞