![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 75
herriman
计算机小硕一枚
展开
-
一个业务处理应用的head first设计
一个业务处理应用的思路设计,配图为参加csdn活动的照片。请提建议或者意见。原创 2023-01-15 20:17:13 · 138 阅读 · 0 评论 -
rabbitmq-java-client源码结构设计与分析
rabbitmq-java-client源码中使用nio很有特色,分析一下。原创 2022-03-31 22:56:12 · 2440 阅读 · 0 评论 -
一些常见框架中的数据传输方式与处理类的设计
## 一、前言 最近做了一个技术交流,主要是某银行系统中的服务编排处理框架原理。框架的采用对业务人员与技术人员进行了很好的分工。后来在做一个项目中碰到了一个数据传输处理的方法感觉也很有意思,结合之前在学习spring中碰到的框架处理方法,做一个设计总结。 总的来说,看过不少框架后,感觉银行的框架中规中矩,四平八稳,过程简单,容易理解。但缺少一些著名框架中的亮点与艺术感,比如抽象层次丰富,开发人员最小化工作,特别是元处理类(类比元数据)的强大。 对处理类进行配置,解析并存放在m...原创 2021-07-04 22:23:37 · 184 阅读 · 2 评论 -
如何设计一个结构合理的java项目
1、前言最近写一个Java处理工具,是一个springboot的非web项目,正好借这个机会总结一下自己的经验,当开发一个Java应用时,应该全局考虑哪些方面,包括如何划分功能包,如果建立对象关联,以及如果串起流程;另一方面在这个过程中,作为喜新厌旧的程序员,全面应用Jdk8的新特征,比如其中的语法糖还是蛮甜的。2、类划分功能包web项目是很多人接触最多的项目,与工具项目有相似点,也有不同点。一般的单体的web项目通常的包,表面上按这样划分:多层次业务模块->controller->se原创 2021-02-07 20:00:20 · 1197 阅读 · 0 评论 -
回忆背调业务核心组件的开发
这是我第一次做java技术比较全面和复杂的系统,当时刚从事互联网开发,它与传统单机增删改查的Web应用差别很大,那只是业务复杂。当时除了学习很多工具技巧外包括maven/git使用都才入门,线程处理的相关技术整合使用还不多,自己一个人一下做这个还是蛮有压力的,新的工作需要打响第一炮。这时我只看过一部分dubbo与druid源码,有了些想法,最后一步步也顺利完成了。 开发一个系统其实就...原创 2020-01-11 00:11:55 · 570 阅读 · 0 评论 -
基于netty的通讯协议的设计思考
序:本文分析了dubbo,rocketmq,以及我们自己项目中的通讯协议的设计与使用。分析了如何设计一个通讯协议。一、dubbo协议的设计协议比如说是dubbo,传输可能是:mina、netty、grizzy,序列化可能是:dubbo、hessian2、java、json 。那么这一切都是如何从业务过程中关联起来,并且如何设计的呢?1. 从rpc到remote一个接口方法的动态实现了远程...原创 2019-12-28 00:14:17 · 494 阅读 · 0 评论 -
rocketmq源码分析、整体结构与类关系设计的思考
前言: 本文目的:一个复杂的中间件是如何从整体上分模块以及设计核心类之间关系 一些重要场景的设计分析与设计模式使用 有哪些抽取的公共模块,公共底层的东西及如何重用一、简介: RocketMQ是一款分布式、队列模型的消息中间件,是阿里巴巴集团自主研发的专业消息中间件,借鉴参考了JMS规范的MQ实现,更参考了优秀的开源消息中间件KAFKA,实现了业务消峰、...原创 2019-11-22 16:57:14 · 563 阅读 · 2 评论 -
java并发知识汇总
项目中用到并发的地方不多,一次是多个规则线程并发校验文档,一个是多个并发监控应用,比较简单,但查找并发资料后,发现有更好的方式。于是抽空想全面了解并发,可查到网上相关并发的技术文章很多,但是对我来说有这些问题:[list][*]有的只讲一个技术点[*]有的代码多缺少理解[*]有的层次不够深[/list] 所以自己总结一下了,不是百科全书也不是字典,只是一定知识...原创 2017-02-23 16:57:33 · 166 阅读 · 0 评论 -
处理web文件上传的FileUpload包的代码设计分析与上传监控
FileUpload 是 Apache commons下面的一个子项目,用来实现Java环境下面的文件上传功能,与常见的SmartUpload齐名。 上传我们一般就直接使用现成的工具来实现就好了,很多工具非常好用,如果理解了它的原理,不仅有助于选择不同的工具,还有助于处理遇到的问题,或者改进工具,或者使用工具中不知道的其它功能。 [b]本文章分三部分:首先介绍基...原创 2017-02-16 15:52:35 · 373 阅读 · 0 评论 -
从JMS标准看接口编程、模块整合及相关技术jndi,spi等
最近看了一篇微信上的文章:是 【码农翻身】公众号的刘欣作者写的Java帝国之JMS的诞生。最近恰好关注到支付宝的开源分布式消息中间件–Metamorphosis(MetaQ)(现在这个项目改名为RocketMQ)非常想看一下源码,但我知道阿里的一般比较复杂,所以从简单的activeMQ开始,当然这个JMS标准产生过程看看更好。 http://mp.weixin.qq.com/s/...原创 2017-02-12 22:50:11 · 245 阅读 · 0 评论 -
maven初探
以前和一个做互联网的朋友聊天,问我有没有用maven,我说没有,他们却是离不开maven。后来我想了一下,为什么我们这边不用呢?他们一大批人就在维护一个系统,面对性能要求,不断优化优化再优化是唯一目标。 我这边一个人要管理多个项目,和多个用户交流,还要带一些技术人员的工作,所以用熟悉的、稳定的、简单的技术框架(而且是蛮老的技术),很多时候从基础项目复制就可以立即开始新项目了,这样...原创 2017-05-18 10:46:16 · 120 阅读 · 0 评论 -
druid 源码分析与学习(含详细监控设计思路的彩蛋)
Druid是阿里巴巴公司的数据库连接池工具,昨天突然想学习一下阿里的druid源码,于是下载下来分析了一下。也就2个多小时粗略看了一下,中间有些知识点没见过,不懂,现查BAIDU学习。简单总结一下,边总结边继续看代码,估计错误不少,欢迎指正! 在自己看之前,想找找druid源码分析,居然在BAIDU上搜索不到任何信息,只是介绍如何配置,只能自己看过来了。这里的介绍,细节不说了...2016-07-01 13:48:52 · 682 阅读 · 0 评论