Skip to content

Latest commit

 

History

History
25 lines (19 loc) · 2.46 KB

README_CN.md

File metadata and controls

25 lines (19 loc) · 2.46 KB

framework-dev-learning

本项目主要给出独立开发框架(如MQ/RPC等)时所需用到的核心技术。

常见技术列表:

技术 module/地址 应用场景 状态 其他
动态代理 dynamic-proxy RPC
MQ
done
字节码编程
java agent,
instrument,
byte buddy
bytecode-program
java-agent-and-instrument
java-agent-and-instrument-test
一个简单starter实现
非侵入式应用监控
,应用埋点,
方法增强,
热替换等
done 应用监控,如skywalking,
pinpoint, zipkin等;
框架开发,如dubbo、spring等;
其他,如arthas, jrebel等
连接池 connection-pool Druid等 done github上一个自定义实现的连接池:
https://github.com/aloys-jun/connect-pool
Java JUC https://github.com/evasnowind/JUC-learning done
Java CAS java-cas done
Java SPI java-spi JDBC done
Java Zero Copy java-zero-copy 高性能IO,如kafka done
Dubbo SPI Dubbo to do
Spring高级应用 spring-senior done 事件通知机制:比如载入某个实例完成后
通过该机制告知相关类继续往下走
Spring AOP spring-aop done
Spring Factories,
原理与使用,
Spring Import,
Spring Condition
spring-conditional-annotation
spring-import
框架开发 done 利用spring开发框架,
第三方客户端的开发,
解决客户端的集成问题
spring-boot-starter
实现原理
tiny-http-server-spring-boot-starter
一个简单starter实现
自定义
spring boot starter
done 开发一个框架时,自定义实现
一个starter,便于作为第三方
库,将客户端集成其他应用中
netty netty-httpserver 高性能网络IO,
如RocketMQ
done rocketmq, dubbo, seata
等。kafka没用netty,
但也用了NIO。
动态数据源切换,
读写分离
dynamic-datasource 数据库中间件,
读写分离,如
MyCAT,
shardingsphere-jdbc
done 其他参考资料:动态数据源切换
集成多数据源