Einführung in die Grundkomponenten der technischen Architektur

Einführung in die Grundkomponenten der technischen Architektur

Hintergrund

Die meisten traditionellen Unternehmen verwenden eine zentralisierte Architektur mit einem relativ rückständigen technischen System und schwacher Skalierbarkeit. Die zentralisierte Architektur ist zu sehr auf Geräteressourcen angewiesen, und aus Stabilitäts- oder Leistungsgründen werden die meisten davon auf Großrechnern oder Minicomputern ausgeführt. Gleichzeitig verwenden traditionelle Unternehmen meist das Disaster-Recovery-Modell „zwei Standorte und drei Zentren“ und die Hochverfügbarkeit ist nicht stark. Es ist schwierig, mehrere Zentren und mehrere Aktivitäten zu realisieren, und es kann leicht zu Ressourcenverschwendung kommen.
In Bezug auf die Betriebs- und Wartungsfunktionen ist es zu abhängig von manuellen Vorgängen, um einen automatischen Betrieb und eine automatische Wartung zu erreichen, und angesichts von Geschäftsszenarien mit plötzlichem Hochfrequenzzugriff kann keine automatische elastische Skalierung erreicht werden. Wenn das Geschäftsvolumen ein bestimmtes Ausmaß erreicht, werden die Kapazität und Rentabilität der zentralisierten Datenbank leicht zum Engpass der Geschäftsentwicklung.
Alles in allem war es schwierig, das traditionelle zentralisierte Architektur-Technologiesystem in der neuen Form an die Anforderungen der Geschäftsentwicklung anzupassen. Die Entwicklung von Unternehmensanwendungen auf Basis der Microservice-Architektur ist zu einem Branchentrend geworden. Die Microservice-Architektur erreicht eine gute Anwendungsentkopplung und kann die Cloudifizierung von Anwendungen besser implementieren. Lösen Sie das Problem der unzureichenden Erweiterung und elastischen Skalierbarkeit einzelner Anwendungen.
Die Technologie-Middle-Plattform dient dazu, die Funktionen verschiedener technischer Middleware mithilfe der Cloud oder anderer Infrastrukturfunktionen zu integrieren und zu bündeln. Filtern Sie technische Details heraus, stellen Sie eine einfache, konsistente und benutzerfreundliche Funktionsschnittstelle für die Anwendung der technischen Infrastruktur bereit und erleichtern Sie den schnellen Aufbau der Daten-Middle-Plattform für die Rezeption und die Business-Middle-Plattform.

Klären Sie die Schlüsselkomponenten der Technologieplattform

Wenn das Business Center implementiert wird, muss es von vielen technischen Komponenten unterstützt werden. Diese technischen Komponenten in verschiedenen technischen Bereichen bilden das Technologiezentrum. Die meisten Geschäftsplattformen übernehmen die Microservice-Architektur, um die hohe Verfügbarkeit des Systems sicherzustellen. Bewältigen Sie hochfrequente und massive Geschäftszugriffsszenarien effektiv, sodass das Technologiezentrum über mehr technische Komponenten im Zusammenhang mit Mikroservices verfügt. Im Allgemeinen verfügt das Technologiezentrum über die folgenden Arten von Komponenten in wichtigen technischen Bereichen. Dazu gehören API-Gateway, Front-End-Entwicklungsframework, Microservice-Entwicklungsframework, Microservice-Governance-Komponenten, verteilte Datenbanken und wichtige technische Komponenten im Zusammenhang mit der Datenverarbeitung wie Replikation und Synchronisierung in einer verteilten Architektur.

1. API-Gateway

Die Microservice-Architektur übernimmt im Allgemeinen das Design der Front-End- und Back-End-Trennung, die Front-End-Seitenlogik und die Back-End-Microservice-Geschäftslogik werden unabhängig voneinander entwickelt und bereitgestellt, und Front-End und Back-End werden unabhängig voneinander entwickelt und bereitgestellt. Die Endintegration wird über das Gateway realisiert. Die technische Komponente der Front-End-Anwendung, die eine Verbindung zum Middle-End-Microservice herstellt, ist im Allgemeinen ein API-Gateway. Das API-Gateway umfasst hauptsächlich Funktionen wie Authentifizierung, Downgrade und Strombegrenzung, Verkehrsanalyse, Lastausgleich, Service-Routing und Zugriffsprotokolle. Das API-Gateway kann Benutzern dabei helfen, Microservice-API-Schnittstellen bequem zu verwalten, eine sichere Front-End- und Back-End-Trennung zu realisieren sowie eine effiziente Systemintegration und eine feine Serviceüberwachung zu realisieren.

2. Entwicklungsrahmen

