自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Long-Tai

高级Java开发工程师,CSDN博客专家,掘金年度人气作者。专注高并发、中间件、分布式、框架底层源码等知识分享

  • 博客(116)
  • 资源 (1)
  • 收藏
  • 关注

原创 校招:外卖和商城项目不吃香了,我选 12306!

├── checkstyle || -- # 代码格式检查组件│ ├── 12306_checkstyle.xml || -- # 代码格式检查组件规则配置│ └── 12306_checkstyle_suppression.xml || -- # 忽略代码格式检查组件规则配置├── console-vue || -- # 12306 前端控制台项目│ ├── src├── dependencies || -- # 12306 后端项目全局依赖版本控制。

2023-09-01 08:48:51 1393 1

原创 又发现一个开源商城项目,谷粒商城外又多了个选择

刚果商城后端系统模块介绍如下所示。

2023-03-28 08:30:00 345 1

原创 美团:某动态线程池框架是官方开源的么?

上面说了很多关于开源的小知识,接下来向大家介绍下笔者开源的动态线程池框架 Hippo4j。原理:通过对 JDK 线程池的增强,以及扩展三方框架底层线程池等功能,为业务系统提高线上运行保障能力。Hippo4j 提供了两种模式,一种是依赖配置中心,另一种是无中间件依赖,部署个 Jar 包就能带来 Web 端控制台使用。关于动态线程池的热度一直居高不下,本篇文章讲述了美团动态线程池的上下文,以及对为什么没有开源进行了简单分析。

2023-02-17 08:00:00 796

原创 官宣!Hippo4j 1.4.x 新版本正式发布,探索更多玩法

2022 年 11 月 06 日,Hippo4j 1.4.3 版本正式发布!Hippo4j 是一个线程池框架,基于 JDK 原生线程池扩展了诸多功能,比如:运行时动态变更线程池参数、采集线程池运行时数据以及多种维度线程池报警等,为业务系统提高线上运行保障能力。项目自 2021 年 6 月份开源,一直保持快速迭代,共经历 17 次版本发布,已知 23 家公司登记使用。截止目前,共计 83 位开源社区小伙伴参与贡献,这也是 Hippo4j 能保持快速迭代的原因。GitHub:https://github.com

2022-11-11 08:36:15 494

原创 聊聊动态线程池的9个场景

hippo4j 通过对 JDK ThreadPoolExecutor 线程池增强,以及扩展三方框架底层线程池等功能,为业务系统提高线上运行保障能力。小贴士:hippo4j 不止于 Java ThreadPoolExecutor 的增强,Dubbo、RabbitMQ、RocketMQ、Hystrix、Tomcat、Jetty、Undertow等框架线程池也都有进行监控和动态变更。在系统开发的过程中,因为涉及到多人协作,难免会出现信息不互通的情况。在同一个系统,对于线程池来说,常见的是线程池随意定义。...

2022-08-29 08:30:36 450

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

Hippo4J通过对JDK线程池增强,以及扩展三方框架底层线程池等功能,为业务系统提高线上运行保障能力。🏗全局管控-管理应用线程池实例;⚡️动态变更-应用运行时动态变更线程池参数,包括不限于核心、最大线程数、阻塞队列容量、拒绝策略等;🐳通知报警-内置四种报警通知策略,线程池活跃度、容量水位、拒绝策略以及任务执行时间超长;👀运行监控-实时查看线程池运行时数据,最近半小时线程池运行数据图表展示;👐功能扩展-支持线程池任务传递上下文;依赖配置中心和无中间件依赖;...

2022-07-22 08:54:31 426

原创 提名 Apache ShardingSphere Committer,说说方法

文章首发在公众号(龙台的技术笔记),之后同步到 CSDN 和个人网站:xiaomage.info就在前几天,收到了 Apache ShardingSphere Vote 我成为 Committer 的邮件,心情非常高兴,被提名代表自己的贡献得到了充分的认可;在这里,非常感谢 ShardingSphere 团队给予我的帮助!写这篇文章,主要是记录自己贡献 ShardingSphere 这段时间内,代码提交的心路历程。让大家找到对的道路,能够和我一样,成为 Apache 项目的 Committer。如果有个人告

2022-07-14 08:01:49 663 3

原创 图解设计模式:身份认证场景的应用

