首页
学习
活动
专区
工具
TVP
发布

Java艺术

专栏作者
146
文章
224001
阅读量
37
订阅数
如何开发一个项目脚手架
创建一个项目通常需要依赖很多的二/三方组件,我们很难记住每个组件的maven坐标,并且有些组件的初始化工作很繁琐,一堆配置项很难记住。如果没有脚手架,每当需要创建一个新的project,我们通常会选择基于现有的project复制一份,然后修改修改。
吴就业
2022-09-01
6630
这么理解TLS协议,以及TLS协议的握手过程
如今HTTPS已被广泛使用,但作为程序员的我们,真的理解这个'S'了吗?如果还没有,这篇入门级介绍或许能帮到你。
吴就业
2022-09-01
1.4K0
Dubbo扩展支持自适应等待无损下线
无损上下线是服务治理不可忽视的问题,在应⽤上下线发布过程中,如果上下线不平滑,就会出现短时间的服务调⽤报错,如连接被拒绝(Connection refused)、请求超时或请求异常。
吴就业
2022-04-28
7310
Dubbo之HTTP RPC vs Dubbo RPC性能压测
公司内部的RPC框架,经过长时间的发展,已经由完全自研演进到底层替换为Dubbo实现,但使用方式(API)还是不变。由于使用了PB序列化协议,以及业务码+操作码定义接口的方式,非常影响开发效率,可理解性差,链路排查困难等问题,不断被业务方吐槽。因此就有了第三个版本,继续基于Dubbo扩展点,设计开发提供接近Dubbo原生的使用方式。
吴就业
2022-03-29
1K0
终于知道Dubbo泛化调用这个功能的用途了
两年前,笔者读Dubbo源码的时候就看到了泛化调用(GenericService)的逻辑,当时不知道为啥会有这个逻辑,想不明白,于是就跳过了。
吴就业
2022-03-29
5850
基于扩展点,为dubbo支持跨业务调用
很多规模稍大点的公司,内部都会有多个业务部门,这些业务部门都有自己的业务产品。每个业务部门开发的产品部署的环境物理上也都是相对隔离的,但这些业务部门之间可能存在合作关系,业务关联,因此就有了跨业务RPC调用的需求。
吴就业
2022-03-29
3120
一个轻量的条件表达式引擎-JExpr Engine
由于需求缘故,笔者最近开发了一个IDEA的代码扫描插件,在这过程中,发现规则匹配虽通过设计模式实现,但发现规则的代码大多相似,可以说重复,除了配置不同。因此想抽离成配置方式扩展功能,而使用规则引擎感觉又太重,这就需要一个条件表达式匹配引擎,这个简单的表达式引擎由此而来。
吴就业
2022-03-29
7570
XXL-JOB之MySQL导致的触发时间误差一秒
前面介绍,我们重构了XXL-JOB,在测试环境升级到新版本一段时间后,依然发现很多日记的触发时间是延迟了一秒才触发的。但经过各种优化后手段后,经统计发现,触发的耗时累加起来已经不会超过1秒了,因此,我们怀疑是MySQL时间差与容器时间差的问题。
吴就业
2021-12-31
8730
响应式编程实现异步RPC,提升xxl-job调度吞吐量
在xxl-job中,RPC即用于调度中心请求执行器执行job、kill job,也用于执行器请求调度中心主动注册、执行结果上报。
吴就业
2021-12-31
1K0
Quartz分布式调度存在的性能问题分析
Quartz分布式调度的实现是去中心化的,需要依赖数据库在集群间同步调度状态,基于分布式锁实现一致性调度,而我们当前使用的xxl-job版本(1.9.x)的分布式调度又是基于Quartz实现,因此我们所了解到的xxl-job调度性能差,本质上就是Quartz的调度性能差。
吴就业
2021-12-20
2.2K0
Java中的中断机制
在Java中,用于终止一个正在运行中的线程,并非调用stop方法,而是自行设置一个标志位,在安全点检测标志位,决定是否退出,但也可能会因为线程被挂起,无法走到标志位。因此,Java线程提供了中断机制,Thread类提供了中断线程执行的调用方法:interrupt,用于中断因线程挂起的等待,调用interrupt方法后,线程会被唤醒,待下次cpu调度就会继续执行中断后的代码 。
吴就业
2021-12-13
9640
如何实现多个逻辑集群的均衡选主
如分布式数据库TiDB,其存储引擎TiKV基于Raft算法实现分布式数据一致性,TiKV可以看成是一个大型Map,通过MulitRaft将这个大的Map分成多个Region,每个Region使用一个Raft Group实现数据一致性。
吴就业
2021-11-25
1.1K0
Go语言给我的感受
使用Go已有两个月,Go给我的印像就是简单。社会很复杂,但Go很简单。谈不上喜欢Go,但也不抵触。Go已经成为我的第二门语言,也会帮助我在云原生方向的深入学习。
吴就业
2021-10-26
4110
BFE原生路由转发功能分析
路由转发是BFE作为一个七层流量代理服务的核心功能,BFE设计了一套支持多租户、多机房的路由转发模型。
吴就业
2021-10-26
1K0
我们重写了七层流量代理BFE的路由转发机制
以http请求为例,当请求到达BFE时,BFE首先根据请求域名确定租户(哪个业务线),再根据请求的路径确定集群(服务/微服务),然后确定子集群(机房),最后负载均衡选择实例(服务进程)。
吴就业
2021-10-14
8510
反向代理连接数上限为什么是65535
无论是Nginx还是百度开源的BFE,或是其它四层/七层流量代理,都会存在Socket连接数上限问题。
吴就业
2021-09-24
1.4K0
全球化多租户七层流量转发平台
标题出现了三个关键词:全球化、多租户、七层流量转发。我们倒序介绍这三个词,最后再通过一张架构图展开理解所谓的全球化架构。
吴就业
2021-09-24
8180
延迟消息队列设计
由于Kafka不支持延迟消息,而目前公司技术栈中消息中间件使用的是Kafka,业务方希望使用RocketMQ满足延迟消息场景,但如果仅仅只是需要延迟消息功能而引入多一套消息中间件,这会增加运维与维护成本。在此背景下,我们希望通过扩展Kafka客户端提供延迟消息的支持。
吴就业
2021-09-02
9890
中间件/组件的开发流程
跟大家分享下我们公司中间件/组件的开发流程吧,让大家能了解中间件/基础架构实际工作内容、开发流程,并从这个过程中分析我们需要具备哪些能力,或许你也会对这个方向感兴趣。
吴就业
2021-08-06
8380
如何将项目打包部署到私有仓库(Nexus)
开发个人项目笔者喜欢使用的构建工具是Gradle,所以去年写的这篇《教你如何将开源项目发布到maven中央仓库》介绍的是Gradle工程如何配置将开源项目发布到maven中央仓库。而公司项目使用的是maven,并且不是推送到maven中央仓库,而是推送到私有仓库nexus,本篇将介绍如何将sdk项目打包部署到私有仓库。
吴就业
2021-07-15
1.6K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档