自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(189)
  • 资源 (10)
  • 收藏
  • 关注

原创 Event Driver设计模式

EDA是一种实现组件之间松耦合、易扩展的架构方式。一、EDA设计模式包含的组件:1、Events:需要被处理的数据2、Event Handlers:处理Events的方法3、Event Loop:维护Events与Event Handlers之间的交互流程二、EDA框架的基础接口设计:1、Message:相当于上面Event/**Event可以被称为Message*/public interface Message {/**返回Message的类型/Class<?.

2022-03-18 17:25:36 406

原创 StampedLock的小陷阱

StampedLock内部实现时,使用类似于CAS操作的死循环反复尝试的策略。在它挂起线程时,使用的是Unsafe.park()函数,而park()函数在遇到线程中断时,会直接返回(注意,不同于Thread.sleep()方法,他不会抛出异常)。而在StampedLock的死循环逻辑中,没有处理有关中断的逻辑。因此,这就会导致阻塞在park()方法上的线程被中断后,再次进入循环。而当退出条件得不到满足时,就会发生疯狂占用CPU的情况。演示代码如下:package com.aden.powoms.biz.d

2021-12-20 16:39:31 426 2

原创 Java设计类原则

一、面向对象设计原理:1、单一职责原则1)、定义:一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。2)、遵循单一职责的优点:可以降低类的复杂度,一个类只负责一项职责,其逻辑肯定要比负责多项职责简单的多;提高类的可读性,提高系统的可维护性;变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修.

2020-05-13 17:00:14 544

原创 freemarker渲染模板

/*** 对模板进行渲染* @param data 数据Map* @param tplStr 模板* @return*/public static String execFreemarkerTemplate(String templateStr, Map params) {Configuration cfg = new Configuration();StringTemplateL...

2019-11-22 16:06:12 494

转载 Guava做令牌桶限流:

转载博客:https://blog.csdn.net/aa1215018028/article/details/80866335

2019-11-14 18:03:16 251

原创 Mysql中GROUP_CONCAT函数的使用:

select sr.batch_no,GROUP_CONCAT(DISTINCT(s.risk_type) Separator ‘_’) riskTypefrom adc_fund_table_scene sinner join adc_fund_table_scene_drill_record sr on s.scene_code = sr.scene_codeGROUP BY sr.b...

2019-09-26 08:55:44 147

原创 调用服务的封装

package com.learn.com.sort;import java.util.concurrent.Callable;public class Rests {private Rests() {}private static DefaultHandler defaultHandler = new DefaultHandler();/** * 执行服务调用并判断返回状态 *...

2019-08-27 15:13:05 377

原创 微服务与单体服务的拆分原则

表级锁的争用状态变量:show status like ‘table%’;行级锁争用状态变量:show status like ‘innodb_row_lock%’;单体架构的优势:1、便于开发2、易于测试3、易于部署单体架构的不足:1、复杂性高2、交付效率低:构建和部署耗时长3、伸缩性差:只能按整体横向扩展,无法分模块垂直扩展,IO密集型模块和CPU密集型模块无法独立升级和...

2019-08-26 17:19:22 11397

原创 Reactive的方式访问Redis

参考博客为:https://blog.csdn.net/weixin_38003389/article/details/90239641

2019-08-19 14:36:06 797

原创 Hystrix及gateaway限流操作

参考博客:1、https://blog.csdn.net/chenxyz707/article/details/809137252、https://blog.csdn.net/u010889990/article/details/811693283、https://blog.csdn.net/xuxinpingcj/article/details/848012504、https://blo...

2019-08-14 11:26:42 987

原创 程序猿谨记

1、函数不要超过50行。2、不要一次性写太多来不及测的代码,而是要写一段调试一段。3、UT和编码要同步做。4、多写注释方便的往往是自己。5、碰到一堆问题时,一次只尝试解决一个问题。6、没把握一眼看出问题症结的时候,老老实实单步调试。7、设计模式是个好东西,但不要强行使用。8、没造成可观的损失前不要尝试做性能优化。9、没事别重复造轮子。10、大多数情况下Boss不关心技术含量,而且...

2019-08-12 15:26:28 120

原创 Bean 复制的几种框架比较

4 种复制方法:Apache BeanUtilsApache PropertyUtilsSpring BeanUtilsCglib BeanCopie(效果最好)参考博文:https://blog.csdn.net/benben683280/article/details/80903571

2019-08-12 14:59:21 196

转载 Spring-service本类中方法调用另一个方法事务不生效问题

参考博客:https://blog.csdn.net/benben683280/article/details/78839853

2019-08-12 10:55:00 432

转载 浅谈ELK日志系统

参考博客地址:https://mp.weixin.qq.com/s?__biz=MzI4NjI2OTYwNg==&mid=2247484980&idx=1&sn=60d0c76a97ab52563caabf2e69ccce88&chksm=ebdecffddca946eb189c6b3843c7524864bb39eb8fe7960470d7a550a3e10cb...

2019-08-05 07:41:08 130

转载 WebSocket的Demo

参考GitHub地址:https://github.com/yy1193889747/chat-demohttps://github.com/zhaodongxx/spring-boot2-websocket

2019-07-21 15:04:45 87

原创 git提交代码不在本分支的解决办法

使用git命令:git branch --set-upstream-to=origin/branch(需要切换到的分支)

2019-07-20 08:21:36 741

转载 websocket使用session为null的解决办法

参考博客:https://www.cnblogs.com/coder163/p/8605645.html

2019-07-20 08:19:47 4033

转载 浅谈事务的传播特性

参考博客:https://www.cnblogs.com/yixianyixian/p/8372832.html

2019-07-04 18:25:01 181

转载 线程池的使用

参考博客:https://www.cnblogs.com/owenma/p/8557074.html

2019-07-04 18:17:29 100

转载 Java8中使用以下类计算日期时间差:Period、Duration、ChronoUnit

参考博客:https://blog.csdn.net/qq_26974471/article/details/89151345

2019-06-24 09:23:13 2655

转载 原生Spring实现多数据源切换

参考资料及博客:https://www.cnblogs.com/LiQ0116/p/7027049.html

2019-05-28 14:35:16 163

转载 MyBatis动态批量插入、更新Mysql数据库的通用实现方案

参考资料及博客:https://www.cnblogs.com/LiQ0116/p/7389049.html

2019-05-27 17:16:34 1428

转载 Nginx配置静态资源文件404 Not Found问题解决方法

参考资料及博客:https://blog.yoodb.com/yoodb/article/detail/1470

2019-05-27 12:35:02 8446

转载 mysql调优之事务

参考资料及博客:https://www.cnblogs.com/binbinyouni/p/6070715.htmlhttps://maozhr520.iteye.com/blog/2384924https://blog.csdn.net/growing1224/article/details/82383666

2019-05-24 16:05:30 118

转载 Java优化之设计模式优化之常用并发编程设计模式

参考资料及博客:https://www.cnblogs.com/leoliu168/p/9919715.htmlhttps://blog.csdn.net/yujin753/article/details/45723175 (实现生产者-消费者模式的方法)https://blog.csdn.net/yjclsx/article/details/80923737https://www.c...

2019-05-24 15:32:48 193

转载 你知道Tomcat8是如何进行类加载的吗?

参考资料及博客:https://mp.weixin.qq.com/s?__biz=MzI4NjI2OTYwNg==&mid=2247484816&idx=1&sn=bd2627dda352b03f684e66bb0817356a&chksm=ebdecc59dca9454fbd33601a5564e4ef82253e7380b63176f359cb2bdc2ecf...

2019-05-24 13:56:31 445

转载 深入浅出分析MySQL索引设计背后的数据结构

参考资料及博客:https://mp.weixin.qq.com/s?__biz=MzI4NjI2OTYwNg==&mid=2247484830&idx=1&sn=30e8e50273bf410c316cf7dfaccd01e3&chksm=ebdecc57dca9454170acc39ac1af6b23c075f12af5494627c8f618412745b6...

2019-05-24 13:55:38 153

转载 JAVA - String 中删除指定字符(11种方法)

https://mp.weixin.qq.com/s?__biz=MzI4NjI2OTYwNg==&mid=2247484845&idx=1&sn=71412ef42098db9239df63740874ede9&chksm=ebdecc64dca945722356a365704d3ea48e95f146df932a0534f2e6e42730f8c1e203b2a...

2019-05-24 13:49:30 6253 1

转载 Java之如何设置线程池大小

参考资料及博客:https://www.cnblogs.com/cherish010/p/8334952.html

2019-05-22 11:06:39 1146

转载 Java之如何是使用协程来优化多线程业务

参考资料及博客:https://www.baidu.com/s?wd=如何使用协程来优化多线程业务&rsv_spt=1&rsv_iqid=0xfb06436f0000255d&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&tn=62095104_19_oem_dg&rsv_enter=1&am...

2019-05-22 11:04:51 564

转载 Java之JVM性能监控与排查

参考资料与博客:https://blog.csdn.net/he90227/article/details/52136154https://www.manageengine.cn/products/applications_manager/index.htmlhttps://blog.csdn.net/cd19930508/article/details/80648289https://b...

2019-05-22 10:53:58 199

转载 Java之Java内存分配优化

参考资料及博客:https://www.cnblogs.com/downey/p/5301457.htmlhttps://www.cnblogs.com/handsomeye/p/5442879.htmlhttps://blog.csdn.net/tpasta/article/details/82154722

2019-05-22 10:51:02 771

转载 Java之常用工具类网站

参考网站:https://blog.csdn.net/weixin_40792878/article/details/82193545

2019-05-22 10:29:53 811

转载 Java之垃圾回收优化

参考资料及博客:https://blog.csdn.net/zy512638348/article/details/78174377https://www.cnblogs.com/wozixiaoyao/p/5658960.htmlhttp://www.importnew.com/2057.html

2019-05-22 10:28:27 179

转载 Java之了解jvm

参考资料及博客:https://www.cnblogs.com/wangjzh/p/5258254.htmlhttps://www.cnblogs.com/jijiji/p/7859390.htmlhttps://blog.csdn.net/u012102104/article/details/79773328http://www.sohu.com/a/272795569_12000166...

2019-05-22 10:17:23 103

转载 Java之Java编译优化

参考资料及博客:https://blog.csdn.net/b2222505/article/details/72829614https://www.cnblogs.com/yuefeng123/p/7341929.htmlhttp://www.sohu.com/a/300132638_120047080

2019-05-22 09:33:45 329

转载 Java之线程池优化

参考资料及博客:https://www.cnblogs.com/10158wsj/p/8338367.htmlhttps://www.cnblogs.com/XHJT/p/3905665.htmlhttps://zhidao.baidu.com/question/1116525725491169459.html

2019-05-21 17:44:31 214

转载 Java之并发容器优化及HashMap实现原理

参考资料及博客:https://blog.csdn.net/richard_jason/article/details/53887222https://www.cnblogs.com/daoqidelv/p/6753162.htmlhttps://blog.csdn.net/qq_34173549/article/details/79612522https://blog.csdn.net/...

2019-05-21 17:31:30 118

转载 Java之上下文切换优化

参考资料及博客:https://blog.csdn.net/antony9118/article/details/51475034https://www.cnblogs.com/signheart/p/3e3379943de1c36d5bcc7d8cee4b9825.htmlhttp://ifeve.com/context-switching-and-multi-processor/...

2019-05-21 17:06:01 287

转载 Java之乐观锁、悲观锁优化

参考资料和博客:https://www.cnblogs.com/linjiqin/p/5096206.htmlhttps://blog.csdn.net/truelove12358/article/details/54963791

2019-05-21 16:55:13 134

MyBatis源码-包含注释

Mybatis源码,包含注释,注释写的很详细,如果对源码感兴趣的话,可以下载下来研究研究,这个是易哥编写的,而且也有相应的书籍,源码结合书籍更通俗易懂,书籍名称叫《通用源码阅读指导书-MyBatis源码详解》,提供给喜欢看源码的小伙伴们,仅此而已哈。

2022-05-10

平时练习的Java的demo

平时的一些java基础练习,包括线程、单例模式、负载均衡算法、算法、jvm相关的、递归的使用等练习,自定义线程连接池等。

2020-01-17

quartz+jvm.7z

Spring Boot+quartz,以及jmedloy实现jvm参数查看。在你的项目中引入服务端的jar,然后部署客户端,就可以查看你引入依赖的项目当中的jvm,以及文件等相关的信息了,以及多数据源配置项目demo。

2020-01-14

分布式事务之2PC事务处理原理

实现的一个简单2PC分布式事务框架,客户端与服务端通信使用Netty,市面上成熟的2PC分布式事务框架有:LCN,大致的处理流程都是按照这种方式来的,希望对于学习分布式事务的小伙伴有所帮助。

2020-01-08

tomcat源码解析

本资源是tomcat的源码(包含阅读的注释),和相关原理及生命周期的文档,启动流程等,以及模拟并发对tomcat不同的支持(bio、nio)的压测,还有相关tomcat的启动和部署脚本命令(模拟从svn下载)。

2019-12-21

操作Linux的工具类(包含文件上传和界面操作)

Xshell6 + Xftp + Xlpd三个合一的工具类,如果过期了,卸载重新安装就又可以使用了,且是国产。

2019-12-21

dubbo源码解析(含注释)

本代码是github下载的dubbo源码,构建好了,可直接使用,其中包含一些demo和看的过程中的一些见解(注释),还包含sentinel、ZooInspector,以及新老版本的dubbo管控台,下载下来打开可直接使用,需要安装zookeeper,安装方式见官网。

2019-12-20

zookeeper-branch-3.4.13.7z

该代码为zookeeper的zookeeper-branch-3.4.13源码研究;从官网下载下来的,因为源码是eclipse项目,所以需要本地安装ant工具,进行源码编译和构建,然后导入Intellij,使用eclipse而不是maven的方式导入项目,该代码中包含阅读源码时的注释,以及使用原生方式、zkClient、curator方式创建连接,而且还包含原生方式实现的分布式注册服务中心、两种分布式锁、master领导者选举,重在理解底层的实现原理和机制,希望对小伙伴们能有所帮助。

2019-12-13

spring-boot-2.1.x.zip

Spring Boot源码,直接下载下来,import进idea工具,以maven的方式导入,下载依赖可能时间有点长,然后运行spring-boot-project目录下的spring-boot-test右键run---->all in java,大概需要半分钟,源码就编译构建好了,可以在里卖弄进行项目搭建了。

2019-12-09

Spring源码.zip

Spring5的源码,包含注释,使用gradle进行构建编译,安装gradle的版本为4.9,也可以时4.9以上的,然后导入的时候进行gradle配置,最后使用右键选择run进行编译,就可以在上面编写代码了,构建过程时间有点长,往见谅!

2019-11-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除