文章首发在公众号(龙台的技术笔记),之后同步到 CSDN 和个人网站:xiaomage.info今天和大家聊一聊,如何合理的将多种设计模式放到同一个业务场景中最近接到一个认证的需求,C 端用户在购买公司保险时,需要先进行 实名认证确认身份为了保证业务复用,单独将认证的逻辑拆分为微服务模块C 端用户下单购买保险的逻辑大致如下先说下关于认证相关的一些基本知识。简单来说,你如何证明你是你自己一些云服务厂商都会有关于验证身份的付费接口,接下来我们就以腾讯云姓名、身份证二要素认证为参考进行举例说完认证知识,我们再来拆

2022-06-29 08:32:22 325

原创 跟着 Guava、Spring 学习如何设计观察者模式

文章首发在公众号(龙台的技术笔记),之后同步到掘金和个人网站:xiaomage.info今天讲解一篇行为型设计模式,什么是行为型?行为型主要负责设计 类或对象之间的交互。工作中常用的观察者模式就是一种行为型设计模式最近在尝试重构之前写过的代码。在重新梳理过业务之后,发现已有的设计场景应该能够接入到设计模式,而且查看了代码的提交记录,更是坚定了此想法保持之前的一贯作风,想要说明一个设计模式,需要三板斧支撑。什么是观察者模式?如何使用观察者模式?项目中应该如何应用?观察者模式 是一种行为设计模式,允许定义一种订

2022-06-15 08:38:23 441

原创 HIPPO-4J 1.3.0 正式发布:支持 Dubbo、RibbitMQ、RocketMQ 框架线程池

文章首发在公众号(龙台的技术笔记),之后同步到个人网站:xiaomage.infoHippo-4J 距离上一个版本 1.2.1 已经过去一个月的时间。在此期间,由 8 位贡献者 提交了 170+ commits,正式发布 1.3.0 版本。注:这是一个 兼容历史版本 的重大升级。Github:https://github.com/mabaiwan/hippo4jGitee:https://gitee.com/mabaiwancn/hippo4jHippo-4J 1.3.0 最大的功能发布就是开发出了 适配三

2022-06-13 08:02:44 713 1

原创 面试官问 OOM,别再说不会了

OOM 意味着程序存在着漏洞,可能是代码或者 JVM 参数配置引起的。这篇文章和读者聊聊,Java 进程触发了 OOM 后如何排查常说对生产环境保持敬畏之心,快速解决问题也是一种敬畏的表现欢迎关注我的公众号:龙台的技术笔记,持续输出代码设计和性能调优原创文章为什么会 OOMOOM 全称 “Out Of Memory”,表示内存耗尽。当 JVM 因为没有足够的内存来为对象分配空间,并且垃圾回收器也已经没有空间可回收时,就会抛出这个错误为什么会出现 OOM,一般由这些问题引起分配过少:JVM

2022-03-18 08:57:34 384

原创 轻量级动态线程池才是“王道”?

大家好,我是龙台。一、前言最初设计 Hippo4j 的初衷是尽可能提高以及保障线程池对于线上应用的作用,所以加了很多个性化功能,这也间接导致强依赖 Hippo4j Server 项目。自 Hippo4j 1.0.0 版本发布之后,不断有社区小伙伴提出相同的一个问题,如何能够轻量级使用动态线程池?这不,它来了。GitHub:https://github.com/acmenlt/dynamic-threadpoolGitee:https://gitee.com/acmenlt/dynamic

2022-03-14 20:48:04 1347

原创 我的开源之路:耗时 6 个月发布线程池框架,GitHub 1.7k Star。

大家好,我是程序员龙台。Hippo4J 线程池框架经过 6 个多月的版本迭代,2022 年春节当天成功发行了 1.0.0 RELEASE 版本。对这方面功能有需求的小伙伴可以入手了哈~Hippo4J简介Hippo4J 基于 美团动态线程池 设计理念开发,针对线程池增强 动态调参、监控、报警功能。通过 WEB 控制台对线程池参数进行动态调整,支持 集群内线程池的差异化配置。内置线程池参数变更通知,以及 运行过载报警 功能(支持多通知平台)。按照租户、项目、线程池的维度划分,配合系统权限,让不同的开

2022-02-11 20:19:01 687

原创 线程池如何监控,帮助开发快速定位错误?

大部分情况下,线程池的运行情况对于使用者来说是个黑盒运行情况不可知,会导致 生产出现事故问题排查困难,以及线程池参数难以定义文章围绕线程池监控展开,讨论 线程池如何监控、监控的指标以及监控数据的存储展示如何监控设想一下,如果想监控线程池的运行数据,你会怎么操作?这里提供两种常规思路线程池运行时埋点,每一次运行任务都进行统计定时获取线程池的运行数据这里我推荐第二种,因为线程池的监控 API 会通过 获取主锁来控制结果的相对准确性,性能相对较差,后面会详细说明为什么叫相对准确?因为任务和线

