获得徽章 1
#青训营笔记创作活动#
2月20日 打卡day40
今天主要学习了redis高级应用场景,包括限流,延时队列,布隆过滤器的实现,幂等处理,redis的incr等知识。使我对redis有了更进一步的了解。
评论
#青训营笔记创作活动#
2月19日 打卡day39
今天学习了如何利用optional解决空指针异常。JAVA 8引入了一个十分实用的Optional类,它主要是为了解决空指针异常。当我们对对象的属性进行检查,判断它的值是否为期望的格式,最终却发现我们查看的并不是一个对象,而是一个空指针。这个简单而强大的类有助于创建简单可读性更强,比对应程序错误更少的程序。
展开
评论
#青训营笔记创作活动#
2月18日 打卡day38
今天学习了如何实现真正的高性能,高并发的上亿级别秒杀系统。
秒杀特点是持续时间短,抢购人数多,参与人数远高于商品数量,抢购开始前后大量数据请求涌入,极易给服务造成巨大压力。如果系统设计不当,还容易造成超卖少卖数据丢失,服务雪崩等问题。
今天我们学习了在秒杀的高并发场景下,传统订单架构存在的性能瓶颈,如何利用redis mq等中间件对系统做优化,解决缓存加速,防止重复提交,排队下单,超卖少卖等核心问题
展开
评论
#青训营笔记创作活动#
2月17日 打卡day37
今天我们主要学习了缓存使用过程中一些典型异常的触发场景与防护策略,并且了解了保持缓存与数据库一致性的一些保障手段。
评论
#青训营笔记创作活动#
2月16日 打卡day36
今天学习了go基础语法50问,复习了go语言的基础知识,对go语言有了更深的了解,加强了我对基础知识的记忆,谢谢作者的归纳总结。
评论
#青训营笔记创作活动#
2月15日 打卡day35
今天将围绕hertz开源仓库的一个demo学习如何使用hertz完成jwt的认证与授权流程。对于该demo的介绍,下载,结构,分析都进行了详细的解读,给予我很大帮助。
评论
#青训营笔记创作活动#
2月14日 打卡day34
今天主要学习了MySQL,深入数据库底层揭开了索引机制的神秘面纱。对索引为什么默认是B+树结构,建立索引后发生的一系列事情,写类型的SQL对数据的影响等一系列内容进行了深入剖析。最后介绍了聚簇索引和非聚簇索引的根本区别。
展开
评论
#青训营笔记创作活动#
2月13日 打卡day33
今天对MySQL单表行数为什么不超过2000万问题进行了研究,得出如下结论;MySQL的表述句是以页的形式存放的页,在磁盘中不一定是连续的;夜的空间是16k,并不是所有的空间都是用来存放数据的,会有一些固定的信息,如页头,页尾等;在B+树中,叶子节点和非叶子节点的数据结构是一样的,区别在于叶子节点存放的是实际的行数据,而非叶子节点存放的是主键和叶号;毒瘾结构不会影响单表最大行数2000万,也只是推荐值超过了这个值,可能会导致B+树层级更高,影响查询性能
展开
评论
#青训营笔记创作活动#
2月12日 打卡day32
今天学习了MySQL命令大全。我们在编写时有困扰,就是明明记得数据库中有个命令,可以实现自己需要的功能,但偏偏不记得那个命令该怎么写了?这时只能盲目的靠百度一次,来寻找自己需要的命令。今天学习的文章将一些常用的命令全部罗列出来,以后当需要用,到时只需来回搜索即可。包括基部操作与库命令,表的分析检查等命令,增删改查语句等。对我数据库的学习起到了很大的帮助。
展开
评论
#青训营笔记创作活动#
2月11日 打卡day31
今天了解了本地锁以及从本地锁到分布式锁的整个演进过程。首先了解了本地锁如何使用以及本地所存在的问题,接着了解到了分布式锁如何解决本地锁的缺点,以及如何实现分布式锁。最后,对于红锁Redlock进行了介绍
展开
评论
#青训营笔记创作活动#
2月10日 打卡 day30
今天我学习了什么是跨域问题以及如何解决跨域问题。跨域问题指的是不同站点之间使用ajax无法相互调用的问题。他的本质是浏览器的一种保护机制,初衷是为了保护用户的安全,防止恶意网站窃取数据。它的常见实现方式有五种:通过注解实现局部跨域,通过配置文件实现全局跨域,通过CorsFilter对象实现全局跨域,通过response对象实现局部跨域。通过ResponseBodyAdvice实现全局跨域
展开
评论
#青训营笔记创作活动#
2月9日 打卡day29
今天学习了流程引擎flowable。了解到我们为什么需要工作流。目前常用的三大工作流。以及流程绘制工具的使用。使我对flowable流程引擎有了一个基本的认识。
评论
#青训营笔记创作活动#
2月8日 打卡day28
今天学习了细粒度接口的IP访问限制的实现。一般向外暴露的接口都需要加上一个访问限制,以防止有人恶意刷流量或者爆破。访问限制的做法有很多种,从控制力度上看,可以分为全局访问限制和接口访问限制。今天学习的是接口访问的限制。
方法是基于aop加自定义注解加radis。并且封装在一个单独的模块下,需要使用的模块只需引入该包,并且给需要限制的方法填下注解即可。
缺点是该方法只支持在方法上添加注解,不支持给类添加。
展开
评论
#青训营笔记创作活动#
2月7日 打卡day27
今天学习了分库分表的相关知识。对分库分表的原因,分库分表的时机,如何分库分表?分库分表的算法和各自的优缺点都进行了详细的认知。
评论
#青训营笔记创作活动#
2月6日 打卡day26
今天,学习了本地缓存和分布式缓存,redis的使用,缓存与数据库的一致性问题以及如何解决。对我理解数据库与缓存之间的关系有很大帮助。
评论
#青训营笔记创作活动#
2月5日 打卡day25
缓存作为高并发系统中的神兵利器被广泛使用,堪称高并发系统的基石之一。在今天的学习中,我对缓存的各个方面进行了一个简单的了解,明白了缓存对一个软件系统的重要价值。通过对缓存的合理充分利用,可以大大的增强我们系统的承压性能,提升产品的用户体验。
展开
评论
下一页
个人成就
文章被阅读 2,069
掘力值 192
收藏集
0
关注标签
2
加入于