在以往实施的分布式系统项目中,通过实践,同行交流,及参考github中优秀的Java开源项目,有个体会就是尽管每个项目的应用场景各不相同,稳定和优秀的第三方开源类库总是被很多项目引用。下面列出一些常用的分布式系统项目开发依赖的类库。也许同学们的项目中暂时用不上,但也不妨在pom.xml备注依赖,将来项目扩展需要时开放引用。
基本通用类库:Google Guava & Apache Commons & Hutools (国人开源的)
框架类库: Spring & Mybatis & Dubbo & Zookeeper
Json类库:Gson & FastJson & Jackson
权限类库:Shiro
工作流类库: Activiti
HTTP类库: HttpClient & HttpCore
XML解析类库:Xerces & Xstream
日志类库:Log4j & SLF4j
单元测试库: Junit & Mockito
数据库服务类库: Druid & Mysql-connector-java
缓存服务类库:Jredis
消息服务类库:RocketMQ & Kafka
文件处理类库:Apache POI & iText & EasyExcel
文件存储类库: FastDFS
图片处理类库: Thumbnailator
搜索服务类库: Elasticsearch & Solr
分布式配置管理类库:XXL-conf
分布式任务调度类库:XXL-Job
具体以上每个类库在你的项目pom.xml如何依赖引用,可以访问:
https://mvnrepository.com/ 搜索以上类库关键词, 复制类似以下配置到pom.xml即可。
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.1.7.RELEASE</version> </dependency>
当然,每个项目有其自身特殊的应用,所以还会有其他一些常用的第三方类库,如涉及hadoop,spark,flink等等。分布式配置管理或任务调度也有使用大厂开源的类库,因使用规模不同,这里不再一一列出了。
本文暂时没有评论,来添加一个吧(●'◡'●)