[Summer of Open Source 2023] Welcome to sign up for the MOSN community project!

picture

The Summer of Open Source is a summer open source activity initiated and long-term supported by the "Open Source Software Supply Chain Lighting Project". Discover more outstanding developers.

The event unites major open source communities at home and abroad to provide project tasks for the development and maintenance of important open source software, and open registration for college students around the world.

In 2023, the MOSN community once again joins the open source activities of universities of the Institute of Software, Chinese Academy of Sciences - "Summer of Open Source 2023" , and prepares three tasks for everyone, involving Go, HTTP, Security, Software-Defined Networking, Container and other fields .

MOSN project introduction

MOSN (Modular Open Smart Network) is a cloud-native network proxy platform developed based on the Go language. It is open-sourced by Ant Group and has passed production-level verification of hundreds of thousands of containers during the Double 11 promotion. MOSN provides multi-protocol, modular, intelligent, and secure proxy capabilities for services, and integrates a large number of cloud-native general components. At the same time, it can also integrate Envoy as a network library, which has the characteristics of high performance and easy expansion. In addition, MOSN can integrate Istio to build Service Mesh, and can also be used as an independent four-layer or seven-layer load balancer, API Gateway, cloud-native Ingress, etc.

Layotto project introduction

Layotto (/leɪˈɒtəʊ/) is an application runtime developed in Golang, designed to help developers quickly build cloud-native applications and help decouple applications and infrastructure. It provides various distributed capabilities for applications, such as state management, configuration management, event publishing and subscription, etc., to simplify application development.

Activity Rules

Summer of Open Source official website:

(https://summer-ospp.ac.cn/

Students are free to choose projects, communicate with community mentors to implement plans and write project proposals. The selected students will complete the development work as planned under the guidance of community mentors and contribute the results to the community. The community evaluates the completion of the students, and the organizer distributes the funding amount to the students according to the evaluation results.

picture

MOSN Community Project

Project link:https://summer-ospp.ac.cn/org/orgdetail/f0813e66-fa19-4302-a3e3-e6f2d210c83d?lang=zh

MOSN Go、HTTP、Security

Project community mentor: Luo Zexuan

[email protected]

Develop Envoy's WAF plugin based on Coraza and MOSN on Envoy

Item number: 23f080212

Project Difficulty: Advanced/Advanced

Coraza is a WAF engine implemented in Go. We hope to use the ability of MOSN on Envoy to make Coraza run in Envoy, and be compatible with the official Wasm-based implementation ( https://github.com/corazawaf/coraza-proxy- wasm ) for comparison.

  • Implement a basically usable WAF plugin (requires detailed documentation + testing) , compare it with the Wasm version, and output a comparison report.
  • Know MOSN, Envoy and WAF, able to write code in Go.

MOSN Go、Software-Defined Networking

Project community mentor: Ji Zhuozhi

[email protected]

Building a plugin marketplace for Envoy Go extensions

Item number: 23f080259

Project Difficulty: Advanced/Advanced

Envoy is currently one of the most popular network proxies. The Go extension is the Go ecological foundation added to Envoy by the MOSN community, and it is also the basis of the MoE framework of the MOSN community.

Benefiting from the Golang ecosystem, R&D can easily implement plug-ins in Envoy for more long-tail scenarios, many of which are common.

This project is to build a plugin marketplace for Envoy Go extensions. In the plug-in market, people can share plug-ins in the plug-in market and use existing plug-ins. Through the plug-in market, the Envoy and MoE ecology can become more open, shared, and rich.

  • Provide a content platform for Envoy Go plug-ins, where excellent plug-ins that have been reviewed by the community can be published, and server-side and front-end pages are required.
  • No self-built account system, user authentication and authorization are completed through GitHub OAuth2.0.
  • Advanced——connect to GitHub OpenAPI, and support dynamic acquisition of the warehouse information of the plug-in, including README, branch version, and Star number.
  • Ability to develop small sites with front-end pages using the Go language (framework is not limited) .
  • Basic understanding of authentication and authorization and OAuth2.0.
  • Familiar with Git and GitHub workflow (branches, versions, merge requests, etc.) .

Layotto Go、gRPC

Project community mentor: wenxuwan

[email protected]

Layotto Support Pluggable Components

Item number: 23f080194

Project Difficulty: Advanced/Advanced

Currently, Layotto's Components are implemented in Layotto's projects. If users want to use the new Component, they must use the Golang language to develop it, and at the same time must implement it in the Layotto project, and then compile it uniformly. It is very unfriendly to multilingual users, so Layotto needs to provide the ability of Pluggable Components, allowing users to implement their own Components in any language, and Layotto communicates with external Components through the gRPC protocol.

  • Complete the Pluggable Components framework design.
  • Provide Pluggable Components access documentation and examples.
  • Familiar with Golang and gRPC, familiar with Dapr and Layotto runtime architecture.

picture

Petition form

  • This event is for students aged 18 and above.
  • Students who are about to graduate in the summer can submit applications as long as their student ID cards are within the validity period at the time of application.
  • Chinese students need to provide their ID card, student ID card, online verification report of the Ministry of Education’s student status (Xuexin.com) or proof of enrollment to participate in the activities.
  • Foreign students need to provide their passports to participate in the activities, and at the same time provide documents such as admission notice, student card, and proof of student status to prove their identity.

Activity process

picture

Guess you like

Origin blog.csdn.net/SOFAStack/article/details/130589990