Skip to content

[summer 2022] Unifying service discovery and configuration management module's addressing module in a plug-in way. #8310

@realJackSun

Description

@realJackSun

#Unifying service discovery and configuration management module's addressing module in a plug-in way

Background

Nacos has been loved by users and developers since its open source. After 3 years of open source development, Nacos has now released version 2.1.0. However, due to the irregularity of the early project, the addressing models of the naming and config modules of Nacos in the current version have their own implementation logic and are not unified. Therefore, we hope to converge the existing addressing functions in Nacos together in this project and implement them in the form of plugins.

Target

Sort out the addressing functions of the existing naming and config modules, sort out a general workflow and implement it in the form of plugins.
Existing addressing functions: ServerListManager (Client), ServerMemberManager (Server)

Difficulty

Basic

Mentor

@brotherlu-xcq
1285823170@qq.com

Output Requirements

  • Sort out the existing addressing workflow and capabilities, design a new unified addressing function, provide plug-in capabilities, and output detailed design documents.
  • Refactoring and development of existing addressing modules according to design documentation.
  • Provides access examples and documentation for pluggable addressing capabilities.

Technical Requirements

  • Familiar with Java programming language
  • Familiar with common design patterns
  • Familiar with concurrent programming
  • Familiar with writing markdown documents

背景

Nacos 自开源起,深受广大用户和开发者喜爱,经过3年的开源发展,如今Nacos已经发布了2.1.0版本。但由于早起项目的不规范,Nacos在当前版中naming和config模块的寻址模型都有自己的实现逻辑并不统一。所以,我们希望在此课题中将Nacos中已有的寻址功能收敛到一起,以plugin的形式实现。
已有的寻址功能:ServerListManager(Client)、ServerMemberManager(Server)

目标

梳理现有的naming和config模块的寻址功能,整理出一个通用的工作流程且以plugin的形式实现。

难度

基础

导师

@brotherlu-xcq
1285823170@qq.com

产出要求

  • 梳理已有的寻址工作流程和能力,设计出全新的统一的寻址功能,提供插件化的能力,输出详细设计文档。
  • 根据设计文档,对现有的寻址模块进行重构和开发。
  • 提供插件化寻址能力的接入示例和文档。

能力要求

  • 熟悉Java编程语言
  • 熟悉常见的设计模式
  • 熟悉并发编程
  • 熟悉markdown

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions