获得徽章 1
- #青训营笔记创作活动#
2月22日 day30
Java 8 引入了一个十分实用的 Optional 类,它主要是为了解决空指针异常(NullPointerException)。当我们对对象的属性进行检查,判断它的值是否为期望的格式,最终却发现我们查看的并不是一个对象,而是一个空指针,它会立即抛出一个让人厌烦的 NullPointerException 异常。展开评论点赞 - #青训营笔记创作活动#
2月21日 day29
为了限制缓存的数量,很多的缓存记录都会设置一定的有效期,到期后自动失效。这种在一些批量缓存构建或者全量缓存重建时,因为设置了相同的失效时间,会导致大量甚至全部的缓存数据在短时间内集体失效,这样会导致大量的请求无法命中缓存而直接流转到了下游模块,导致系统瘫痪,也即缓存雪崩。展开评论点赞 - #青训营笔记创作活动#
2月20日 day28
1、Activiti 目前是侧重云,他目前的设计会向 Spring Cloud、Docker 这些去靠拢。
2、Flowable 核心思想还是在做一个功能丰富的流程引擎工具,除了最最基础的工作流,他还提供了很多其他的扩展点。
3、Camunda 相对于前两个而言比较轻量级,Camunda 有一个比较有特色的功能就是他提供了一个小巧的编辑器,基于 bpmn.io 来实现的。展开评论点赞 - #青训营笔记创作活动#
2月19日 day27
一般向外暴露的接口,都需要加上一个访问限制,以防止有人恶意刷流量或者爆破,访问限制的做法有很多种,从控制粒度上来看可以分为:全局访问限制和接口访问限制,本文讲的是接口访问的限制。评论点赞 - #青训营笔记创作活动#
2月18日 day26
垂直列表定义:列的拆分,根据表之间的相关性进行拆分。常见的就是一个表把不常用的字段和常用的字段就行拆分,然后利用主键关联。或者一个数据库里面有订单表和用户表,数据量都很大,进行垂直拆分,用户库存用户表的数据,订单库存订单表的数据。展开评论点赞 - #青训营笔记创作活动#
2月16日 day25
所谓的并发事务,本质上就是MySQL内部多条工作线程并行执行的情况,也正由于MySQL是多线程应用,所以需要具备完善的锁机制来避免线程不安全问题的问题产生。评论点赞 - #青训营笔记创作活动#
2月15日 day24
在写SQL的时候,往往很多时候的细节不注意,就有可能导致索引失效,也因此会造成额外的资源开销,而我们要做的就是避开一些误区,确保自己的SQL在执行过程中能够最大程度上节省资源、缩短执行时间。展开评论点赞 - #青训营笔记创作活动#
2月14日 day23
但如果锁粒度是行锁,其中记录的信息更多,有三个较为重要的:
1、Space ID:加锁的行数据,所在的表空间ID。
2、Page Number:加锁的行数据,所在的页号。
3、n_bits:使用的比特位,对于一页数据中,加了多少个锁。展开评论点赞 - #青训营笔记创作活动#
2月12日 day22
其实窗口临界问题,就是在即将被移出窗口的这段区间内,可能一次性访问量达到了我们的阈值,而由于要移出窗口了,计数又将重置了,所以这些访问量就相当于不会被后续统计到,那么后续再次超过阈值,就变成双倍阈值了。展开评论点赞 - #青训营笔记创作活动#
2月11日 day21
不用动态更新查看日志就可以使用cat查询文件内有没有该内容这个可以、如果需要动态的看新日志进入到文件就使用tail监听着文件的进入。评论点赞