Gin基本知识 相关代码位置:https://github.com/imyzt/learning-technology-code/tree/master/golang/imooc-gin-study httpMethod start package ... 2021-03-07
Spring Find Methods By Annotation 在Spring环境中,查找Bean是非常方便的,但是如果是需要查询方法上的注解进行反射调用或其它,则极其不方便。 可以使用MethodIntrospector.selectMethods工具方法,通过遍历所有@Component Be... 2021-02-03
Redis LUA RateLimiter 参考文章:基于Redis的限流系统的设计 本文作为总结和回顾 限流脚本 首先需要引入的是redis的LUA脚本. --- 判断source_str 中是否contains pattern_str --- @param source_... 2021-01-13
手写一个SpringBoot ConditionOn* SpringBoot自带的Conditional 打开任意*AutoConfiguration文件,一般都有下面的条件注解,在spring-boot-autoconfigure-1.5.3.RELEASE.jar的org.spring... 2021-01-02
Java Throwable异常堆栈收集的性能问题 在项目中,大家通常都喜欢使用 throw new BusinessException() 来阻断错误的参数或者业务逻辑异常等已知异常,反馈给用户。比如用户未绑定手机号、用户的参数异常等情况。在大部分情况下,使用异常终止流程都不是很好的... 2021-01-02
MySQL 8.0 公用表表达式(CTE) 从版本8.0开始,MySQL简单地引入了公用表表达式功能或CTE。 用于单词定义多次引用使用。 语法如下所示,其中需要注意的是 定义后,必须下方接着使用,不然语法错误。 同一个语句可以定义多个CTE with 别名 as (SQL... 2020-11-30
MySQL 8.0 window functions(二) 接上一篇的内容,继续讲一下窗口函数和分析函数结合的使用。 lag与lead函数是跟偏移量相关的两个分析函数,通过这两个函数可以在一次查询中取出同一字段的前N行的数据(lag)和后N行的数据(lead)作为独立的列,从而更方便地进行进行... 2020-11-30
MySQL 8.0 window functions(一) 什么是window functions window functions(开窗函数),主要是用来解决聚合函数执行后丢失原有结果的问题。 通过使用window functions可以同时携带原有结果并且具有聚合后的结果。 目前,MySQ... 2020-11-29
分布式事务(三) 分布式事务解决方案 DTP和XA 分布式事务的解决方案之一就是两阶段提交协议(2PC:Two-Phase Commit) 1994年X/Open组织(现在的Open Group)定义了分布式事务处理的DTP模型,该模型包括这样几个角色: 应用程序(AP... 2020-09-07
分布式事务(二) 解决分布式事务的思路 CAP理论 什么是CAP理论?阮一峰-CAP 定理的含义 1998年,加州大学的计算机科学家Eric Brewer 提出,分布式系统有三个指标。 Consistency(一致性) - C Availability(可用性) - ... 2020-09-06