草庐IT

Resilience4J

全部标签

SpringBoot(三) - Slf4j+logback 日志,异步请求,定时任务

1、Slf4j+logback日志SpringBoot框架的默认日志实现:slf4j+logback;默认日志级别:info,对应了实际生产环境日志级别;1.1日志级别#常见的日志框架中,日志级别都包含五种,优先级从低到高:trace1.1.1trace日志级别trace日志级别,了解,实际开发中,几乎不会使用此级别;(配置文件指定为trace级别才会输出);logger.trace("------------trace日志级别,了解,实际开发中,几乎不会使用此级别------------------");1.1.2debug日志级别debug日志级别,掌握,实际开发中,此日志级别作为调试日志

学习笔记——Spring声明式事务管理属性(隔离级别、事务超时、事务只读、事务回滚);Spring5新特性、新注解&整合log4j2;Spring5整合Junit5

2023-01-19Spring声明式事务管理属性一、隔离级别1、概念:一个事务与其他事务之间的隔离等级(1,2,4,8)。2、隔离级别:(1)读未提交(1):READUNCOMMTTED存在问题:脏读(读取到了未提交数据)(2)读已提交(2):READCOMMTTED存在问题:可能出现不可重复读(3)可重复读(4):REPEATABLEREAD存在问题:可能出现幻读(4)串行化(8):SERIALIZABLE二、事务超时1、设置事务超时时间,到达指定时间后会强制事务回滚2、类型:int,单位:秒3、默认值:-1(未设置强制回滚)三、事务只读(readonly)1、一般事务方法中只有查询操作时

学习笔记——Spring声明式事务管理属性(隔离级别、事务超时、事务只读、事务回滚);Spring5新特性、新注解&整合log4j2;Spring5整合Junit5

2023-01-19Spring声明式事务管理属性一、隔离级别1、概念:一个事务与其他事务之间的隔离等级(1,2,4,8)。2、隔离级别:(1)读未提交(1):READUNCOMMTTED存在问题:脏读(读取到了未提交数据)(2)读已提交(2):READCOMMTTED存在问题:可能出现不可重复读(3)可重复读(4):REPEATABLEREAD存在问题:可能出现幻读(4)串行化(8):SERIALIZABLE二、事务超时1、设置事务超时时间,到达指定时间后会强制事务回滚2、类型:int,单位:秒3、默认值:-1(未设置强制回滚)三、事务只读(readonly)1、一般事务方法中只有查询操作时

委派模式——从SLF4J说起

作者:vivo互联网服务器团队-Xiongyangxin将某个通用解决方案包装成成熟的工具包,是每一个技术建设工作者必须思考且必须解决的问题。本文从业内流行的既有工具包入手,解析实现思路,沉淀一般方法。为技术建设的初学者提供一些实践思路的参考。尤其是文中提倡的“去中心化”的协作模式,和“关键链路+开发接口”的开发模式,具有一定的实际落地意义。当然本文在行文中,不可避免存在一定主观偏见性,读者可酌情阅读。一、前言熟悉JAVA服务器开发的同学应该都使用过日志模块,并且大概率使用过"log4j-over-slf4j"和“slf4j-log4j”这两个包。那么这两个包的区别是什么?为什么会互相引用包含

委派模式——从SLF4J说起

作者:vivo互联网服务器团队-Xiongyangxin将某个通用解决方案包装成成熟的工具包,是每一个技术建设工作者必须思考且必须解决的问题。本文从业内流行的既有工具包入手,解析实现思路,沉淀一般方法。为技术建设的初学者提供一些实践思路的参考。尤其是文中提倡的“去中心化”的协作模式,和“关键链路+开发接口”的开发模式,具有一定的实际落地意义。当然本文在行文中,不可避免存在一定主观偏见性,读者可酌情阅读。一、前言熟悉JAVA服务器开发的同学应该都使用过日志模块,并且大概率使用过"log4j-over-slf4j"和“slf4j-log4j”这两个包。那么这两个包的区别是什么?为什么会互相引用包含

