Autor: Seata Community
Teil 1: Begrüßen Sie alle, sich für das Apache Seata (incubating) Open Source Summer 2024-Projekt zu registrieren
Der Anmeldezeitraum für Studierende für den Open Source Summer 2024 läuft vom 30. April bis 3. Juni. Willkommen bei der Registrierung für das Thema Apache Seata (incubating) 2024! Hier haben Sie die Möglichkeit, sich mit der Theorie und Anwendung verteilter Transaktionen auseinanderzusetzen und mit Kommilitonen mit unterschiedlichem Hintergrund an praktischen Projekten zu arbeiten. Wir freuen uns auf Ihre aktive Teilnahme und Ihren Beitrag, um gemeinsam die Entwicklung verteilter Transaktionen voranzutreiben.
Teil 2: Open Source Sommer 2024
Open Source Summer ist eine sommerliche Open-Source-Aktivität, die vom „Open Source Software Supply Chain Lighting Plan“ des Instituts für Software der Chinesischen Akademie der Wissenschaften initiiert und langfristig unterstützt wird. Ziel ist es, Schüler zu ermutigen, sich aktiv an der Entwicklung zu beteiligen Wartung von Open-Source-Software und Förderung und Entdeckung weiterer herausragender Entwickler. Es fördert die starke Entwicklung exzellenter Open-Source-Software-Communitys und hilft beim Aufbau von Open-Source-Software-Lieferketten.
Die teilnehmenden Studierenden beteiligen sich durch Remote-Online-Zusammenarbeit an der Projektentwicklung verschiedener Organisationen in der Open-Source-Community, werden von erfahrenen Mentoren angeleitet und erhalten Prämien, Geschenke und Zertifikate. Diese Erfolge sind nicht nur ein Highlight in den Lebensläufen zukünftiger Absolventen, sondern auch ein glänzender Ausgangspunkt, um ein Top-Entwickler zu werden. Man kann sagen, dass es einen Versuch wert ist. Der Schwierigkeitsgrad jedes Projekts ist in zwei Stufen unterteilt: Grundstufe und Fortgeschritten. Die entsprechenden Abschlussboni für Studenten betragen 8.000 RMB vor Steuern bzw. 12.000 RMB vor Steuern.
Teil 3: Einführung in die Apache Seata (Inkubations-)Community
Apache Seata (incubating) ist eine Open-Source-Lösung für verteilte Transaktionen. GitHub hat mehr als 23.000 Starts erhalten und ist bestrebt, leistungsstarke und benutzerfreundliche verteilte Transaktionsdienste im Rahmen einer Microservice-Architektur bereitzustellen. Bevor Seata Open Source war, spielte Seata immer die Rolle der Middleware für die verteilte Datenkonsistenz. Seata wurde bei fast jeder Transaktion eingesetzt und bot dem Unternehmen starke technische Unterstützung.
Teil 4: Zusammenfassung der Themen des Apache Seata (incubating) Community Open Source Summer 2024-Projekts
Die Community empfiehlt 4 ausgewählte Projektthemen für das Organisationskomitee des Open Source Summer 2024. Zur Auswahl können Sie den folgenden Link besuchen.
https://summer-ospp.ac.cn/org/orgdetail/064c15df-705c-483a-8fc8-02831370db14?lang=zh
Bitte kommunizieren Sie rechtzeitig mit jedem Dozenten, bereiten Sie Bewerbungsunterlagen für das Projekt vor und melden Sie sich bei der offiziellen Registrierungsanwendung an (die folgenden Themen sind in keiner bestimmten Reihenfolge):
Projekt 1: Vollständige Linkunterstützung für das gRPC-Protokoll
Schwierigkeit: Fortgeschritten/Fortgeschritten
Mentor der Projektgemeinschaft: Chen Jianbin
Kontakt-E-Mail des Tutors: [email protected]
Projektübersicht:
HTTP / 2 und 1. Es ist nativer kompatibler und skalierbarer.
Cloud-nativ: Nachdem Seata mit mehreren Protokollen kompatibel ist, wird es in Zukunft auch mit verschiedenen Cloud-nativen Komponenten kompatibel sein. Beispielsweise kann der 7-Schicht-Proxy von Envoy gut angepasst und in verschiedene Cloud-native-Komponenten integriert werden, um zu einer ausgereifteren Lösung zu gelangen und robuster Cloud-nativer Standard für verteilte Transaktionen.
Sicherheit: Derzeit unterstützt Seata kein TLS, aber die Verwendung von HTTP/2 kann TLS besser unterstützen und die Sicherheit verbessern.
Protokollkonvergenz: Derzeit gibt es auf der Seata-Seite mehrere Protokolle, z. B. das private Protokoll für RPC, das HTTP-Protokoll für die Konsolen-API und das private/gRPC-Protokoll für Inter-Cluster-Wahlen. Wenn Seata Multiprotokollkompatibilität unterstützt, kann es mehrere Protokolle direkt an einem Port analysieren, ohne zwischen mehreren Ports zu unterscheiden, und die Authentifizierungsmethode vereinheitlichen, um die Wartbarkeit zu verbessern.
Abhängigkeit reduzieren: Das HTTP-Protokoll von Seata verwendet derzeit den in SpringBoot Web integrierten Tomcat, und die Wahl basiert auf dem Blot in Sofa-Jraft. Wenn die Multiprotokollkompatibilität abgeschlossen ist, kann die Clusterwahl auf grpc, API-Schnittstelle und Transaktions-RPC-Aufrufe umgestellt werden und Namingserver kann grpc/http verwenden, um mit dem Server zu kommunizieren, was auch die damit verbundenen Abhängigkeiten reduziert und ihn leichter macht.
Projektlink: https://summer-ospp.ac.cn/org/prodetail/240640258?list=org&navpage=org
Projekt 2: Integration mit Kubernetes, um die Betriebs- und Wartungsfunktionen von Seata-ctl zu verbessern
Schwierigkeit: Fortgeschritten/Fortgeschritten
Mentor der Projektgemeinschaft: Yin Xiangkun
Kontakt-E-Mail des Tutors: [email protected]
Projektübersicht:
Seata-ctl ist ein Befehlszeilenschnittstellentool (CLI) für den Betrieb und die Wartung von Clustern. Es verfügt bereits über Funktionen wie Transaktionssimulation, Konfigurationsverwaltung und Gesundheitsprüfung. Da Kubernetes zur De-facto-Standardplattform für moderne Service-Orchestrierung und -Planung wird, plant dieses Projekt, Seata-ctl durch die Integration mit der Kubernetes-API weiter zu erweitern. Das Ziel des Projekts besteht darin, es in ein umfassendes CLI-Tool zu integrieren, das Seata Server auf Kubernetes verwalten und beobachten kann und die Bereitstellung, Erweiterung und Kontraktion sowie Beobachtbarkeit unterstützt.
Projektlink: https://summer-ospp.ac.cn/org/prodetail/240640262?list=org&navpage=org
Projekt 3: Konsolen-OpenAPI implementieren und Systemsicherheit verbessern
Schwierigkeit: Fortgeschritten/Fortgeschritten
Mentor der Projektgemeinschaft: Ji Min (Qing Ming)
Kontakt-E-Mail des Tutors: [email protected]
Projektübersicht:
Apache Seata (incubating) ist eine Open-Source-Lösung für verteilte Transaktionen, die darauf ausgelegt ist, leistungsstarke und benutzerfreundliche verteilte Transaktionsdienste bereitzustellen. Mit der Popularität der Microservice-Architektur ist das verteilte Transaktionsmanagement immer wichtiger geworden, insbesondere um die Datenkonsistenz und Systemgenauigkeit sicherzustellen.
Derzeit bietet Apache Seata eine funktionsreiche Konsole für die Transaktionsverwaltung und -überwachung. Um die Benutzerfreundlichkeit und Sicherheit weiter zu verbessern, ist es jedoch erforderlich, die OpenAPI für den Lesevorgang der Konsole und die OpenAPI für den Transaktionssteuerungsadministrator zu entwickeln.
Darüber hinaus sind der Authentifizierungsmechanismus der API sowie die Authentifizierung zwischen Raft-Cluster-Knoten und die Generierung von JWT-Geheimnissen bei der ersten Erstellung des Seata-Server-Clusters wichtige Maßnahmen zur Verbesserung der Systemsicherheit.
Projektlink: https://summer-ospp.ac.cn/org/prodetail/240640276?list=org&navpage=org
Projekt 4: Konfigurationscenter basierend auf Raft und RocksDB implementieren
Schwierigkeit: Fortgeschritten/Fortgeschritten
Mentor der Projektgemeinschaft: Wu Jiangke
Kontakt-E-Mail des Kursleiters: [email protected]
Projektübersicht:
Derzeit unterstützt Seata eine Vielzahl von Konfigurationscentern von Drittanbietern. Aufgrund der Benutzerfreundlichkeit und der Senkung der Schwelle für die Verwendung von Seata verwenden wir jedoch die vorhandene Konfigurationscenter-Funktion in Seata-jraft+rocksdb. Der Client interagiert direkt mit der Seata-Server-Kommunikation, um Seata-bezogene Konfigurationen zu erhalten. Es ist nicht erforderlich, zum Lesen zum Konfigurationscenter eines Drittanbieters zu gehen, wodurch eine selbstgeschlossene Schleife des Konfigurationscenters realisiert wird.
Kerntipp: Sie müssen eine Config-Raft-Gruppe sowie entsprechende Zustandsmaschinen und Ereignisse implementieren, um die Aktionen von rocksdb zu synchronisieren und sicherzustellen, dass die Daten in rocksdb auf mehreren Knoten konsistent sind.
Projektlink: https://summer-ospp.ac.cn/org/prodetail/240640285?list=org&navpage=org
Teil 5: Wie kann man am Open Source Summer 2024 teilnehmen und schnell Projekte auswählen?
Sie können gerne über die oben genannten Kontaktinformationen mit jedem Dozenten kommunizieren und Bewerbungsunterlagen für das Projekt vorbereiten.
Während des Projektteilnahmezeitraums können Studierende von überall auf der Welt online arbeiten. Der Projektabschluss im Zusammenhang mit Apache Seata (Inkubation) muss in Form von PR an das Community-Repository übermittelt und vor dem 30. September zusammengeführt werden . Bitte bereiten Sie sich so früh wie möglich vor wie möglich.
Wenn Sie während der Projektlaufzeit so schnell wie möglich den Dozenten und andere Informationen benötigen, können Sie den QR-Code scannen oder die Gruppennummer suchen, um der DingTalk-Kommunikationsgruppe beizutreten (Gruppennummer: 44440907 ). Erfahren Sie mehr über die (Inkubations-)Community-Projekte von Apache Seata in verschiedenen Bereichen und lernen Sie Community-Open-Source-Mentoren kennen, die Sie bei späteren Anwendungen unterstützen.
Klicken Sie hier, um alle Apache Seata(incubating) 2024 Open Source Summer-Projekte anzuzeigen.
Das chinesische KI-Team hat zusammengepackt und ist mit Hunderten von Menschen in die USA gereist. Wie viel Umsatz kann Huawei offiziell bekannt geben, dass die Open-Source-Spiegelstation der Yu Chengdong- Universität angepasst wurde? Der offiziell eröffnete externe Netzwerkzugang nutzte TeamViewer, um 3,98 Millionen zu überweisen! Was sollten Remote-Desktop-Anbieter tun? Die erste Front-End-Visualisierungsbibliothek und Gründer von Baidus bekanntem Open-Source-Projekt ECharts – ein ehemaliger Mitarbeiter eines bekannten Open-Source-Unternehmens, der „zum Meer ging“, verbreitete die Nachricht: Nachdem er von seinen Untergebenen herausgefordert worden war, wurde der Techniker Der Anführer wurde wütend und unhöflich und entließ die schwangere Mitarbeiterin. OpenAI erwog, der Rust Foundation zu erlauben, 1 Million US-Dollar zu spenden. Bitte sagen Sie mir, welche Rolle time.sleep(6) spielt ?