2021-12-29 09:25:30 315

原创 借鉴美团文章实现的动态线程池,已开源

大家好, 我是龙台给自己定了个小目标,hippo4j 年底达到 1k star!GitHub:https://github.com/acmenlt/dynamic-threadpoolSite:https://www.hippox.cn为什么写这个项目?相信很多程序员都希望一件事,那就是能够参与到某款主流的中间件开发,我也不例外虽然至今为止没有参与主流中间件的开发,但是无意中发现了一件更“有趣”的事情,hippo4jhippo4j 的起始还要从看了美团那篇线程池文章说起,Java线程池实

2021-12-01 10:40:51 951 3

原创 给你介绍下,Hippo4J 动态线程池基础架构

很多小伙伴知道小编从今年六月份开始,陆陆续续开始提交 Hippo4J 动态线程池项目经过 200+ 的 Commit,也是快要能发布 1.0.0 正式版本,今天就写一篇文章正式介绍下 Hippo4J 的项目架构Hippo4J GitHub:https://github.com/acmenlt/dynamic-threadpool小伙伴如果访问 GitHub 速度慢,可以通过改 Host 的方式提高访问速度,修改 Host 方案1. 架构设计简单来说,Hippo4J 从部署的角度上分为两种角色

2021-11-08 08:19:11 3347 1

原创 美团的动态线程池,不依赖中间件可以实现么?

美团的动态线程池,不依赖中间件可以实现么?1. 为什么写这个项目?2. 它解决了什么问题?3. 它有什么特性?4. 如何运行 Demo?5. 查看源码能收获什么?6. 回顾总结1. 为什么写这个项目?大家好,我是龙台。美团线程池文章 介绍中,因为业务对线程池参数没有合理配置,触发过几起生产事故,进而引发了一系列思考。最终决定封装线程池动态参数调整,扩展线程池监控以及消息报警等功能在开源平台找了挺多动态线程池项目,从功能性以及健壮性而言,个人感觉不满足企业级应用因为对动态线程池比较感兴趣,加上想写

2021-10-27 23:51:52 575 1

原创 如果线上遇到了OOM,该如何解决?

OOM 意味着程序存在着漏洞,可能是代码或者 JVM 参数配置引起的。这篇文章和读者聊聊,Java 进程触发了 OOM 后如何排查常说对生产环境保持敬畏之心,快速解决问题也是一种敬畏的表现为什么会 OOMOOM 全称 “Out Of Memory”,表示内存耗尽。当 JVM 因为没有足够的内存来为对象分配空间,并且垃圾回收器也已经没有空间可回收时,就会抛出这个错误为什么会出现 OOM,一般由这些问题引起分配过少:JVM 初始化内存小,业务使用了大量内存;或者不同 JVM 区域分配内存不合理.

2021-10-24 11:03:38 731 2

原创 Snowflake(雪花算法),什么情况下发生冲突?

分布式系统中,有一些需要使用全局唯一 ID 的场景,这种时候为了防止 ID 冲突可以使用 36 位的 UUID,但是 UUID 有一些缺点,首先他相对比较长,另外 UUID 一般是无序的有些时候我们希望能使用一种简单些的 ID,并且希望 ID 能够按照时间有序生成什么是雪花算法Snowflake 中文的意思是雪花,所以常被称为雪花算法,是 Twitter 开源的分布式 ID 生成算法Twitter 雪花算法生成后是一个 64bit 的 long 型的数值,组成部分引入了时间戳,基本保持了自增.

2021-10-21 13:11:35 971

原创 DataSource接口,一个被大多数程序员忽略的接口

代码不多,文章不长,简要描述了下 DataSource 演进过程的故事文章产出背景最近这段时间一直忙着集团内部安全等保加密相关事项,初步决定使用 shardingsphere 来进行因为项目众多,需要兼容的需求也随之而来,加密数据源和动态数据源的互相兼容,以及分库分表和加密数据源的兼容等等,反正一言不合就兼容无疑,上面这些或多或少都和数据源有关系,所以在处理不同兼容性等问题时,也让我再次对 DataSource 产生了了解的兴趣,这个曾经被很多人遗忘的重要概念老时代的数据查询在很久很久

2021-09-12 16:48:54 9501 5

原创 线上问题复盘,JVM Fast Throw 的故事

