Dubbo SPI机制
发表于|更新于|后端
|浏览量:
Dubbo SPI 机制

文章作者: 褚成志
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 褚成志的分享站!
相关推荐
2026-04-09
Spring
指定 DAO接口放置的包 com.baizhiedu.dao 123456789+ 编码 ```markdown# 实战经常根据需求 写的代码1. 实体2. 表3. 创建DAO接口4. 实现Mapper文件 5. Spring与Mybatis整合编码 搭建开发环境(jar) 1234567891011121314151617181920212223242526272829<dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.1.14.RELEASE</version></dependency><dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis...
2026-04-09
依赖冲突的发现和解决
依赖冲突的发现 现象一:一个类的行为不按照预期,本来这个类应该是有这个方法的,但是引入一个新的依赖之后就开始报错找不到方法了,一般就是依赖冲突的时候 Maven 自己选择了一个不符合自己预期的依赖导致报错。 依赖冲突的解决使用 Maven helper 找到对应类所在 jar 的依赖都由谁导入,之后排除掉不符合自己预期的依赖即可。 一般直接在插件右键就可以 exclude
2026-04-09
ApacheMapStruct常用总结
Apache MapStruct 常用总结 只是简单使用还是比较简单的,但是有一些细节还是要注意的,不然会不知不觉出错 MapStruct 是一个用于生成类型安全的 bean Mapper类。也就是不同类型对象之间的转换器,一般的assembler以及convertor,不用手动写实现避免错误。 https://mapstruct.org/documentation/stable/reference/html/#Preface 要做的就是定义一个映射器接口,该接口声明任何所需的映射方法。在编译期间,MapStruct 将生成此接口的实现。这个实现使用普通的Java 方法调用来映射源对象和目标对象 @Mapping方法:https://mapstruct.org/documentation/stable/api/org/mapstruct/Mapping.html 依赖12345678910111213141516171819202122232425262728293031323334...<properties> <org.mapstruct.vers...
2026-04-09
Netty的整体结构
Netty 的整体结构 https://netty.io/ Netty是一个NIO客户端服务器框架,可以快速轻松地开发网络应用程序,例如协议服务器和客户端。 它极大地简化和简化了诸如TCP和UDP套接字服务器之类的网络编程。 “快速简便”并不意味着最终的应用程序将遭受可维护性或性能问题的困扰。 Netty经过精心设计,结合了许多协议(例如FTP,SMTP,HTTP以及各种基于二进制和文本的旧式协议)的实施经验。 结果,Netty成功地找到了一种无需妥协即可轻松实现开发,性能,稳定性和灵活性的方法。 设计:适用于各种传输类型的统一API-阻塞和非阻塞套接字。基于灵活且可扩展的事件模型,可将关注点明确分离。高度可定制的线程模型:单线程,一个或多个线程池,例如SEDA。真正的无连接数据报套接字支持(从3.1开始) 使用方便:记录良好的Javadoc,用户指南和示例,没有其他依赖关系,JDK 5(Netty 3.x)或6(Netty 4.x)就足够了 表现:更高的吞吐量,更低的延迟。减少资源消耗。减少不必要的内存复制 安全:完整的SSL / TLS和StartTLS支持 ...
2026-04-09
Java监控服务器信息
1、引入依赖1234567891011<!-- 获取系统信息 --><dependency> <groupId>com.github.oshi</groupId> <artifactId>oshi-core</artifactId> <version>5.8.2</version></dependency><!-- lang3 工具包 --><dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId></dependency> 2、依赖工具类 目录结构: Model 1234567891011121314151617181920212223242526272829303132333435363738394041/** * CPU相关信息 */public ...
2026-04-09
NIO零拷贝
java的 transformTo transformFrom java是平台无关的,但是JVM是平台相关的。 磁盘上文件拿出来发给用户最原始的实现(c实现)内核空间系统调用–上下文切换–直接内存访问DMA 数据**拷贝到内核空间缓冲区(页缓存)–上下文切换–又拷贝**到了用户空间的缓冲区 内核空间系统调用–上下文切换–用户空间 数据**拷贝到内核空间缓冲区(页缓存)–又拷贝**到了网卡的socket缓冲区–上下文切换–返回用户空间 用户空间没有对数据修改 4次上下文切换 2次系统调用 4次数据拷贝 零拷贝(c实现)完全依赖操作系统的,不会有数据在用户内核之间拷贝 sendfile() 内核空间系统调用–上下文切换–直接内存访问DMA 数据**拷贝到内核空间缓冲区(页缓存)–数据拷贝**到目标socket的缓冲区–缓冲区到DMA网卡发送–上下文切换–返回用户空间 真正的零拷贝(c实现)文件描述符可以描述数据的一些大小偏移,socket缓存里面只是存这些, DMA 拷贝内核缓冲区(页缓存)之后–Linux 2.4 之后,文件描述符gather操作,数据不会kernel...
公告
👋 你好,我是褚成志,一名专注于云原生与后端架构的工程师。
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!