Das Entwicklungsframework umfasst hauptsächlich das Front-End-Entwicklungsframework und das Back-End-Microservice-Entwicklungsframework. Basierend auf dem Front-End- und Back-End-Entwicklungsframework. Schließen Sie die Entwicklung der Front-End-Seitenlogik bzw. der Back-End-Geschäftslogik ab. Das Front-End-Entwicklungsframework ist hauptsächlich für PC- oder mobile Anwendungen gedacht und wird zum Aufbau der Systempräsentationsschicht, zur Standardisierung von Front-End- und Back-End-Interaktionen und zur Reduzierung der Front-End-Entwicklungskosten verwendet. Das Microservice-Entwicklungsframework wird zum Erstellen von Microservice-Anwendungen auf Unternehmensebene verwendet. Im Allgemeinen zeichnet es sich durch automatische Konfiguration, schnelle Entwicklung, bequemes Debuggen und Bereitstellen usw. aus und bietet grundlegende Klassenbibliotheken für die Service-Governance wie Microservice-Registrierung, Erkennung, Kommunikation, Fehlertoleranz und Überwachung usw., um Entwicklern beim schnellen Erstellen zu helfen Microservice-Anwendungen auf Produktebene. Entwicklungsframeworks unterstützen im Allgemeinen Funktionen wie automatische Codegenerierung, lokales Debugging und Abhängigkeitsmanagement.

3. Microservice-Governance

Microservice-Governance ist eine dynamische Governance-Strategie, die für den Betriebsstatus von Microservices während des Betriebs von Microservices angewendet wird, z. B. Dienstregistrierung, Erkennung, Strombegrenzung, Leistungsschalter und Downgrade, um den kontinuierlichen und stabilen Betrieb von Microservices sicherzustellen. Microservice-Governance wird hauptsächlich in Szenarien wie der Statusüberwachung während des Microservice-Betriebs und der Konfiguration von Governance-Richtlinien bei abnormaler Ausführung von Microservices verwendet, um die Selbstwiederherstellungsfähigkeiten von Microservices in häufigen abnormalen Szenarien sicherzustellen. Zu den Komponenten der Microservice-Governance-Technologie gehören im Allgemeinen Serviceregistrierung, Serviceerkennung, Servicekommunikation, Konfigurationscenter, Servicesicherung, Fehlertoleranz und Microservice-Überwachung. Die gängige Microservice-Governance umfasst technische Systeme wie Dubbo, SpringCloud und ServiccMesh.

4. Verteilte Datenbank

Verteilte Datenbanken verfügen im Allgemeinen über starke lineare Datenerweiterungsfunktionen, und die meisten von ihnen verwenden Datenmehrfachkopiemechanismen, um eine hohe Verfügbarkeit von Datenbanken zu erreichen, was technische Vorteile wie Skalierbarkeit und niedrige Kosten bietet. Verteilte Datenbanken umfassen im Allgemeinen drei Typen: transaktionsbasierte verteilte Datenbanken, analytische verteilte Datenbanken und hybride verteilte Transaktionsanalysedatenbanken. Die verteilte Transaktionsdatenbank wird verwendet, um die Datenbankrechenleistung des Transaktionsgeschäfts zu lösen. Sie unterstützt Datenunterdatenbanken, Fragmentierung und mehrere Kopien von Daten. Sie verfügt über Hochverfügbarkeitsmerkmale, bietet eine einheitliche Betriebs- und Wartungsschnittstelle und verfügt über leistungsstarke Transaktionsfunktionen Geschäftsdaten. Verarbeitungsleistung. Es wird hauptsächlich in Geschäftsszenarien für Kerntransaktionen verwendet, die überregionale Bereitstellungs- und Hochverfügbarkeitsanforderungen erfordern und eine hohe Parallelität und einen Hochfrequenzzugriff unterstützen müssen. Analytische verteilte Datenbanken verbessern die Gesamtrechenleistung und den Datendurchsatz durch horizontale Erweiterungsmöglichkeiten und parallele Rechenmöglichkeiten und unterstützen die Analyse großer Datenmengen. Es wird hauptsächlich in Szenarien wie der statistischen Analyse umfangreicher strukturierter Daten und leistungsstarken interaktiven Analysen wie Data Warehouses und Data Marts verwendet. Die hybride verteilte Datenbank zur Transaktionsanalyse nutzt technische Mittel wie Ressourcenisolation, Time-Sharing und Datenmehrfachkopien und verwendet unterschiedliche Speichermedien und verteilte Computer-Engines basierend auf unterschiedlichen Datenspeicher-, Zugriffsleistungs- und Kapazitätsanforderungen, um Geschäftstransaktionen und Analyseanforderungen zu erfüllen . Es wird hauptsächlich für große Datenmengen und großen gleichzeitigen Zugriff verwendet. Es muss das Problem der hohen Kosten bei der Synchronisierung von Transaktionsdaten mit der Analysedatenbank lösen, das Problem der einheitlichen Datenbankpopulation lösen und Geschäftsszenarien für die Datenverarbeitung unterstützen wie hohe Verfügbarkeit und hohe Skalierbarkeit.

5. Komponenten der Datenverarbeitung