文章字数 1.3k 左右,阅读时长 5 分钟 首先,这是一个 悲伤的故事,涉及到JVM 底层优化的知识点。想到第一次碰到这种问题时的懵逼,应了句老话:书到用时方恨少!负责的消息中台在 晚上八点左右,运维群里反馈大量用户接收不到短信消息。登陆 Kibana 查找对应的 Error 日志,发现出现了 大量的下标越界异常当时更…,线上问题得到了修复。但是,出现问题可不得找到问题的产出原因,不然下次有可能还会出现因为在 ELK 上进行 日志分析不太方便,难以根据对应异常进行不同纬度上的统计分析,所以联系.

2021-07-11 11:44:16 503 3

原创 彻底掌握分布式事务2PC、3PC模型

前言工作中使用最多的是本地事务,但是在对单一项目拆分为 SOA、微服务之后,就会牵扯出分布式事务场景文章以分布式事务为主线展开说明,并且针对 2PC、3PC 算法进行详细的讲解,最后通过一个 Demo 来更深入掌握分布式事务,文章目录结构如下什么是事务什么是分布式事务DTP 模型和 XA 规范什么是 DTP 模型什么是 XA 规范2PC 一致性算法2PC-准备阶段2PC-提交阶段2PC 算法优缺点3PC 一致性算法JDBC 操作 MySQL XA 事务结言.

2021-05-07 17:46:56 493

原创 火遍全网的Hutool,如何使用Builder模式创建线程池

前言Builder 设计模式也叫做 构建者模式或者建造者模式,名字只是一种叫法,当聊起三种名称的时候知道是怎么回事就行Builder 设计模式在作者编码过程中,属于比较常用的模式之一。优秀的设计模式总是会受到广大开发者的青睐,Hutool 也是其中之一因为上周编写的业务需要用到线程池,就去 Hutool thread 包下看了看,还真有惊喜,学习到了一种之前编码中没用过的 Builder 模式实现这里必须提一句:设计模式重要的是思想,一种设计模式可能不止一种实现方式Builder 模式文章大纲.

2021-03-15 17:12:16 1636 4

原创 龙台的技术笔记

作者花名龙台,CSDN博客专家,目前就职北京某医药领域公司,任公司系统架构组职位。喜欢研究框架底层源码,知其然知其所以然,是个爱折腾、爱钻研、心有不羁 IT 男~希望通过自己的努力,帮助更多热爱技术的小伙伴收获知识!博客主要分享高并发、中间件、分布式、框架底层源码等知识,文章以下述 TAG 为主题展开分享【设计模式】【源码解析】【高并发编程】【备战数据库】【Spring 知识】【SpringCloud Alibaba】这里引用旭博简介的一句话,很喜欢我狂妄,我自负,就像我曾.

2021-01-21 11:58:34 426 4

原创 1.1w字,10图彻底掌握阻塞队列(并发必备)

前言什么是队列队列是一种先进先出的特殊线性表,简称 FIFO。特殊之处在于只允许在一端插入,在另一端删除进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列队列在程序设计中使用非常的多,包括一些中间件底层数据结构就是队列文章首发自公众号:【源码兴趣圈】,微信搜索关注这个高质量原创技术,定期分享高并发、中间件、分布式、框架源码等知识点什么是阻塞队列队列就队列呗,阻塞队列又是什么鬼阻塞队列是在队列的基础上额外添加两个操作的队列,分别是:支持阻塞的插.

2021-01-07 18:42:03 440 1

原创 面试:如何通过 MyBatis 查询千万数据并保证内存不溢出?

由于现在 ORM 框架的成熟运用,很多小伙伴对于 JDBC 的概念有些薄弱,ORM 框架底层其实是通过 JDBC 操作的 DBJDBC(JavaDataBase Connectivity)是 Java 数据库连接, 说的直白点就是使用 Java 语言操作数据库由 SUN 公司提供出一套访问数据库的规范 API, 并提供相对应的连接数据库协议标准, 然后 各厂商根据规范提供一套访问自家数据库的 API 接口文章大数据量操作核心围绕 JDBC 展开,目录结构如下:MySQL JDBC 大数据量操作.

2021-01-04 10:40:06 8336 6

原创 MySQL 千万数据量深分页优化, 拒绝线上故障!

