- 1. Disconf
- 2. UidGenerator
- 3. BRPC-Java
- 4. Spring Cloud Formula
- 5. JProtobuf
- 6. Jprotobuf-rpc-socket
- 7. BI 平台 BiPlatform
今儿 7 点一大早,早起群的死变态已经纷纷打卡起来学习了。
菜逼互啄群
吓得艿艿这个小帅胖,翻了一圈“年轮”,赶紧起来 = =。
点了一套煎饼果子,看到《百度开源的 71 款项目》文章,于是乎去百度的 https://github.com/baidu 愁一愁有哪些和 Java 相关的,还是有点东东的。。。
1. 分布式配置管理平台 Disconf
https://github.com/knightliao/disconf
Distributed ConfigurationManagement Platform(分布式配置管理平台)专注于各种 分布式系统配置管理 的通用组件/通用平台, 提供统一的配置管理服务。
目前已经不维护,建议采用 Apollo 或者 Nacos 作为配置中心。
2. 分布式 ID 生成器 UidGenerator
https://github.com/baidu/uid-generator
UidGenerator 是Java实现的, 基于Snowflake算法的唯一ID生成器。
UidGenerator 以组件形式工作在应用项目中, 支持自定义workerId位数和初始化策略, 从而适用于 docker 等虚拟化环境下实例自动重启、漂移等场景。
在实现上, UidGenerator 通过借用未来时间来解决sequence天然存在的并发限制; 采用 RingBuffer 来缓存已生成的UID, 并行化 UID 的生产和消费, 同时对CacheLine补齐,避免了由 RingBuffer 带来的硬件级「伪共享」问题. 最终单机QPS可达 600 万。
有胖友读过 UidGenerator 的源码实现,还是非常不错的,值得撸一撸
3. 高性能 RPC 框架 BRPC-Java
https://github.com/baidu/brpc-java
brpc-java 是 baidu rpc 的 java 版本实现,支持 baidu rpc、nshead、sofa、hulu、http、stargate、dubbo 等协议。
目前 BRPC 的 C++ 版本已经进入 Apache 进行孵化,详细可见:https://github.com/apache/incubator-brpc
不过问了一圈,貌似木有胖友在使用~
4. 微服务框架 Spring Cloud Formula
https://github.com/baidu/spring-cloud-formula
基于 Spring Boot 兼容 Spring Cloud 生态开发的微服务框架,是百度云 CNAP(云原生微服务应用平台 Cloud-Native Application Platform)的面向客户提供的 Java 微服务框架设施。
里面提供了各种增强的 Starter,胖友可以选择看看。
例如说,RateLimiter Spring Boot Starter 基于 resilience4j 或 令牌桶算法,提供了服务限流的功能。
Route Spring Boot Starter 兼容 OpenFeign,Ribbon,RestTemplate 组件,支持按请求的 IP,tag,路由到一个或者多个 tag (按比例分配)的集群。
5. 工具库 JProtobuf
https://github.com/jhunters/jprotobuf
jprotobuf 是针对 Java 程序开发一套简易类库,目的是简化java语言对 protobuf 类库的使用。
使用 jprotobuf 可以无需再去了解 .proto 文件操作与语法,直接使用 Java 注解定义字段类型即可。
6. 基于 Protobuf 的 RPC 框架 Jprotobuf-rpc-socket
https://github.com/baidu/Jprotobuf-rpc-socket
Protobuf RPC 是一种基于 TCP 协议的二进制高性能RPC通信协议实现。
它以 Protobuf 作为基本的数据交换格式,支持完全基于POJO的发布方式,极大的简化了开发复杂性。
= = 发现 RPC 框架是真的多~
7. 百度 BI 平台 BiPlatform
https://github.com/baidu/BIPlatform
百度开源,业内领先的Holap敏捷BI分析平台,提供高性能、准实时、可扩展的、一站式的BI建模、分析平台。
看了下最后时间是 3 年前,可能...
最后,再附上我历时三个月总结的 Java 面试 + Java 后端技术学习指南
海量电子书,珍藏版
领取步骤
1.加微信获取
来源:oschina
链接:https://my.oschina.net/u/4419312/blog/4281809