获得徽章 1
- #青训营笔记创作活动#
12月11日 打卡day5
对索引失效的集中场景进行了了解,不用select * 是为了什么,终于知道了原因评论点赞 - #青训营笔记创作活动#
12月10日 打卡day4
我之前学的java,不过现在也对go感兴趣了,感觉只是服务端语言的转变,思维模式变化的小一点。
DDD领域驱动设计,之前在公司实习一个项目组就是用的DDD,当时也了解了一点,对各个领域进行设计接口交互,方便团队协作。
领域:是一种边界的划分,如互联网金融,互联网健康等
领域模型:模型是对领域的抽象和模拟
不以用户为核心:做到客观设计,挖掘深层次需求
微服务具有特性:单一职责、团队独立、技术独立、数据库分离、独立部署。稍微大一点的项目就可以使用多个微服务,在java方面有SpringCloud等方案。之后也了解过istio服务网格平台,我所在团队下一个项目就用的是istio。展开评论点赞 - #青训营笔记创作活动#
12月9号 打卡day3
讲了很多MySQL底层的存储原理,我发现我的mysql知识只存表面和使用层面,后面要好好学习MySQL存储原理了评论点赞 - #青训营笔记创作活动#
12月8日 打卡day2
今日学习:IDEA插件
Key Promoter X:使用鼠标点击时能自动提示快捷键
Lombok:加上注解可以省略getter、setter等方法,编译时自动生成,java开发利器
MyBatisX:可以实现dao层接口方法和xml sql之间的跳转,java web开发必备
RestfulFastRequest:在controller层快速生成接口调试用例,能够请求响应,可以代替postman,之前没用过,以后试试
PlantUML:根据类关系自动生成时序图、类图、对象图、活动图、思维导图等图形的绘制
SequenceDiagram:生成时序图,看到方法调用关系
GsonFormatPlus:json字符串生成实体类
Json Parser:json格式化插件,用IDEA打开json文件比较方便
String Manipulation:字符串操作利器,下次有需要试试
MapStruct support:根据需要能够自动生成映射类,这让我想到了之前写model和dto/vo类特别麻烦,以后试一试
Alibaba Java Coding Guidelines:可以提示代码写不规范的地方,养成写好代码的习惯
Alibaba Cloud Toolkit:可以更方便地实现自动化部署
Docker:支持远程Docker环境的镜像和容器管理,同时支持使用Docker Compose实现批量部署。
Maven Helper:查看依赖关系图,方便解决依赖冲突
Grep Console:方便查看日志,对不同级别敷颜色,之前区分控制台info和debug日志就非常麻烦,有这个就很方便
Markdown:在IDEA中写笔记
Translation:一键翻译,读原码时可以对注释进行翻译非常方便
Statistic:代码统计工具,统计行数
Vue.js:用IDEA写Vue展开评论点赞 - #青训营笔记创作活动#
12月7日 打卡day1
今日学习:
限流分为单机限流和分布式限流
常见限流方式
1. 计数器:一段时间间隔内,对请求计数,当达到阀值,将计数器清零。缺点:没有很好处理时间单位的界限
2. 滑动窗口:将固定时间片划分,窗口拥有几个格子,随着时间流逝进行移动。缺点:无法根本解决临界点问题
3. 漏桶:具有一个漏桶,当接收请求过多会“溢出”,请求适量将会很好的处理,就是一个煮水漏水的过程,限制了请求的速度,,不会出现临界问题。
4. 令牌桶:有一个固定的桶,存放着令牌,系统会按一定的速率往桶中添加令牌。当接收到请求,请求必须拿到令牌才能被处理,如果没有令牌,多余的请求将被丢弃。限制平均流入速率,允许一定程度突发流量,比较常用。
Redis + Lua 分布式限流
分布式最关键的就是将限流服务做成原子化,可以使用Redis的计数器,加上Lua执行的原子性进行限流。展开评论点赞