This is an automated email from the ASF dual-hosted git repository. liujun pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/dubbo-website.git
The following commit(s) were added to refs/heads/master by this push: new fb8e0ab6c25 blog post, openatom open source competition 2024 (#2907) fb8e0ab6c25 is described below commit fb8e0ab6c258fccda9e7f1100e4f5489ec93327b Author: Ken Liu <ken.lj...@gmail.com> AuthorDate: Thu Jan 18 17:14:46 2024 +0800 blog post, openatom open source competition 2024 (#2907) --- .../news/openatom-opensopurce-competition-2024.md | 239 +++++++++++++++++++++ content/zh-cn/github/_index.md | 109 +++++----- data/announcements/zh/scheduled.yaml | 9 + static/imgs/blog/2024/01/openatom/5-1-vm.png | Bin 0 -> 83182 bytes .../imgs/blog/2024/01/openatom/5-2-kubernetes.png | Bin 0 -> 92742 bytes .../2024/01/openatom/5-3-kubernetes-service.png | Bin 0 -> 83739 bytes .../blog/2024/01/openatom/5-4-multiple-cluster.png | Bin 0 -> 278500 bytes .../imgs/blog/2024/01/openatom/dingding-group.png | Bin 0 -> 108455 bytes .../imgs/blog/2024/01/openatom/openatom-2024.png | Bin 0 -> 862667 bytes static/imgs/blog/2024/01/openatom/security.png | Bin 0 -> 640165 bytes 10 files changed, 303 insertions(+), 54 deletions(-) diff --git a/content/zh-cn/blog/news/openatom-opensopurce-competition-2024.md b/content/zh-cn/blog/news/openatom-opensopurce-competition-2024.md new file mode 100644 index 00000000000..8db1adbacee --- /dev/null +++ b/content/zh-cn/blog/news/openatom-opensopurce-competition-2024.md @@ -0,0 +1,239 @@ +--- +title: "Apache Dubbo 下一代云原生微服务挑战赛启动报名!五大赛题50万奖金池等你来战" +linkTitle: "Apache Dubbo 下一代云原生微服务挑战赛启动报名!五大赛题50万奖金池等你来战" +date: 2024-01-18 +tags: ["新闻动态"] +description: > + 中国开源开放原子基金会主办,Apache Dubbo 下一代云原生微服务挑战赛启动报名!五大赛题50万奖金池等你来战 +--- + +本文带来本赛题详细解读,<a href="https://competition.atomgit.com/competitionInfo?id=be48a38bb1daf499bd5c98ac8a3108fd" target="_blank">开放原子开源基金会官方报名渠道</a> 及更多详情请查看文章最后链接与二维码。 + +## 赛题解读 +我们期待参赛团队在高性能 Triple(HTTP/3) 协议设计、完善的 Benchmark 验收体系、零信任解决方案、Service Mesh架构 等方向持续探索,共同定义下一代云原生微服务体系,为开源社区和企业用户在性能、安全等方面带来收益。 + +本赛事一共包含五道赛题: +* 基于 HTTP/3 的高性能传输协议(Java) +* 自动化的 Dubbo 框架与协议性能基准 Benchmark 机制与平台(语言不限) +* 设计并实现一套零信任安全机制(含 Java/Golang SDK 适配与证书管理) +* 面向云原生的下一代微服务集群监测机制,涵盖Kubernetes、Nacos 等(Golang) +* 一种跨集群Kubernetes、传统VM微服务集群的互通方案与实现(Golang) + +### 1 基于HTTP/3 的高性能传输协议(Java) + +#### 1.1 赛题背景与目标 +本赛题的主要目标是将 Dubbo 中的 triple 协议适配到 HTTP/3 之上,兑现 triple 协议规范中的所有核心能力。 + +关于 Dubbo3 triple 协议使用的相关示例请参考(请注意阅读 README 中链接指向的其他相关示例):[https://github.com/apache/dubbo-samples/tree/master/1-basic](https://github.com/apache/dubbo-samples/tree/master/1-basic),通过运行示例,可以了解当前 triple 协议的功能。 + +以下是 Triple 协议规范:[https://cn.dubbo.apache.org/zh-cn/overview/reference/protocols/triple-spec/](https://cn.dubbo.apache.org/zh-cn/overview/reference/protocols/triple-spec/) + +#### 1.2 赛题说明 + +请基于 Apache Dubbo Java 实现的 3.3 分支进行开发,代码仓库链接如下: +[https://github.com/apache/dubbo/tree/3.3](https://github.com/apache/dubbo/tree/3.3) + +triple 协议相关实现源码: + +- [https://github.com/apache/dubbo/tree/3.2/dubbo-rpc/dubbo-rpc-triple](https://github.com/apache/dubbo/tree/3.2/dubbo-rpc/dubbo-rpc-triple) +- [https://github.com/apache/dubbo/tree/3.3/dubbo-remoting/dubbo-remoting-http12](https://github.com/apache/dubbo/tree/3.3/dubbo-remoting/dubbo-remoting-http12) + +开发者可根据自己的理解修改 Dubbo源码实现,比如在 remoting 层做 http3 适配,赛题实现不受限制,可以依赖如 Netty 等任意网络库或框架。 + +#### 1.3 参考链接 + +- [https://github.com/grpc/proposal/blob/master/G2-http3-protocol.md](https://github.com/grpc/proposal/blob/master/G2-http3-protocol.md) +- [https://devblogs.microsoft.com/dotnet/http-3-support-in-dotnet-6/](https://devblogs.microsoft.com/dotnet/http-3-support-in-dotnet-6/) +- [https://github.com/netty/netty-incubator-codec-http3](https://github.com/netty/netty-incubator-codec-http3) +- [https://webtide.com/jetty-http-3-support/](https://webtide.com/jetty-http-3-support/) + +### 2 自动化的 Dubbo 框架与协议性能基准 Benchmark 机制与平台(语言不限) + +#### 2.1 赛题背景与目标 +作为一款 RPC 框架,Apache Dubbo 内置了两款高性能通信协议: + +- triple 协议,基于 TCP 的高性能通信协议。 +- dubbo 协议,基于 HTTP 的高性能通信协议,支持 Streaming 通信模型。 + +本赛题计划建设的 benchmark 平台理论需具备持任意协议测试的能力,实际产出可以 dubbo、triple 协议为主。 + +#### 2.2 赛题说明 + +- 建设一套支持 dubbo benchmark 验收的机制与流程,如当前有支持 java 语言的 [https://github.com/apache/dubbo-](https://github.com/apache/dubbo-samples)benchmark 可供参考 +- 给出 dubbo、triple 协议的性能指标,以直观可视化的方式展示 +- 找出性能瓶颈点、给出优化建议或实现 + +#### 2.3 参考资料 + +- [https://github.com/benchmark-action/github-action-benchmark](https://github.com/benchmark-action/github-action-benchmark) +- [https://grpc.io/docs/guides/benchmarking/](https://grpc.io/docs/guides/benchmarking/) +- triple协议规范 [https://cn.dubbo.apache.org/zh-cn/overview/reference/protocols/triple-spec/](https://cn.dubbo.apache.org/zh-cn/overview/reference/protocols/triple-spec/) +- dubbo协议规范 [https://cn.dubbo.apache.org/zh-cn/overview/reference/protocols/tcp/](https://cn.dubbo.apache.org/zh-cn/overview/reference/protocols/tcp/) +- 了解 dubbo 的基本使用方式 [https://github.com/apache/dubbo-samples](https://github.com/apache/dubbo-samples) + + +### 3 设计并实现一套零信任安全机制(含Java/Golang SDK 适配与证书管理) +#### 3.1 赛题背景与目标 +本赛题的直接目标是为 Dubbo RPC 数据通信提供 TLS/mTLS 支持,但仅有相应的 API 与底层 tcp 链路是不够的,为了打造一套微服务整体解决方案,我们期望建立如下的一套零信任安全体系: + +![openatom-2024](/imgs/blog/2024/01/openatom/security.png) + +赛题涉及到控制面到数据面(Dubbo SDK)的数据推送,如证书更新、认证规则、鉴权规则等,我们计划在这个推送链路使用 xDS 协议。 + +针对架构设计中的几个核心组件,其主要职责是: + +1. 控制面组件 + 1. 作为 CA 机构负责证书签发与轮转,负责认证/鉴权规则的转换,提供 xDS Server 将证书与规则下发到数据面 + 2. 接收认证/鉴权规则,一套定义良好的认证与鉴权规则,支持控制 TLS/mTLS 行为,如什么场景下启用mTLS等;支持配置符合匹配条件下的认证/鉴权,可通过下文参考链接了解更多内容 + 3. xDS 协议,提供 xDS Server 负责证书与规则的推送。 + +2. 数据面组件(Dubbo SDK) + 1. Dubbo 框架适配 xDS 通道,接收证书与规则 + +#### 3.2 赛题说明 +本赛题是取自 Dubbo 体系的微服务零信任总体方案,以上架构图描述的内容为该总体方案核心目标。 + +本赛题选手可以参与开发的内容分为两部分: + +1. 数据面(Dubbo SDK),此部分为必做内容,即为 Dubbo SDK(Java/Go) 提供 xDS 的安全机制适配支持。如果选手决定不做控制面部分开发,则可以使用任意控制面 xDS Server 如 Istio 等辅助开发,流程与规则亦可直接使用 Istio 等,最终跑通 SDK 整体流程即可。 +2. 控制面,此部分为选做内容,即通过定制 Dubbo 社区提供的控制面实现,实现一整套定制化零信任解决方案。 + +##### 3.2.1 数据面(Dubbo SDK)开发指南: + +- 社区 Dubbo SDK 适配 xDS 的基本代码已经由官方提供,选手可直接在此之上关注安全相关 xDS 内容的进一步解析,并将接收到的证书、规则等适配到 Dubbo 框架内不 +- 选手可以考虑 Dubbo 框架认证鉴权能力的可扩展性。比如为 Dubbo 提供一套通用的认证、鉴权 API,本赛题来自 xDS 控制面的安全源成为其中的一个扩展实现;未来可以扩展其他的如非 xDS 通道的证书来源等。 + +相关源码仓库: + +- Dubbo Java 源码:[https://github.com/apache/dubbo-spi-extensions/tree/master/dubbo-xds](https://github.com/apache/dubbo-spi-extensions/tree/master/dubbo-xds) +- Dubbo Go 源码:[https://github.com/apache/dubbo-go/tree/main/xds](https://github.com/apache/dubbo-go/tree/main/xds) + +##### 3.2.2 控制面开发指南: +控制面的 xDS Server 将由官方社区提供基础实现,选手们可关注安全相关部分的设计与实现。 + +控制面源码仓库:[https://github.com/apache/dubbo-kubernetes](https://github.com/apache/dubbo-kubernetes) + +#### 3.3 参考资料 +总的来说,本赛题要建设的是一套通用的零信任体系,提供以下业界实现作为参考: + +- [https://istio.io/latest/docs/concepts/security/](https://istio.io/latest/docs/concepts/security/) +- [https://github.com/grpc/proposal/blob/master/A29-xds-tls-security.md](https://github.com/grpc/proposal/blob/master/A29-xds-tls-security.md) +- [https://kuma.io/docs/2.5.x/policies/mutual-tls/](https://kuma.io/docs/2.5.x/policies/mutual-tls/) +- [https://www.envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol#xds-protocol-delta](https://www.envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol#xds-protocol-delta) + + +### 4 面向云原生的下一代微服务集群监测机制,涵盖Kubernetes、Nacos (Golang) + +#### 4.1 赛题背景与目标 +微服务的整体可视化管控一直依赖都是一个非常重要的议题,本赛题的大背景是 Apache Dubbo 社区正在推进的 Dubbo 整体可视化项目,我们计划实现一个可以同时兼容 Zookeeper/Nacos 等传统注册中心、Kubernetes Service、Service Mesh 架构的统一的可视化控制台: + +- 微服务集群数据可视化。包括集群内的应用、服务、示例等基本信息展示。 +- 监控相关。借助 Dubbo SDK 上报到 Prometheus 的 Metrics 数据,控制台通过查询 Prometheus 展示相关监控指标,绘制调用链路图与依赖关系图等。 +- 流量管控。支持流量管控规则,支持规则可视化编辑、预览、下发。 + +##### 4.1.1 总体目标 +相比之前老版本的 Dubbo Admin 实现,我们期望新版本的控制台在部署架构、功能丰富度上都实现全面升级。 + +因此参赛选手可重点关注以下几个方向: + +- 提供一个通用的微服务适配层抽象(如包含 Application、Servcice、Instance 等概念),作为新版控制台的统一数据源,屏蔽底层 Nacos、Kubernetes、Service Mesh 架构的差异。目前官方仓库提供了一个基本参考设计与实现。 +- 设计控制台功能并提供完整实现。目前官方提供了参考交互效果图。 + +从用户 GUI 视角看,如可做菜单设计如下: + +- 首页大盘 +- 资源详情 + - 应用 + - 服务 + - 实例 +- 流量管控 + +#### 4.2 赛题说明 +本赛题官方已经提供了后端适配层的参考实现,同时给出了部分前端交互设计初稿。选手完全可以此为基础进行开发设计,具体评分标准参见官方报名渠道说明。 + +1. 后端: [https://github.com/apache/dubbo-kubernetes/tree/master/pkg/admin](https://github.com/apache/dubbo-kubernetes/tree/master/pkg/admin) + +2. 前端交互图:[http://101.34.253.152/2024-1-14-v0.0.7/](http://101.34.253.152/2024-1-14-v0.0.7/) +3. 前端代码框架:https://github.com/apache/dubbo-kubernetes/tree/master/ui-vue3 + +#### 4.3 参考资料 + +- [https://github.com/kiali/kiali](https://github.com/kiali/kiali) +- [https://github.com/codecentric/spring-boot-admin](https://github.com/codecentric/spring-boot-admin) +- [https://github.com/apache/dubbo-admin](https://github.com/apache/dubbo-admin) +- [https://github.com/istio/istio](https://github.com/istio/istio) + +### 5 一种跨集群Kubernetes、传统VM微服务集群的互通方案与实现(Golang) + +#### 5.1 赛题背景与目标 + +在 Apache Dubbo 最新规划中,我们计划完整的支持以下部署架构: + +##### 5.1.1 传统注册中心模式 + +![5-1-vm](/imgs/blog/2024/01/openatom/5-1-vm.png) + +##### 5.1.2 基于 Kubernetes 调度的注册中心模式 + +![5-2-kubernetes](/imgs/blog/2024/01/openatom/5-2-kubernetes.png) + +##### 5.1.3 基于 Kubernetes Service 的 Proxyless Service Mesh 模式 + +![5-3-kubernetes-service](/imgs/blog/2024/01/openatom/5-3-kubernetes-service.png) + +其中,控制面由 Dubbo 社区建设,仓库地址位于:[https://github.com/apache/dubbo-kubernetes](https://github.com/apache/dubbo-kubernetes) + +#### 5.2 赛题解读 +由于网络模型、注册中心等多个层面的原因,以上三种部署架构在很多情况下是相互隔离的,要实现这几个架构间的通信变的非常困难。 + +为了实现多集群地址、路由规则等互通,我们提供了一个跨集群部署的示例架构图,如下所示 + +![5-4-kubernetes-service](/imgs/blog/2024/01/openatom/5-4-multiple-cluster.png) + +其中,红色部分即为跨集群的数据流向,其中红色实现部分为控制面数据流,红色虚线部分为数据面数据流。 + +##### 5.2.1 为什么要跨集群通信那? + +有以下场景可能会用到: + +1. Kubernetes 迁移,之前用的是 Zookeeper 传统注册中心架构,期望迁移到 Kubernetes 集群部署,或者期望使用 kubernetes Service 服务模型 +2. Kubernetes 多集群部署,跨多个 Kubernetes 集群 Dubbo 微服务通信 +3. 混合部署,传统注册中心集群、Kubernetes 集群、Kubernetes Service(Service Mesh)架构混合部署 + +##### 5.2.2 期待交付用户的使用体验 + +1. Kubernetes Service:`dubboctl install --mode=kubernetes --ingress-enabled` +2. Kubernetes:`dubboctl instaqll --mode=universal --ingress-enabled` +3. 传统 VM: + * `dubbo-cp run --registry-address=nacos://xxx`` + * `dubbo-dp run --control-plane=xxx` +4. 跨集群则需要额外部署 global 集群,使用方式与以上类似 + +##### 5.2.1 主要交付内容 +以上图示例架构为例,参赛选手应主要关注: + +1. 控制面、Ingress 的开发与建设(Dubbo SDK 侧无须关注,包括 SDK 与控制面的 xDS 通信,此部分可假设整体已经就绪),包括提供新方案中对于跨集群通信必要的组件支持等。 +2. 跨集群的 global 控制面能力建设 + +Dubbo 官方目前提供了基础控制面实现,包括基于 xds server 的服务发现等内容,可在此基础上继续扩展跨集群方案实现。项目源码:[https://github.com/apache/dubbo-kubernetes](https://github.com/apache/dubbo-kubernetes) + +#### 5.3 参考资料 + +1. [https://istio.io/](https://istio.io/) +2. [https://kuma.io/docs/2.5.x/production/deployment/multi-zone/](https://kuma.io/docs/2.5.x/production/deployment/multi-zone/) + +## 报名方式 + +### 报名链接 + +[开放原子开源基金会官方报名渠道](https://competition.atomgit.com/competitionInfo?id=be48a38bb1daf499bd5c98ac8a3108fd) + +### 答疑群 + +有任何赛题疑问扫码加入以下钉钉群: + +![5-4-kubernetes-service](/imgs/blog/2024/01/openatom/dingding-group.png) + +### 赛题详情海报 + +![openatom-2024](/imgs/blog/2024/01/openatom/openatom-2024.png) \ No newline at end of file diff --git a/content/zh-cn/github/_index.md b/content/zh-cn/github/_index.md index 9e36bd096dd..3283ffe0d3d 100755 --- a/content/zh-cn/github/_index.md +++ b/content/zh-cn/github/_index.md @@ -33,52 +33,41 @@ The Apache Dubbo Java implementation. <a class="github-button" href="https://github.com/apache/dubbo/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo on GitHub">Watch</a> </div> {{< /card >}} - {{< card header="apache/dubbo-admin" >}} -A console for better visualization of Dubbo services. + {{< card header="apache/dubbo-go" >}} +The Apache Dubbo Go implementation. <div style="width:130px;float:left;" class="mr-5"> - <a class="github-button" href="https://github.com/apache/dubbo-admin" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-admin on GitHub">Star</a> - <a class="github-button" href="https://github.com/apache/dubbo-admin/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-admin on GitHub">Fork</a> - <a class="github-button" href="https://github.com/apache/dubbo-admin/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-admin on GitHub">Watch</a> + <a class="github-button" href="https://github.com/apache/dubbo-go" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-go on GitHub">Star</a> + <a class="github-button" href="https://github.com/apache/dubbo-go/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-go on GitHub">Fork</a> + <a class="github-button" href="https://github.com/apache/dubbo-go/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-go on GitHub">Watch</a> </div> {{< /card >}} - {{< card header="apache/dubbo-samples" >}} -The samples showcasing the usage of Apache Dubbo Java implementation. + {{< card header="apache/dubbo-kubernetes" >}} +The next generation Control Plane and Console for Dubbo, Kubernetes and Registry compatible.. <div style="width:130px;float:left;" class="mr-5"> - <a class="github-button" href="https://github.com/apache/dubbo-samples" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-samples on GitHub">Star</a> - <a class="github-button" href="https://github.com/apache/dubbo-samples/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-samples on GitHub">Fork</a> - <a class="github-button" href="https://github.com/apache/dubbo-samples/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-samples on GitHub">Watch</a> + <a class="github-button" href="https://github.com/apache/dubbo-kubernetes" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-kubernetes on GitHub">Star</a> + <a class="github-button" href="https://github.com/apache/dubbo-kubernetes/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-kubernetes on GitHub">Fork</a> + <a class="github-button" href="https://github.com/apache/dubbo-kubernetes/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-kubernetes on GitHub">Watch</a> </div> {{< /card >}} {{< /cardpane >}} {{< cardpane >}} - {{< card header="apache/dubbo-go" >}} -The Apache Dubbo Go implementation. -<div style="width:130px;float:left;" class="mr-5"> - <a class="github-button" href="https://github.com/apache/dubbo-go" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-go on GitHub">Star</a> - <a class="github-button" href="https://github.com/apache/dubbo-go/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-go on GitHub">Fork</a> - <a class="github-button" href="https://github.com/apache/dubbo-go/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-go on GitHub">Watch</a> -</div> - {{< /card >}} + {{< card header="apache/dubbo-rust" >}} +The Apache Dubbo Rust implementation. + <div style="width:130px;float:left;" class="mr-5"> + <a class="github-button" href="https://github.com/apache/dubbo-rust" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-rust on GitHub">Star</a> + <a class="github-button" href="https://github.com/apache/dubbo-rust/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-rust on GitHub">Fork</a> + <a class="github-button" href="https://github.com/apache/dubbo-rust/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-rust on GitHub">Watch</a> + </div> + {{< /card >}} {{< card header="apache/dubbo-js" >}} -The Apache Dubbo Node.js implementation. +The Apache Dubbo Node.js and Javascript implementation. <div style="width:130px;float:left;" class="mr-5"> <a class="github-button" href="https://github.com/apache/dubbo-js" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-js on GitHub">Star</a> <a class="github-button" href="https://github.com/apache/dubbo-js/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-js on GitHub">Fork</a> <a class="github-button" href="https://github.com/apache/dubbo-js/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-js on GitHub">Watch</a> </div> {{< /card >}} - {{< card header="apache/dubbo-rust" >}} -The Apache Dubbo Rust implementation. - <div style="width:130px;float:left;" class="mr-5"> - <a class="github-button" href="https://github.com/apache/dubbo-rust" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-js on GitHub">Star</a> - <a class="github-button" href="https://github.com/apache/dubbo-rust/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-js on GitHub">Fork</a> - <a class="github-button" href="https://github.com/apache/dubbo-rust/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-js on GitHub">Watch</a> - </div> - {{< /card >}} -{{< /cardpane >}} - -{{< cardpane >}} {{< card header="apache/dubbo-python" >}} The Apache Dubbo Python2 implementation. <div style="width:130px;float:left;" class="mr-5"> @@ -87,12 +76,43 @@ The Apache Dubbo Python2 implementation. <a class="github-button" href="https://github.com/apache/dubbo-python/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-python on GitHub">Watch</a> </div> {{< /card >}} - {{< card header="apache/dubbo-php-framework" >}} -The Apache Dubbo PHP implementation. +{{< /cardpane >}} + +{{< cardpane >}} + {{< card header="apache/dubbo-spi-extensions" >}} +More extensions for the Apache Dubbo Java implementation. <div style="width:130px;float:left;" class="mr-5"> - <a class="github-button" href="https://github.com/apache/dubbo-php-framework" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-php-framework on GitHub">Star</a> - <a class="github-button" href="https://github.com/apache/dubbo-php-framework/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-php-framework on GitHub">Fork</a> - <a class="github-button" href="https://github.com/apache/dubbo-php-framework/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-php-framework on GitHub">Watch</a> + <a class="github-button" href="https://github.com/apache/dubbo-spi-extensions" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-spi-extensions on GitHub">Star</a> + <a class="github-button" href="https://github.com/apache/dubbo-spi-extensions/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-spi-extensions on GitHub">Fork</a> + <a class="github-button" href="https://github.com/apache/dubbo-spi-extensions/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-spi-extensions on GitHub">Watch</a> +</div> + {{< /card >}} + {{< card header="apache/dubbo-samples" >}} +The samples showcasing the usage of Apache Dubbo Java implementation. +<div style="width:130px;float:left;" class="mr-5"> + <a class="github-button" href="https://github.com/apache/dubbo-samples" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-samples on GitHub">Star</a> + <a class="github-button" href="https://github.com/apache/dubbo-samples/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-samples on GitHub">Fork</a> + <a class="github-button" href="https://github.com/apache/dubbo-samples/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-samples on GitHub">Watch</a> +</div> + {{< /card >}} + {{< card header="apache/dubbo-go-samples" >}} +Demos showcasing the usage Apache Dubbo Go implementation. +<div style="width:130px;float:left;" class="mr-5"> + <a class="github-button" href="https://github.com/apache/dubbo-go-samples" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-go-samples on GitHub">Star</a> + <a class="github-button" href="https://github.com/apache/dubbo-go-samples/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-go-samples on GitHub">Fork</a> + <a class="github-button" href="https://github.com/apache/dubbo-go-samples/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-go-samples on GitHub">Watch</a> +</div> + {{< /card >}} +{{< /cardpane >}} + + +{{< cardpane >}} + {{< card header="apache/dubbo-website" >}} +The Apache Dubbo official website. +<div style="width:130px;float:left;" class="mr-5"> + <a class="github-button" href="https://github.com/apache/dubbo-website" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-website on GitHub">Star</a> + <a class="github-button" href="https://github.com/apache/dubbo-website/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-website on GitHub">Fork</a> + <a class="github-button" href="https://github.com/apache/dubbo-website/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-website on GitHub">Watch</a> </div> {{< /card >}} {{< card header="apache/dubbo-go-pixiu" >}} @@ -103,31 +123,12 @@ A Go implemented proxy that can work as sidecar or gateway for Apache Dubbo. <a class="github-button" href="https://github.com/apache/dubbo-go-pixiu/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-go-pixiu on GitHub">Watch</a> </div> {{< /card >}} -{{< /cardpane >}} - -{{< cardpane >}} {{< card header="apache/dubbo-awesome" >}} Collection of awesome Dubbo resources. <div style="width:130px;float:left;" class="mr-5"> <a class="github-button" href="https://github.com/apache/dubbo-awesome" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-awesome on GitHub">Star</a> <a class="github-button" href="https://github.com/apache/dubbo-awesome/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-awesome on GitHub">Fork</a> <a class="github-button" href="https://github.com/apache/dubbo-awesome/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-awesome on GitHub">Watch</a> -</div> - {{< /card >}} - {{< card header="apache/dubbo-spi-extensions" >}} -More extensions of the Apache Dubbo Java implementation. -<div style="width:130px;float:left;" class="mr-5"> - <a class="github-button" href="https://github.com/apache/dubbo-spi-extensions" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-spi-extensions on GitHub">Star</a> - <a class="github-button" href="https://github.com/apache/dubbo-spi-extensions/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-spi-extensions on GitHub">Fork</a> - <a class="github-button" href="https://github.com/apache/dubbo-spi-extensions/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-spi-extensions on GitHub">Watch</a> -</div> - {{< /card >}} - {{< card header="apache/dubbo-go-samples" >}} -Demos showcasing the usage Apache Dubbo Go implementation. -<div style="width:130px;float:left;" class="mr-5"> - <a class="github-button" href="https://github.com/apache/dubbo-go-samples" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star apache/dubbo-go-samples on GitHub">Star</a> - <a class="github-button" href="https://github.com/apache/dubbo-go-samples/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork apache/dubbo-go-samples on GitHub">Fork</a> - <a class="github-button" href="https://github.com/apache/dubbo-go-samples/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch apache/dubbo-go-samples on GitHub">Watch</a> </div> {{< /card >}} {{< /cardpane >}} diff --git a/data/announcements/zh/scheduled.yaml b/data/announcements/zh/scheduled.yaml index 6184abd1417..845d11e3a51 100644 --- a/data/announcements/zh/scheduled.yaml +++ b/data/announcements/zh/scheduled.yaml @@ -41,3 +41,12 @@ announcements: <a href= "https://start.dubbo.apache.org/" target="_blank">Dubbo Initializer</a> <em>项目脚手架正式发布,帮你 1 分钟快速新建应用模板!</em> message: | 使用项目脚手架快速创建 Dubbo Spring Boot 项目模板,帮你解决项目初始化问题。 + - name: OpenAtom Competition + startTime: 2024-01-18T00:00:00 + endTime: 2024-02-10T18:00:00 + style: >- + background-image: linear-gradient(90deg, rgb(249, 145, 6) 0%, rgb(252, 29, 68) 100%); + title: | + <a href= "https://dubbo.apache.org/zh-cn/blog/2024/01/18/apache-dubbo-下一代云原生微服务挑战赛启动报名五大赛题50万奖金池等你来战/" target="_blank">Apache Dubbo 下一代云原生微服务挑战赛启动报名!</a> <em>五大赛题50万奖金池等你来战!</em> + message: | + 中国开放原子开源基金会主办,阿里云、Apache Dubbo 共建。报名截日日期 2024-02-09。 diff --git a/static/imgs/blog/2024/01/openatom/5-1-vm.png b/static/imgs/blog/2024/01/openatom/5-1-vm.png new file mode 100644 index 00000000000..2b6687f2e7f Binary files /dev/null and b/static/imgs/blog/2024/01/openatom/5-1-vm.png differ diff --git a/static/imgs/blog/2024/01/openatom/5-2-kubernetes.png b/static/imgs/blog/2024/01/openatom/5-2-kubernetes.png new file mode 100644 index 00000000000..a041a7a42ae Binary files /dev/null and b/static/imgs/blog/2024/01/openatom/5-2-kubernetes.png differ diff --git a/static/imgs/blog/2024/01/openatom/5-3-kubernetes-service.png b/static/imgs/blog/2024/01/openatom/5-3-kubernetes-service.png new file mode 100644 index 00000000000..e41e5b17333 Binary files /dev/null and b/static/imgs/blog/2024/01/openatom/5-3-kubernetes-service.png differ diff --git a/static/imgs/blog/2024/01/openatom/5-4-multiple-cluster.png b/static/imgs/blog/2024/01/openatom/5-4-multiple-cluster.png new file mode 100644 index 00000000000..f0c0c6ae97b Binary files /dev/null and b/static/imgs/blog/2024/01/openatom/5-4-multiple-cluster.png differ diff --git a/static/imgs/blog/2024/01/openatom/dingding-group.png b/static/imgs/blog/2024/01/openatom/dingding-group.png new file mode 100644 index 00000000000..e61ec34108e Binary files /dev/null and b/static/imgs/blog/2024/01/openatom/dingding-group.png differ diff --git a/static/imgs/blog/2024/01/openatom/openatom-2024.png b/static/imgs/blog/2024/01/openatom/openatom-2024.png new file mode 100644 index 00000000000..05a3e30d7fe Binary files /dev/null and b/static/imgs/blog/2024/01/openatom/openatom-2024.png differ diff --git a/static/imgs/blog/2024/01/openatom/security.png b/static/imgs/blog/2024/01/openatom/security.png new file mode 100644 index 00000000000..d74a1e392af Binary files /dev/null and b/static/imgs/blog/2024/01/openatom/security.png differ