前言优化项目代码过程中发现一个千万级数据深分页问题,缘由是这样的库里有一张耗材 MCS_PROD 表,通过同步外部数据中台多维度数据,在系统内部组装为单一耗材产品,最终同步到 ES 搜索引擎MySQL 同步 ES 流程如下:通过定时任务的形式触发同步,比如间隔半天或一天的时间频率同步的形式为增量同步,根据更新时间的机制,比如第一次同步查询 >= 1970-01-01 00:00:00.0记录最大的更新时间进行存储,下次更新同步以此为条件以分页的形式获取数据,当前页数量加一,循环..

2020-12-25 16:30:20 2728 6

原创 包含英文半角逗号的文件下载引发的 chrome bug

前言公司内部使用 oss 作为文件存储服务器,测试提出一个使用 chrome 浏览器下载文件的 bugERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION具体上传下载流程如下:使用 chrome 浏览器上传文件名称包含英文半角逗号的文件上传操作成功,根据 oss 中文件 url 进行下载操作请求可以正常发出,但是响应时浏览器发生崩溃现象,页面提示错误其它浏览器无此问题,多处查看判断为谷歌浏览器问题,暂定义为 bug下面会根据步骤说明此..

2020-12-21 09:50:49 1147 3

原创 超火的钉钉自定义机器人原来是这么设置的

企业内部有较多系统支撑着公司的核心业务流程,譬如CRM系统、交易系统、监控报警系统等等。通过钉钉的自定义机器人,可以将这些系统事件同步到钉钉的聊天群接入自定义机器人很简单,大概以下几步点击群设置选择智能群助手点击添加机器人最右边按钮选择自定义点击添加后设置机器人对应属性下面会详细介绍其中的步骤,尤其是设置机器人属性这一块自定义机器人首先,我们要先创建对应的群聊,一般而言钉钉机器人创建可以分为三种方式直接创建在开发相关人员大群里,优缺点也比较明显。优点是如果你没注意到的报警信息,有.

2020-12-20 14:15:51 8272 10

原创 10 道常见 Redis 缓存面试,不看答案你会几道题

文章首将对应问题罗列,可以根据目录找到感兴趣的AOF 为什么直接采用文本协议AOF 为什么把命令追加到 aop_buf 中Redis 实现分布式锁的方式有几种?最好的是哪一种Redis 中的 CAS 操作Redis 中的 String 数据结构底层实现Redis 中的 Key 过期机制Redis 中的 从节点会出发过期策略么结合项目中使用的 Redis 客户端说一下序列化的方式为什么 Redis 是单线程的Redis 是单线程的(基于主线程),为什么这么快AOF 为什么直接采用.

2020-12-20 11:49:05 600 2

原创 10 道并发编程基础题,不看答案你会几道题

文章首将对应问题罗列,可以根据目录找到感兴趣的并发和并行指的是什么多线程中的忙循环指什么什么情况下会发生上下文切换什么是临界区概念线程池核心线程疑问多线程同步和互斥有哪几种实现方式AQS 实现过程Atomic 原子操作是如何实现的为什么要使用线程池为什么不使用 Executors 创建线程池并发和并行指的是什么并发指的是多个任务交替执行,而并行则是指真正意义上的“用时进行”实际上,如果系统只有一个 cpu,而使用多线程时,那么真正系统环境下是不能并行的,只能通过切换时间片的.

2020-12-20 11:33:53 286 1

原创 10 道数据结构算法题,不看答案你会几道题

文章首将对应问题罗列,可以根据目录找到感兴趣的ArrayList 和 LinkedList 区别?结合数据结构说明B Tree 和 B+ Tree 区别?两个 Tree 对比各自优势Mysql 数据库为什么要使用树结构充当索引结构LinkedList 的插入时间复杂度冒泡排序的 3 种方式?哪种性能最好冒泡排序的平均时间复杂度以及空间复杂度分别是多少平衡二叉树和红黑树的区别HashMap 中的 key 可以存储可变引用类型么?有什么坏处?有什么解决方案什么是Trie树(字典树)为什么.

2020-12-19 17:50:44 1395 1

原创 10 道 Java 基础面试,不看答案你会几道题

文章首将对应问题罗列,可以根据目录找到感兴趣的如何使一个类不可变为什么 Stirng 类是不可变的为什么成员变量会赋默认值,局部变量需要显示赋值Java 中手动出发 GC 垃圾回收的方式重写和重载的区别Java 中 switch 可以包含的判断条件hashCode 与 equals 区别装箱运算效率如何Java 中存在指针么使用最快的方式计算 1 * 2如何使一个类不可变将类声明为 final,使其无法被继承所有域都使用 private 进行修饰,不允许被访问.

2020-12-19 16:26:00 200 2

