You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

This page is auto-generated! Please do NOT edit it, all changes will be lost on next update

Apache Dubbo

GSoC 2025 - Add more traffic management rule support for Dubbo Proxyless Mesh

Background and Goal

The concept of[ Proxyless Mesh|https://istio.io/v1.15/blog/2021/proxyless-grpc/] was first introduced in this blog. Please read it to learn more concept details.

We have started the development of Dubbo Proxyss Mesh for a while, so that means you don't have to start the project from scratch, anyone who gets involved can start with a specific task at hand. 

In this specific GSoC project, we need developers to mainly focus on implementing more traffic management features of Istio for Dubbo.

Relevant Skills

  1. Familiar with Java
  2. Familiar with Service Mesh, istio and Microservice architectures
  3. Familiar with Kubernetes

Potential Mentors

  1. Jun Liu, Apache Dubbo PMC Chair, junliu@apache.org


Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Jun Liu, mail: liujun (at) apache.org
Project Devs, mail:

GSoC 2025 - Dubbo Admin traffic management feature

Background and Goal

Dubbo is an easy-to-use, high-performance microservice framework that provides both RPC and rich enterprise-level traffic management features.

The community has been working on the improvement of Dubbo's traffic management abilities, to make it support rich features like traffic spliting, canary release, a/b testing, circuit breaker, mocking, etc. The complete traffic management architecture in Dubbo consists of two major parts, Control Plane and Data Plane. In Dubbo, Control Plane refers to Dubbo Admin, with source code in apache/dubbo-kubernetes. Dubbo Data Plane is implemented by Dubbo sdk (Java, Go, etc)

The traffic management rules Dubbo ueses now is compatible with the rules in Istio. That means the rules generated by Dubbo Admin and sent to SDK is Istio compatible rules. In this project, we need developers to work mainly on Dubbo Admin to make sure it generates and sends those rules correctly.


Relevant Skills

  1. Familiar with Golang
  2. Familiar with Service Mesh, istio and Microservice architectures
  3. Familiar with Kubernetes

Potential Mentors

  1. Jun Liu, Apache Dubbo PMC Chair, junliu@apache.org
  2. dev@dubbo.apache.org
Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Jun Liu, mail: liujun (at) apache.org
Project Devs, mail:

GSoC 2025 - Dubbo triple protocol for go language implementation

Background and Goal

Dubbo is an easy-to-use, high-performance microservice framework that provides both RPC and rich enterprise-level traffic management features.

  1. keep-alive
  2. connection management
  3. programming api
  4. error code

Relevant Skills

  1. Familiar with Golang
  2. Familiar with RPC
  3. Familiar HTTP/1/2/3 protocol

Potential Mentors

  1. Jun Liu, Apache Dubbo PMC Chair, junliu@apache.org
  2. dev@dubbo.apache.org

     

     

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Jun Liu, mail: liujun (at) apache.org
Project Devs, mail:

GSoC 2025 - Service Discovery

Background and Goal

Service Discovery

  1. Well organized logs
  2. Actuator endpoints
  3. Tools

Relevant Skills

  1. Familiar with Java
  2. Familiar with Microservice architecture

Potential Mentors

  1. Jun Liu, Apache Dubbo PMC Chair, junliu@apache.org
  2. dev@dubbo.apache.org

     


Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Jun Liu, mail: liujun (at) apache.org
Project Devs, mail:

Beam

Simplify management of Beam infrastructure, access control and permissions via Platform features

This project consists in a series of tasks that build a sort of 'infra platform' for Beam. Some tasks include:


A quality proposal will include a series of features beyond the ones listed above. Some ideas:

  • Detection of policy breakages, and nagging to fix
  • Security detections based on cloud logging
  • others?
Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Pablo Estrada, mail: pabloem (at) apache.org
Project Devs, mail: dev (at) beam.apache.org

Seata

GSoC 2025 - Apache Seata(Incubating) Extend multi-raft cluster mode

Description

Synopsis

The current Apache Seata Server supports the Raft cluster mode, but the performance and throughput of the cluster are significantly limited due to the single leader in a single Raft group. Therefore, the goal is to extend Seata Server to support multi-raft capability.


Benefits to Community

Due to the characteristics of Raft, requests are processed on the leader node and the results are submitted to the followers through the Raft consensus protocol. As a result, a significant amount of computational load is placed on the leader node, while followers only need to receive the final computed result. This causes the CPU, memory, and other metrics of the leader to be much higher than those of the followers. Additionally, the throughput of a single leader is limited by the machine configuration of the highest-spec node in the cluster, making it difficult to balance the traffic effectively. Therefore, supporting multi-raft would make the load distribution more balanced across all nodes in the cluster, improving throughput and performance, while also reducing the waste of machine resources.


Deliverables

The expected delivery goal is to apply the multi-raft capability of the sofa-jraft component to Seata Server through detailed learning and practice


The step expected are the following:

  • Learning and using the sofa-jraft component
  • Understanding and practicing the transaction grouping capability in Seata
  • Gaining a certain level of understanding of Seata's communication protocol
  • Gaining a certain level of understanding of Seata's storage model, especially the Raft mode
  • Ensuring compatibility between different versions

Useful links

Mentor

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Jianbin Chen, mail: jianbin (at) apache.org
Project Devs, mail: dev (at) seata.apache.org
  • No labels