集成 Spring Doc 接口文档和 knife4j-SpringBoot 2.7.2 实战基础

优雅哥SpringBoot2.7.2实战基础-04-集成SpringDoc接口文档和knife4j前面已经集成MyBatisPlus、Druid数据源,开发了5个接口。在测试这5个接口时使用了HTTPClient或PostMan,无论是啥都比较麻烦:得自己写请求地址URL、请求参数等,于是多年前就出现了Swagger这个玩意。Swagger可以自动生成接口文档,还能很方便的测试各个接口。但不幸的是,MVNRepository上面SpringfoxSwagger2的版本停止于2020年7月,而写下这篇文章是2022年8月,已经两年过去没有动静了,与此同时,springdoc-openapi悄然出

集成 Spring Doc 接口文档和 knife4j-SpringBoot 2.7.2 实战基础

优雅哥SpringBoot2.7.2实战基础-04-集成SpringDoc接口文档和knife4j前面已经集成MyBatisPlus、Druid数据源,开发了5个接口。在测试这5个接口时使用了HTTPClient或PostMan,无论是啥都比较麻烦:得自己写请求地址URL、请求参数等,于是多年前就出现了Swagger这个玩意。Swagger可以自动生成接口文档,还能很方便的测试各个接口。但不幸的是,MVNRepository上面SpringfoxSwagger2的版本停止于2020年7月,而写下这篇文章是2022年8月,已经两年过去没有动静了,与此同时,springdoc-openapi悄然出

Hippo4J v1.3.1 发布,增加 Netty 监控上报、SpringCloud Hystrix 线程池监控等特性

文章首发在公众号(龙台的技术笔记),之后同步到博客园和个人网站:xiaomage.infoHippo4Jv1.3.1正式发布,本次发布增加了Netty上传动态线程池监控数据、适配Hystrix线程池监控及动态变更等诸多特性,完全兼容历史版本,使用者可安心升级。什么是Hippo4JHippo4J通过对JDK线程池增强,以及扩展三方框架底层线程池等功能,为业务系统提高线上运行保障能力。?全局管控-管理应用线程池实例;⚡️动态变更-应用运行时动态变更线程池参数,包括不限于:核心、最大线程数、阻塞队列容量、拒绝策略等;?通知报警-内置四种报警通知策略,线程池活跃度、容量水位、拒绝策略以及任务执行时间超

Hippo4J v1.3.1 发布,增加 Netty 监控上报、SpringCloud Hystrix 线程池监控等特性

文章首发在公众号(龙台的技术笔记),之后同步到博客园和个人网站:xiaomage.infoHippo4Jv1.3.1正式发布,本次发布增加了Netty上传动态线程池监控数据、适配Hystrix线程池监控及动态变更等诸多特性,完全兼容历史版本,使用者可安心升级。什么是Hippo4JHippo4J通过对JDK线程池增强,以及扩展三方框架底层线程池等功能,为业务系统提高线上运行保障能力。?全局管控-管理应用线程池实例;⚡️动态变更-应用运行时动态变更线程池参数,包括不限于:核心、最大线程数、阻塞队列容量、拒绝策略等;?通知报警-内置四种报警通知策略,线程池活跃度、容量水位、拒绝策略以及任务执行时间超

49天精通Java,第22天,Java日志框架,Log4j日志级别

目录一、异常与日志二、下面来聊一下,日志的作用三、记录日志的规范四、日志的内容五、Log4j1、TRACE2、DEBUG3、INFO4、WARN5、ERROR6、FATAL一、异常与日志在理想的国度,用户输入数据的格式都是正确的,选择打开的文件也都是存在的,调用的第三方接口也都是网络稳定,程序的代码也是永远都没有bug的。不过,在现实的世界里,bug无处不在,用户瞎输入、第三方接口间歇性失败、网络故障、未知错误,太多太多了。此时,在bug面前,程序的稳定性尤为重要,一遇到bug就死翘翘,一遇到异常就宕机,这…在遇到上述异常时,及时有效的通知客户、保存现存的所有工作、允许用户安全的退出程序、异常