原创 python switch 多分支选择的实现

相信玩过几天 python 的小伙伴都知道,python 里并没有 switch 关键字实现,那这是为什么呢?根据官方说法 PEP 3103 - A Switch/Case Statement.实现 switch case 需要被判断的变量是可哈希和可比较的,这与 python 提倡的灵活性有冲突。在实现上优化不好做,可能到最后最差的情况汇编出来和 if else 组是一样的,所以 python 没有支持但是没有 switch 关键字,不代表不能实现类似效果,接下来通过几个小程序来说明此类问题i.

2020-12-19 14:35:27 4977 3

原创 mac os 下安装及使用 telnet 命令进行 socket 测试

什么是 telnettelnet 协议是 TCP/IP 协议族群中的一份子,是远程登录服务器的标注协议和主要方式可以把 telnet 当作一种通信协议,可以访问目标主机上的软、硬件资源,telnet 平常就是查看某个端口是否可访问。我们在开发的过程中,tomcat 项目启动默认端口为 8080,那么在启动了服务之后,可以使用 telnet 查看端口是否可用在终端使用者电脑上使用 telnet 程序输入命令,命令会在目标服务器上运行,就像直接在目标服务器的控制台上输入一样mac os 安装 te.

2020-12-15 12:44:08 5553 4

原创 linux centos 7.x 安装 python3.x 替换 python2.x(亲测有效)

前言一般而言,新的 centos 7.x 中自带的 python 都是 2.x 的版本。对于我们运行 python 软件支持并不友好,所以需要进行升级操作下载 python3 的包之前,要先安装相关的依赖包,用于下载编译 python3:yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make安装 pip默认的 centos7 .

2020-12-13 17:39:36 8012 10

原创 springboot 如何优雅的使用 alibaba rocketmq 消息队列

文章保证,一路执行下去不会报错,报错你找我。如果觉得有用,希望屏幕前的大佬,点赞➕关注只有想到的方面多时,才能在够实际运用中发现更多的问题,这也是作者给读者最好的礼物使用这篇文章 docker 安装 rocketmq,肯定没问题新建 springboot 项目新建一个 springboot 项目,pom 文件如下,rocketmq 使用 apache 封装的 jar<?xml version="1.0" encoding="UTF-8"?><project xmlns..

2020-12-12 17:08:46 5539 2

原创 通俗易懂,如何最便捷 docker 安装 rocketmq 队列

文章保证,一路执行下去不会报错,报错你找我。如果觉得有用,希望屏幕前的大佬,点赞➕关注如果想搭建一个本地玩的 rocketmq,可以继续向下看,绝对让你体会“傻瓜式”点点点安装文章中的内容皆是作者 “踩屎”无数,总结出来的绝对精髓能够来看 rocketmq 的安装,证明已经了解基本概念,也就不在这班门弄斧了rocketmq 有两个非常重要的概念,nameserver 和 broker,文章也是围绕这两个点进行安装,提供 便捷版本 & 可靠版本 两种方式文章大纲如下:安装 nam..

2020-12-12 16:52:44 4956 1

原创 spring InitializingBean 接口都不知道,源码还是缓缓吧

最近在构思中台如何通过一个接口,发布出多种协议。比如说:发布 dubbo、feign 或者阿里 hsf 接口的同时发布出同语义的 http 接口最后想到的是扫描自定义注解,然后注册到 mvc 中。所以就去看了下 mvc 注册 mapping 流程,就引发了 本文的主角 InitializingBean本文大纲如下:InitializingBean 是什么耍一耍 InitializingBeanInitializingBean 如何被加载mvc 源码中如何使用结言Initializ.

2020-12-10 16:23:52 6832 8

原创 1.1 w字,18 张图,彻底说透 springboot starter 机制

前言最近在整理公司公共 starter 内容,也是想写一篇关于 starter 文章,让更多不了解的小伙伴掌握这项核心技能文章从零到一的封装设计 starter,并提供可插拔 starter 以及元数据配置等说明,并在可插拔上与开源 zuul 进行比对,希望小伙伴看后有所收获文章大纲如下:starterstarter 定义starter 好处自定义 starterstarter 命名创建 springboot 项目pom 依赖配置自动配置类spring.factorie.

2020-12-07 13:55:41 7723 20

Mybatis 架构设计分享.pdf

Mybatis 架构设计分享,掌握 JDBC 与 Mybatis 关系等底层源码知识,图解 Mybatis 底层源码流程

2020-10-24

空空如也

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

TA关注的人

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