Skip to content

常见框架开发技术的demo汇总,包括java字节码编程(java agent, instrument, byte buddy), java动态代理,自定义classloader,java spi, zero copy, netty, spring aop/condition,spring boot starter, 数据库连接池等。

License

Notifications You must be signed in to change notification settings

evasnowind/framework-dev-learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

framework-dev-learning

This repo gives examples of different Java concept and programming technique that are frequently used in the development of frameworks. For instance, when we want to create an RPC framework from scratch, we need to know Java dynamic proxy and serialization.

Here is the list:

Technique module/link scenario status remark
dynamic proxy dynamic-proxy RPC
MQ
done
byte program
java agent,
instrument,
byte buddy
bytecode-program
java-agent-and-instrument
java-agent-and-instrument-test
java monitor by java agent
APM
,tracking,
method
enhancement,
hot module
replacement
done skywalking,
pinpoint, zipkin;
framework development
,eg:dubbo、spring,
arthas, jrebel and so on.
connection pool connection-pool Druid, C3P0,
HikariCP
done a simple connection pool:
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 high performance
IO,like kafka
done
Dubbo SPI Dubbo to do
Spring event spring-event done event notify
Spring lifecycle spring-lifecycle
spring-dynamic-inject-interface
mybatis(e.g
implementation
of mapper)
done
Spring AOP spring-aop done
Spring Factories,
Spring Import,
Spring Condition
spring-conditional-annotation
spring-import
framework
development
done spring boot starter
spring-boot-starter
tiny-http-server-spring-boot-starter
a simple starter
implement a
spring boot starter
done
netty netty-httpserver network IO,
eg: RocketMQ
done rocketmq, dubbo, seata
and so on. Kafka doesn't
use netty,but use NIO。
dynamic datasource
separate read
write
dynamic-datasource db midware,
separate read write,
MyCAT,
shardingsphere-jdbc
done other :dynamic datasource
reactor
programming
reactor-programming webflux,
Spring Cloud
Gateway,
soul
done

Support

Supported by Jetbrains IDEA

About

常见框架开发技术的demo汇总,包括java字节码编程(java agent, instrument, byte buddy), java动态代理,自定义classloader,java spi, zero copy, netty, spring aop/condition,spring boot starter, 数据库连接池等。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages