前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >今儿一个早起,艿艿整理了一波百度开源的 Java 项目,哎哟有点东西...

今儿一个早起,艿艿整理了一波百度开源的 Java 项目,哎哟有点东西...

作者头像
芋道源码
发布2020-05-25 16:18:52
8060
发布2020-05-25 16:18:52
举报
文章被收录于专栏:芋道源码1024芋道源码1024

摘要: 原创出处 http://www.iocoder.cn/Fight/Today-a-early-rise-a-wave-of-baidu-is-Java-project/ 「芋道源码」欢迎转载,保留摘要,谢谢!

  • 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 年前,可能...


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 芋道源码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 分布式配置管理平台 Disconf
  • 2. 分布式 ID 生成器 UidGenerator
  • 3. 高性能 RPC 框架 BRPC-Java
  • 4. 微服务框架 Spring Cloud Formula
  • 5. 工具库 JProtobuf
  • 6. 基于 Protobuf 的 RPC 框架 Jprotobuf-rpc-socket
  • 7. 百度 BI 平台 BiPlatform
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档