Um die Anwendungsleistung und die Geschäftstragfähigkeit zu verbessern, den Kopplungsgrad von Mikrodiensten zu verringern und verteilte Transaktionen unter einer verteilten Architektur zu realisieren, verfügt das Technologiezentrum auch über viele grundlegende technische Komponenten im Zusammenhang mit der Datenverarbeitung. Zum Beispiel: verteilter Cache, Suchmaschine, Datenreplikation, Nachrichten-Middleware und verteilte Transaktionen sowie andere technische Komponenten. Der verteilte Cache besteht darin, hochfrequente Hot-Datensätze auf mehrere Speicherclusterknoten zu verteilen und sie in einer Kombination aus Replikation, Verteilung, Partitionierung und Fehlern zu verwalten, das Problem der hohen gleichzeitigen Hot-Data-Zugriffsleistung zu lösen, den Zugriffsdruck auf die Hintergrunddatenbank zu verringern usw Verbesserung der Systemdurchsatzfähigkeit. Zu den typischen Open-Source-Komponenten der verteilten Cache-Technologie gehört die Redis-Suchmaschine, die hauptsächlich die Anforderungen einer schnellen Suche und Analyse großer Datenmengen erfüllt. Laden Sie verschiedene Arten von Daten, z. B. Geschäftsdaten und Protokolle, in Suchmaschinen, um skalierbare Suchfunktionen nahezu in Echtzeit bereitzustellen. Die Datenreplikation löst hauptsächlich Datensynchronisierungsanforderungen, realisiert die Datenreplikation zwischen homogenen und heterogenen Datenbanken und über Rechenzentren hinweg und erfüllt Datenspeicher-, Austausch- und Integrationsanforderungen auf mehreren Ebenen. Es wird hauptsächlich in Datenmigrationsszenarien wie der tabellen- oder bibliotheksbasierten Geschäftsdatenmigration und der Geschäftsdatenreplikation in Data Warehouses verwendet. Die meisten Komponenten der Datenreplikationstechnologie verwenden Datenbankprotokollerfassungs- und -analysetechnologie. Bei der Auswahl der Technologie muss die Anpassungsfähigkeit zwischen Komponenten der Datenreplikationstechnologie und der Quelldatenbank berücksichtigt werden. Messaging-Middleware ist hauptsächlich auf Geschäftsszenarien mit endgültiger Datenkonsistenz anwendbar. Sie verwendet ein asynchrones Design, um die Datensynchronisierung für den asynchronen Betrieb zu realisieren, unterstützt massive asynchrone Datenaufrufe und verbessert den Geschäftsdurchsatz und die Übertragungskapazität durch Spitzenausgleichs- und Talfüllungsdesign. Es wird häufig in Szenarien wie der asynchronen Datenübertragung zwischen Mikrodiensten, der Erfassung von Big-Data-Protokollen und Streaming-Computing verwendet. Darüber hinaus ist die Nachrichten-Middleware im domänenereignisgesteuerten Modell des domänengesteuerten Designs eine sehr wichtige technische Komponente, um die endgültige Konsistenz der Domänenereignisdaten zu erreichen. Dadurch kann eine Entkopplung zwischen Mikrodiensten realisiert und die Anforderungen „hohe Kohäsion, niedrige Kohäsion“ erfüllt werden Kopplung". " Konstruktionsprinzipien. Typische Open-Source-Nachrichten-Middleware umfasst Kafka und so weiter. Verteilte Transaktionen dienen hauptsächlich dazu, das Problem der Transaktionskonsistenz in der verteilten Architektur zu lösen. Nachdem die monolithische Anwendung in Mikrodienste aufgeteilt wurde, wird eine große Anzahl interner Aufrufe der ursprünglichen monolithischen Anwendung zum mikrodienstübergreifenden Zugriff. Wenn bei einem Knoten in der Geschäftsanrufverbindung ein Problem auftritt, kann dies zu Dateninkonsistenzen führen.
Verteilte Transaktionen basieren auf dem verteilten Transaktionsmodell, um die Datenkonsistenz über Datenbanken oder mikroserviceübergreifende Aufrufszenarien hinweg sicherzustellen. Obwohl verteilte Transaktionen die Datenkonsistenz in Echtzeit gewährleisten können, führen zu viele verteilte Transaktionsdesigns zu einer Verschlechterung der Systemleistung. Daher sollte beim Entwerfen von Mikrodiensten zuerst der endgültige Datenkonsistenzmechanismus der Backbone-Nachrichten-Middleware verwendet und die Verwendung verteilter Transaktionen so weit wie möglich vermieden werden.

abschließend

Die technische Mittelplattform ist die zentrale technische Grundlage für den Aufbau der Business-Mittelplattform. Während des Aufbaus der mittleren Plattform können neue technische Komponenten entsprechend den Geschäftsanforderungen kontinuierlich aktualisiert und übernommen werden, und einige allgemeine Komponenten (z. B. Zertifizierung usw.), die keine offensichtliche geschäftliche Bedeutung haben, können ebenfalls in die Technologie einbezogen werden abstraktes und standardisiertes Design Taiwan-System - Management.

Supongo que te gusta

Origin blog.csdn.net/weixin_43485035/article/details/129620653
Recomendado
Clasificación