摘要: 常用 spring start https://start.spring.io/ spring-boot配置 https://docs.spring.io/spring-boot/docs/2.1.0.RELEASE/reference/htmlsingle/#common-application- 阅读全文
posted @ 2020-02-17 15:31 cdfive 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 1.idea 最近打开的文件个数 File->Settings->Editor->General->Editor Tabs->Tab Closing Policy->Tab limit 参考:https://www.cnblogs.com/yzhch/archive/2017/04/19/67342 阅读全文
posted @ 2018-06-13 12:43 cdfive 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 知识点 Spring提供了@Value注解,可用于将配置文件或注册中心的属性值动态注入到Bean中。 注:@Value注解在spring-beans包里。 @Value("${...}"):注入获取对应属性文件中定义的属性值; @Value("#{...}"):表示SpEl表达式通常用来获取Bean 阅读全文
posted @ 2024-07-06 21:56 cdfive 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 场景 项目基于SpringBoot搭建,默认使用Tomcat Web容器,对于每个HTTP请求,Tomcat Web容器会分配1个线程来处理请求。 在pom.xml里查看依赖关系: spring-boot-starter-web添加了tomcat-embed-core依赖 Tomcat线程池配置可在 阅读全文
posted @ 2024-06-19 21:36 cdfive 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 问题 项目里使用xxl-job定时任务框架,某个任务定义如下: @Slf4j @RefreshScope @Component @JobHandler("xxxTask") public class XxxTask extends IJobHandler { @Value("${xxx.enable 阅读全文
posted @ 2024-05-06 22:54 cdfive 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 场景 某天在钉钉阿里云运维群收到提示,部分节点阿里云网络异常告警。 检查组内项目微服务发现有1个节点出现了假死现象,进程运行服务没有挂,CPU、内存等资源正常, 但访问服务提供的RESTAPI接口均无法响应,通过网关调用接口一直等待直到超时。 分析 通过jstack导出线程堆栈信息到文件: jps 阅读全文
posted @ 2024-04-07 22:01 cdfive 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 场景 测试环境,采用K8S容器化部署,通过Rancher在Web界面对资源进行管理; 各项目组有独立的网关,多个微服务(根据业务功能、高内聚低耦合划分); 网关是基于spring-cloud-gateway,定制扩展了一些功能,如鉴权、限流等; 微服务是基于spring-cloud各组件,Eurek 阅读全文
posted @ 2024-03-15 22:29 cdfive 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 启动本地Kibana连接测试环境ElasticSearch,启动报错: [warning][migrations] Another Kibana instance appears to be migrating the index. Waiting for that migration to com 阅读全文
posted @ 2024-02-19 21:29 cdfive 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 背景 项目开发中经常会用到多线程,比如批量数据处理任务。 通过多线程并行处理,能够有效提高处理的效率和缩短处理时长。 假设某项任务需要处理1分钟,有1000个任务要处理,如果单线程每个任务顺序执行,处理时长为1000分钟(约16.67小时)。 如果10个线程同时处理,则时间缩短10倍,即100分钟( 阅读全文
posted @ 2023-10-31 21:21 cdfive 阅读(80) 评论(0) 推荐(0) 编辑
摘要: Java项目中有计算精度要求高的场景(如金额计算)会使用`BigDecimal`类型来代替`Double`、`Float`。 本文整理了一些日常开发中使用`BigDecimal`值得注意的问题和代码实例。 1. `BigDecimal`初始化时入参应使用`String`类型 例1: ```java 阅读全文
posted @ 2023-09-03 22:27 cdfive 阅读(260) 评论(0) 推荐(0) 编辑
摘要: ## 背景 在项目开发前的设计阶段,我们会根据需求分析、业务梳理的结果进行领域建模。 通常有2种方式: 1. 实体设计优先 2. 数据库设计优先 无论哪种方式,最终会创建数据库、数据表。 通常在每一张表,会设计2个时间自动,创建时间和修改时间,这样在查询数据时能够清晰的看到数据行 是什么时候创建、什 阅读全文
posted @ 2023-06-29 22:56 cdfive 阅读(1764) 评论(0) 推荐(0) 编辑
摘要: ## 问题 最近协助渠道组开发新需求,封装实现了一个公共模块供不同渠道项目使用。 以前各个渠道项目有很多相似的菜单和功能,各自项目里自己的代码实现,表设计和代码风格迥异。 本公共模块对新需求的功能点进行抽象,通过设计回调接口来实现差异性,减少重复代码,提高模块复用性和可维护性。 目前有2个渠道项目接 阅读全文
posted @ 2023-05-31 22:40 cdfive 阅读(951) 评论(0) 推荐(0) 编辑