DE112021003402T5 - Blockchain-verwaltung von bereitstellungsfehlern - Google Patents

Blockchain-verwaltung von bereitstellungsfehlern Download PDF

Info

Publication number
DE112021003402T5
DE112021003402T5 DE112021003402.2T DE112021003402T DE112021003402T5 DE 112021003402 T5 DE112021003402 T5 DE 112021003402T5 DE 112021003402 T DE112021003402 T DE 112021003402T DE 112021003402 T5 DE112021003402 T5 DE 112021003402T5
Authority
DE
Germany
Prior art keywords
program instructions
computer
service
problematic
api calls
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112021003402.2T
Other languages
English (en)
Inventor
Jingbo Jiang
Lini Zhang
Lilong Chen
Yu Zhao
Wenrui Zhao
Lan Luo
Li Jiang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112021003402T5 publication Critical patent/DE112021003402T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0769Readable error formats, e.g. cross-platform generic formats, human understandable formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Abstract

Bei einem Ansatz zur Blockchain-Verwaltung von Fehlern bei der Bereitstellung von Cloud-Diensten erfassen ein oder mehrere Computerprozessoren einen oder mehrere Aufrufe einer Schnittstelle zur Anwendungsprogrammierung (API), die einer Bereitstellung eines Dienstes zugehörig sind. Ein oder mehrere Computerprozessoren übermitteln den einen oder die mehreren erfassten API-Aufrufe an ein Blockchain-Register. Ein oder mehrere Computerprozessoren erkennen einen Systemfehler während der Bereitstellung eines Dienstes. Ein oder mehrere Computerprozessoren extrahieren den einen oder die mehreren übermittelten API-Aufrufe aus dem Blockchain-Register. Auf der Grundlage des einen oder der mehreren extrahierten API-Aufrufe ermitteln ein oder mehrere Computerprozessoren ein problematisches System, das dem Systemfehler zugehörig ist.

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein den Bereich des Bereitstellens von Cloud-Diensten und insbesondere eine Blockchain-Verwaltung von Fehlern beim Bereitstellen von Cloud-Diensten.
  • Bei einer Blockchain handelt es sich um ein dezentrales und verteiltes digitales Register, das Transaktionen zwischen zwei oder mehr Parteien effizient und auf nachprüfbare und dauerhafte Weise aufzeichnen kann. Das Register selbst kann auch so programmiert sein, dass es Transaktionen automatisch auslöst. Eine Blockchain verwaltet eine ständig wachsende Liste von Aufzeichnungen, die als Blöcke bezeichnet werden und vor Manipulationen und Änderungen geschützt sind. Jeder Block enthält einen Zeitstempel und einen Verweis auf einen früheren Block. Blockchains sind konstruktionsbedingt von Natur aus unempfindlich gegen eine Abänderung der Daten - einmal aufgezeichnet, können die Daten in einem Block nicht mehr rückwirkend geändert werden. Unter Verwendung eines Peer-to-Peer-Netzwerks und eines verteilten Zeitstempelservers wird eine Blockchain-Datenbank unabhängig verwaltet. Der dezentrale Konsensalgorithmus von Blockchain-Technologien ermöglicht es mehreren Entitäten, eine gemeinsame Aufzeichnung von Informationen zu führen, ohne sich gegenseitig vertrauen zu müssen, da der Konsens auf Netzwerkbasis gebildet wird. Das vernetzte Modell erzeugt ein System mit den Vorteilen von Unempfindlichkeit gegenüber Zensur und Manipulationen sowie ein System ohne einen einzelnen Ausfallpunkt.
  • Mit dem ständigen Wachstum digitaler Informationen besteht eine immer stärkere Abhängigkeit von Cloud-Computing. Cloud-Computing ist ein Modell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Server, Speicher, Anwendungen und Dienste), die mit minimalem Verwaltungsaufwand schnell bereitgestellt und freigegeben werden können. Die Verfügbarkeit von kostengünstigen Computern und Speichereinheiten sowie die weit verbreitete Einführung von Hardwarevirtualisierung und serviceorientierter Architektur haben zu einem Wachstum des Cloud-Computings geführt. Die Skalierbarkeit, die das Cloud-Computing bietet, ermöglicht es Benutzern, bei steigendem Datenverarbeitungsbedarf nach oben zu skalieren und dann wieder nach unten zu skalieren, wenn der Bedarf sinkt.
  • In letzter Zeit haben sich die Verwendung der Cloud und die cloudbasierte Bereitstellung eines Dienstes durchgesetzt, die es Verbrauchern ermöglichen, Ressourcen in einer öffentlichen, privaten oder hybriden Cloud gemeinsam zu nutzen. Für die Bereitstellung eines Dienstes sind über Schnittstellen angebundene „externe Systeme“ erforderlich, um einen Arbeitsablauf für die Bereitstellung eines Dienstes zu Ende zu bringen, was eine tiefere Kette des Datenaustauschs mit externen Systemen für eine oder mehrere Aufrufe einer Schnittstelle zur Anwendungsprogrammierung (API, application programming interface) erfordern kann. Mehrere externe Systeme, die in der Regel von verschiedenen Besitzern verwaltet und gewartet werden, müssen koordiniert werden, um die Bereitstellung von durchgängigen Diensten zu Ende zu bringen. Bei einigen der externen Systeme kann es sich um bestehende Systeme handeln, wie zum Beispiel Änderungsmanagement- oder Ticketingsysteme. Wenn die Bereitstellung eines Dienstes fehlschlägt, kann es schwierig sein, ohne Hin- und Herdiskutieren und Verhandlung mit den beteiligten Parteien eine Analyse der zugrunde liegenden Ursache durchzuführen. Zusätzlich wird die Bereitstellung eines Dienstes für die Zeit unterbrochen, die zum Beheben des Problems und zum Testen der Lösung erforderlich ist, selbst wenn eine zugrunde liegende Ursache auf einem bestimmten externen System ermittelt wurde.
  • KURZDARSTELLUNG
  • Ein erster Aspekt der vorliegenden Erfindung offenbart ein Verfahren, das einen oder mehrere Computerprozessoren umfasst, die einen oder mehrere Aufrufe einer Schnittstelle zur Anwendungsprogrammierung (API) erfassen, die einer Bereitstellung eines Dienstes zugehörig sind. Ein oder mehrere Computerprozessoren übermitteln den einen oder die mehreren erfassten API-Aufrufe an ein Blockchain-Register. Ein oder mehrere Computerprozessoren erkennen einen Systemfehler während der Bereitstellung eines Dienstes. Ein oder mehrere Computerprozessoren extrahieren den einen oder die mehreren übermittelten API-Aufrufe aus dem Blockchain-Register. Auf der Grundlage des einen oder der mehreren extrahierten API-Aufrufe ermitteln ein oder mehrere Computerprozessoren ein problematisches System, das dem Systemfehler zugehörig ist.
  • Ein zweiter Aspekt der vorliegenden Erfindung offenbart ein Computerprogrammprodukt, das ein oder mehrere durch einen Computer lesbare Speichermedien und auf dem einen oder den mehreren durch einen Computer lesbaren Speichermedien gemeinsam gespeicherte Programmanweisungen umfasst. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Erfassen eines oder mehrerer einer Bereitstellung eines Dienstes zugehöriger Aufrufe der Schnittstelle zur Anwendungsprogrammierung (API). Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Übermitteln des einen oder der mehreren erfassten API-Aufrufe an ein Blockchain-Register. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Erkennen eines Systemfehlers während der Bereitstellung eines Dienstes. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Extrahieren des einen oder der mehreren übermittelten API-Aufrufe aus dem Blockchain-Register. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Ermitteln eines problematischen Systems, das dem Systemfehler zugehörig ist, auf der Grundlage des einen oder der mehreren extrahierten API-Aufrufe.
  • Ein dritter Aspekt der vorliegenden Erfindung offenbart ein Computersystem, das einen oder mehrere Computerprozessoren und einen oder mehrere durch einen Computer lesbare Speichermedien umfasst, wobei die Programmanweisungen gemeinsam auf dem einen oder den mehreren durch einen Computer lesbaren Speichermedien gespeichert sind. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Erfassen eines oder mehrerer einer Bereitstellung eines Dienstes zugehöriger Aufrufe der Schnittstelle zur Anwendungsprogrammierung (API). Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Übermitteln des einen oder der mehreren erfassten API-Aufrufe an ein Blockchain-Register. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Erkennen eines Systemfehlers während der Bereitstellung eines Dienstes. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Extrahieren des einen oder der mehreren übermittelten API-Aufrufe aus dem Blockchain-Register. Die gespeicherten Programmanweisungen umfassen Programmanweisungen zum Ermitteln eines problematischen Systems, das dem Systemfehler zugehörig ist, auf der Grundlage des einen oder der mehreren extrahierten API-Aufrufe.
  • In einem anderen Aspekt umfasst das Ermitteln des problematischen Systems ein Durchführen einer Analyse der zugrunde liegenden Ursache des Systemfehlers durch einen oder mehrere Computerprozessoren, während des Erstellens eines Berichts durch einen oder mehrere Computerprozessoren, wobei der Bericht die Analyse der zugrunde liegenden Ursache, das problematische System und mindestens eine Korrekturmaßnahme enthält, und ein Übermitteln des Berichts an das Blockchain-Register durch einen oder mehrere Computerprozessoren. Das Erstellen eines Berichts, der eine Analyse der zugrunde liegenden Ursache enthält, ist vorteilhaft, da ein Benutzer nicht in den Prozess eingreifen muss, um eine zugrunde liegende Ursache des Fehlers zu bestimmen. Das Übermitteln eines Berichts, der eine Analyse der zugrunde liegenden Ursache enthält, an das Blockchain-Register ist vorteilhaft, da ein Bericht in dem Blockchain-Register nicht geändert werden kann.
  • In noch einem anderen Aspekt umfasst die Blockchain-Verwaltung von Fehlern bei der Bereitstellung von Cloud-Diensten ein Abrufen eines intelligenten Vertrags, der dem problematischen System und der Bereitstellung des Dienstes zugehörig ist, durch einen oder mehrere Computerprozessoren, ein Empfangen eines oder mehrerer API-Aufrufe, die dem problematischen System zugehörig sind, durch einen oder mehrere Computerprozessoren, und ein Erstellen einer Pseudoantwort auf den einen oder die mehreren API-Aufrufe, die dem problematischen System zugehörig sind, auf der Grundlage des intelligenten Vertrags durch einen oder mehrere Computerprozessoren. Das Abrufen eines intelligenten Vertrags und das Erstellen einer Pseudoantwort auf der Grundlage des abgerufenen intelligenten Vertrags ist vorteilhaft, da Antworten des problematischen Systems scheinbar im Zuge der Behebung des Problems erfolgen, wodurch ermöglicht wird, dass die Bereitstellung ohne Verzögerung zu Ende gebracht wird.
  • Figurenliste
    • 1 ist ein Funktionsblockschaubild, das eine verteilte Datenverarbeitungsumgebung gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
    • 2 ist ein Ablaufplan, der Arbeitsschritte eines Dienstkoordinators auf einem Server-Computer innerhalb der verteilten Datenverarbeitungsumgebung aus 1 für eine Blockchain-Verwaltung von Fehlern bei der Bereitstellung eines Dienstes gemäß einer Ausführungsform der vorliegenden Erfindung darstellt;
    • 3 veranschaulicht ein Beispiel für Arbeitsschritte des Dienstkoordinators auf dem Server-Computer innerhalb der verteilten Datenverarbeitungsumgebung aus 1, gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 4 stellt ein Blockschaubild von Komponenten des Server-Computers gemäß einer Ausführungsform der vorliegenden Erfindung dar, der den Dienstkoordinator innerhalb der verteilten Datenverarbeitungsumgebung aus 1 ausführt;
    • 5 stellt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung dar; und
    • 6 stellt Abstraktionsmodellschichten gemäß einer Ausführungsform der vorliegenden Erfindung dar.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der vorliegenden Erfindung erkennen, dass die Effizienz durch automatisches Erfassen und Speichern von systemübergreifenden Datenübertragungsdaten für jeden API-Aufruf für ein externes System und Speichern der Datenübertragungsdaten in einem Blockchain-Register gesteigert werden kann, um eine Analyse der zugrunde liegenden Ursache und eine Ermittlung des Problemverantwortlichen zu ermöglichen. Ausführungsformen der vorliegenden Erfindung setzen auch eine proaktive, automatische Analyse und Ermittlung von Fehlern bei der Bereitstellung eines Dienstes auf der Grundlage von Daten um, die in einem Blockchain-Register-System für eine komplizierte Bereitstellung eines Dienstes erfasst und gespeichert werden. Ausführungsformen der vorliegenden Erfindung stellen auch einen intelligenten Vertrag bereit, damit Antworten von dem problematischen System im Zuge der Behebung des Problems erfolgen, wodurch die Bereitstellung ohne Verzögerung zu Ende gebracht werden kann. Die Umsetzung von Ausführungsformen der Erfindung kann in einer Vielfalt von Formen erfolgen, und beispielhafte Einzelheiten der Umsetzung werden nachfolgend unter Bezugnahme auf die Figuren erörtert.
  • 1 ist ein Funktionsblockschaubild, das eine verteilte Datenverarbeitungsumgebung, die allgemein mit 100 gekennzeichnet ist, gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht. Der hierin verwendete Begriff „verteilt“ beschreibt ein Computersystem, das mehrere physisch getrennte Einheiten umfasst, die zusammen als ein einzelnes Computersystem arbeiten. 1 stellt lediglich eine Veranschaulichung einer Umsetzung bereit und bringt keinerlei Einschränkungen in Bezug auf die Umgebungen mit sich, in denen verschiedene Ausführungsformen umgesetzt werden können. Ein Fachmann kann viele Abänderungen an der dargestellten Umgebung vornehmen, ohne von dem Umfang der wie in den Ansprüchen angegebenen Erfindung abzuweichen.
  • Die verteilte Datenverarbeitungsumgebung 100 umfasst einen Server-Computer 104, eine Cloud-Verwaltungsplattform 114 und ein Blockchain-Registersystem 118, die alle über ein Netzwerk 102 miteinander verbunden sind. Bei dem Netzwerk 102 kann es sich zum Beispiel um ein Telekommunikationsnetzwerk, ein lokales Netzwerk (LAN), ein Weitverkehrsnetz (WAN) wie zum Beispiel das Internet, oder eine Kombination der drei handeln, und es kann drahtgebundene, drahtlose oder faseroptische Verbindungen umfassen. Zu dem Netzwerk 102 können ein oder mehrere drahtgebundene und/oder drahtlose Netzwerke gehören, die in der Lage sind, Daten-, Sprach- und/oder Videosignale zu empfangen und zu übermitteln, darunter Multimedia-Signale, die Sprach-, Daten- und Videoinformationen umfassen. Im Allgemeinen kann es sich bei dem Netzwerk 102 um eine beliebige geeignete Kombination von Verbindungen und Protokollen handeln, die Datenübertragungen zwischen dem Server-Computer 104, der Cloud-Verwaltungsplattform 114 und dem Blockchain-Registersystem 118 und anderen Datenverarbeitungseinheiten (nicht gezeigt) innerhalb der Datenverarbeitungsumgebung 100 unterstützt.
  • Bei dem Server-Computer 104 kann es sich um eine eigenständige Datenverarbeitungseinheit, einen Verwaltungsserver, einen Web-Server, eine mobile Datenverarbeitungseinheit oder eine beliebige andere elektronische Einheit oder ein Datenverarbeitungssystem handeln, die/das in der Lage ist, Daten zu empfangen, zu senden und zu verarbeiten. In anderen Ausführungsformen kann der Server-Computer 104 ein Server-Datenverarbeitungssystem darstellen, das mehrere Computer als Serversystem nutzt, wie zum Beispiel in einer Cloud-Computing-Umgebung. In einer anderen Ausführungsform kann es sich bei dem Server-Computer 104 um einen Laptop-Computer, einen Tablet-Computer, einen Netbook-Computer, einen Personal Computer (PC), einen Desktop-Computer, einen persönlichen digitalen Assistenten (PDA, personal digital assistant), ein Smartphone oder eine beliebige programmierbare elektronische Einheit handeln, die in der Lage ist, über das Netzwerk 102 mit der Cloud-Verwaltungsplattform 114, dem Blockchain-Registersystem 118 und anderen Datenverarbeitungseinheiten (nicht gezeigt) innerhalb der verteilten Datenverarbeitungsumgebung 100 Daten auszutauschen. In einer anderen Ausführungsform stellt der Server-Computer 104 ein Datenverarbeitungssystem dar, das in Gruppen zusammengefasste Computer und Komponenten nutzt (z.B. Datenbankserver-Computer, Anwendungsserver-Computer usw.), die als ein einzelner Pool von nahtlosen Ressourcen fungieren, wenn auf sie innerhalb der verteilten Datenverarbeitungsumgebung 100 zugegriffen wird. Der Server-Computer 104 umfasst einen Dienstkoordinator 106. Der Server-Computer 104 kann interne und externe Hardwarekomponenten umfassen, wie sie in Bezug auf 4 dargestellt und näher beschrieben sind.
  • Der Dienstkoordinator 106 geht aktuelle Probleme bei der Umsetzung von Cloud-Verwaltungsplattformen für die Bereitstellung von Diensten an, die für die Verbindung mit einer Mehrzahl von externen Abhängigkeiten wie zum Beispiel Systemen und API-Aufrufen erforderlich sind, um eine Dienstanfrage im Falle eines Bereitstellungsfehlers zu erfüllen. Der Dienstkoordinator 106 stellt eine automatische Analyse von Dienstfehlern und eine auf Tatsachen beruhende Ermittlung auf der Grundlage einer genauen Datenerfassung bereit, was vorteilhaft ist, da es eine schnelle Korrekturmaßnahme zum Beheben des Bereitstellungsfehlers ermöglicht. Der Dienstkoordinator 106 stellt auch eine automatische Behebung eines Fehlers bei der Bereitstellung eines Dienstes bereit, ohne dass der Dienst unterbrochen werden muss oder der Administrator eingreifen muss, was vorteilhaft ist, um sowohl eine Verfügbarkeit des Dienstes als auch eine verzögerte Dateneinheitlichkeit und -vollständigkeit mittels Datenabgleich und -aktualisierung nach der Bereitstellung zu erreichen. Nach dem Erkennen eines Arbeitsablaufs zur Ausführung der Bereitstellung eines Dienstes erfasst der Dienstkoordinator 106 dem Arbeitsablauf zugehörige API-Aufrufdaten und übermittelt die erfassten Daten an ein Blockchain-Register. Der Dienstkoordinator 106 erkennt einen Bereitstellungsfehler. Der Dienstkoordinator 106 führt auf der Grundlage der erfassten Daten eine Analyse der zugrunde liegenden Ursache durch und ermittelt das problematische System. Der Dienstkoordinator 106 übermittelt die Ergebnisse der Analyse der zugrunde liegenden Ursache an das Blockchain-Registersystem 118. Der Dienstkoordinator 106 ruft einen intelligenten Vertrag ab, der dem problematischen System zugehörig ist. Wenn der Dienstkoordinator 106 eingehende API-Aufrufe für das problematische System empfängt, erstellt der Dienstkoordinator 106 eine oder mehrere Pseudoantworten auf die eingehenden API-Aufrufe, um zu verhindern, dass die Bereitstellung des Dienstes ins Stocken gerät. Der Dienstkoordinator 106 übermittelt die den eingehenden API-Aufrufen zugehörigen Daten an das Blockchain-Registersystem 118. Der Dienstkoordinator 106 verarbeitet die Datenaktualisierungen aus den eingehenden API-Aufrufen, um die Bereitstellung der Dienste zu Ende zu bringen. In der dargestellten Ausführungsform umfasst der Dienstkoordinator 106 ein Anfrageerfassungsmodul 108, ein Analysemodul 110 und ein Modul 112 zur automatischen Fehlerbehebung. In einer anderen Ausführungsform sind die Funktionen des Anfrageerfassungsmoduls 108, des Analysemoduls 110 und/oder des Moduls 112 zur automatischen Fehlerbehebung vollständig in den Dienstkoordinator 106 integriert. Der Dienstkoordinator 106 ist in Bezug auf 2 dargestellt und näher beschrieben.
  • In einer Ausführungsform überwacht das Anfrageerfassungsmodul 108 fortlaufend die Bereitstellungsanfragen und die Ausführung und erfasst Daten aus Systemaufrufen und Antworten an ein oder mehrere externe abhängige Systeme und von einem oder mehreren externen abhängigen Systemen wie zum Beispiel dem externen abhängigen System 1161-N. Das Anfrageerfassungsmodul 108 kann die erfassten Daten auch an das Blockchain-Registersystem 118 übermitteln.
  • In einer Ausführungsform extrahiert das Analysemodul 110 erfasste Daten aus fehlgeschlagenen Bereitstellungsanfragen aus dem Blockchain-Registersystem 118 und führt eine Analyse der zugrunde liegenden Ursache für die extrahierten Daten durch. Das Analysemodul 110 kann auch einen Analysebericht erstellen und den Bericht an das Blockchain-Registersystem 118 übermitteln.
  • In einer Ausführungsform antwortet das Modul 112 zur automatischen Fehlerbehebung auf API-Aufrufe, die an das problematische System gerichtet sind, mit einer Pseudoantwort auf der Grundlage eines intelligenten Vertrags und leitet die Einzelheiten der API-Aufrufe an das Blockchain-Registersystem 118 weiter. Das Modul 112 zur automatischen Fehlerbehebung kann Stapelaktualisierungen auch offline durchführen.
  • Bei der Cloud-Verwaltungsplattform 114 handelt es sich um eine Reihe von Software-Werkzeugen, die zum Verwalten von Cloud-Computing-Ressourcen in einer öffentlichen, privaten oder hybriden Cloud-Umgebung entwickelt wurden. Eine Cloud-Verwaltungsplattform stellt einem Cloud-Service-Kunden ein Mittel zur Verfügung, mit dem er die Bereitstellung und den Betrieb von Anwendungen und zugehörigen Datensätzen über mehrere Cloud-Service-Infrastrukturen hinweg verwalten kann, und zwar sowohl über eine lokale Cloud-Infrastruktur als auch über eine Infrastruktur eines öffentlichen Cloud-Service-Anbieters. Eine Cloud-Verwaltungsplattform stellt Verwaltungsfunktionen für hybride Cloud- und Multi-Cloud-Umgebungen bereit. Eine Cloud-Verwaltungsplattform ermöglicht es Benutzern, Cloud-Ressourcen über eine Orchestrierungssuite zu verwalten, die Cloud-Verwaltungsaufgaben automatisiert. Eine Cloud-Verwaltungsplattform kann Orchestrierungsaufgaben automatisieren, d.h., die Cloud-Verwaltungsplattform kann automatisch Verwaltungsaufgaben übernehmen, um dabei zu helfen, die Ressourcennutzung zu optimieren. In der dargestellten Ausführungsform befindet sich die Cloud-Verwaltungsplattform 114 auf einem Server-Computer (nicht gezeigt) innerhalb der verteilten Datenverarbeitungsumgebung 100. In einer anderen Ausführungsform kann sich die Cloud-Verwaltungsplattform 114 auf dem Server-Computer 104 befinden. Die Cloud-Verwaltungsplattform 114 umfasst das externe abhängige System 1161-N.
  • Bei dem externen abhängigen System 1161-N, hierin das/die externe(n) abhängige(n) System(e) 116, kann es sich um eines oder mehrere von Systemen handeln, die von der Cloud-Verwaltungsplattform 114 verwendet werden, um auf eine Anfrage zur Bereitstellung eines Dienstes zu reagieren. Wie hierin verwendet, steht N für eine positive ganze Zahl, und dementsprechend ist eine Anzahl von Szenarien, die in einer bestimmten Ausführungsform der vorliegenden Erfindung umgesetzt werden, nicht auf die in 1 dargestellten beschränkt. Zu Beispielen für das/die externe(n) abhängige(n) System(e) 116 gehören ein IT-Änderungsmanagementsystem, ein Ticketingsystem, ein IP-Adressverwaltungssystem, ein Sicherungs- und Wiederherstellungssystem usw., ohne darauf beschränkt zu sein. In der dargestellten Ausführungsform befindet/befinden sich das/die externe(n) abhängige(n) System(e) 116 innerhalb der Cloud-Verwaltungsplattform 114. In einer anderen Ausführungsform können sich ein oder mehrere des/der externe(n) abhängige(n) System(e) 116 an einer anderen Stelle innerhalb der verteilten Datenverarbeitungsumgebung 100 befinden, sofern die Cloud-Verwaltungsplattform 114 auf jedes der externen abhängigen Systeme 116 zugreifen kann.
  • Bei dem Blockchain-Registersystem 118 handelt es sich um eines oder mehrere aus einer Mehrzahl von in der Technik bekannten Systemen, die dazu verwendet werden können, Einträge von digitalen Werten, z.B. Transaktionen, Identitäten, Vermögenswerten, Dokumenten und Eigenschaften, in einem unveränderlichen Register zu speichern oder dem Register eine selbstverstärkende Geschäftslogik hinzuzufügen, wie zum Beispiel intelligente Verträge. Der Begriff „intelligenter Vertrag“ bezieht sich auf eine digitale Entität, die eine komplexe Transaktionslogik definiert und organisationsübergreifende Arbeitsabläufe ermöglicht, darunter Speicherung von Daten, Datenzugriffsberechtigungen, geordnete Arbeitsabläufe und Berechnungen, ohne darauf beschränkt zu sein. Im Kontext der Blockchain handelt es sich bei intelligenten Verträgen um Skripte, die in der Blockchain gespeichert sind. Da sie sich auf der Kette (chain) befinden, verfügen intelligente Verträge über eine eindeutige Adresse. Ein intelligenter Vertrag wird durch Nachrichten oder Transaktionen ausgelöst, die an seine Adresse gesendet werden. In einer Ausführungsform ist das Blockchain-Register 118 frei von Genehmigungen, d.h. es handelt sich um ein öffentliches Blockchain-System, an dem sich jeder beteiligen kann. In einer anderen Ausführungsform weist das Blockchain-Register 118 Genehmigungen auf, d.h. es handelt sich um ein privates Blockchain-System, das lediglich einer geschlossenen Gruppe von Teilnehmern zur Verfügung steht. In der dargestellten Ausführungsform befindet sich das Blockchain-Register 118 außerhalb des Server-Computers 104. In einer anderen Ausführungsform kann sich das Blockchain-Register 118 auf dem Server-Computer 104 oder an einer anderen Stelle innerhalb der verteilten Datenverarbeitungsumgebung 100 befinden, sofern der Dienstkoordinator 106 Zugriff auf das Blockchain-Register 118 hat. Das Blockchain-Registersystem 118 umfasst eine Datenbank 120.
  • Bei der Datenbank 120 handelt es sich um ein Repository für von dem Dienstkoordinator 106 verwendete Daten. Die Datenbank 120 kann eine oder mehrere Datenbanken darstellen. In der dargestellten Ausführungsform befindet sich die Datenbank 120 auf dem Blockchain-Registersystem 118. In einer anderen Ausführungsform kann sich die Datenbank 120 an einer anderen Stelle innerhalb der verteilten Datenverarbeitungsumgebung 100 befinden, sofern der Dienstkoordinator 106 Zugriff auf die Datenbank 120 hat. Bei einer Datenbank handelt es sich um eine organisierte Sammlung von Daten. Die Datenbank 120 kann mit jeder beliebigen Art von Speichereinheit umgesetzt sein, die in der Lage ist, Daten und Konfigurationsdateien zu speichern, auf die der Dienstkoordinator 106 zugreifen und die er nutzen kann, wie zum Beispiel ein Datenbankserver, ein Festplattenlaufwerk oder ein Flash-Speicher. In der Datenbank 120 sind Daten gespeichert, die der Verwaltung von Fehlern bei der Bereitstellung eines Dienstes zugehörig sind und von dem Dienstkoordinator 106 gesammelt und verwendet werden. In der Datenbank 120 können auch ein oder mehrere intelligente Verträge gespeichert sein, die dem/den externen abhängigen System(en) 116 zugehörig sind. In der Datenbank 120 können auch Verlaufsdaten der Bereitstellung gespeichert sein. Zum Beispiel können die Verlaufsdaten der Bereitstellung auch Antwortdaten umfassen, die früheren Serviceanfragen zugehörig sind, die erfolgreich, durchgängig und ohne Fehler zu Ende gebracht wurden. Frühere Verlaufsdaten einer erfolgreichen Bereitstellung können für den Vergleich mit künftigen Dienstanfragen nützlich sein.
  • 2 ist ein Ablaufplan, der Arbeitsschritte des Dienstkoordinators 106 auf einem Server-Computer 104 innerhalb der verteilten Datenverarbeitungsumgebung 100 aus 1 für eine Blockchain-Verwaltung von Fehlern bei der Bereitstellung eines Dienstes gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
  • Der Dienstkoordinator 106 erkennt ein Ausführen eines Arbeitsablaufs der Bereitstellung eines Dienstes (Schritt 202). In einer Ausführungsform übermittelt ein Benutzer, wenn er einen Dienst benötigt, eine Anfrage an die Cloud-Verwaltungsplattform 114, die wiederum API-Aufrufe zu und von dem/den externen abhängigen System(en) 116 auslöst. In einer Ausführungsform empfängt der Dienstkoordinator 106 von der Cloud-Verwaltungsplattform 114 über das Netzwerk 102 eine Benachrichtigung, dass die Cloud-Verwaltungsplattform 114 ein Ausführen eines Arbeitsablaufs des Arbeitsablaufs zur Bereitstellung eines Dienstes einleitet. In einer anderen Ausführungsform kann der Dienstkoordinator 106 die Anfrage direkt von dem Benutzer empfangen und die Anfrage über das Netzwerk 102 an die Cloud-Verwaltungsplattform 114 weiterleiten. In einer Ausführungsform erkennt das Anfrageerfassungsmodul 108 die Anfrage zur Bereitstellung eines Dienstes und des Arbeitsablaufs zur Ausführung. In einer Ausführungsform beginnt der Dienstkoordinator 106 nach dem Erkennen eines Arbeitsablaufs zur Ausführung der Bereitstellung eines Dienstes damit, Systemaufrufe und Systemantworten von dem/den externen abhängigen System(en) 116 fortlaufend zu überwachen und zu erfassen. In einer anderen Ausführungsform beginnt der Dienstkoordinator 106 damit, Systemaufrufe und Systemantworten von dem/den externen abhängigen System(en) 116 über das Anfrageerfassungsmodul 108 fortlaufend zu überwachen und zu erfassen.
  • Der Dienstkoordinator 106 erfasst API-Aufrufdaten (Schritt 204). In einer Ausführungsform beginnt der Dienstkoordinator 106 als Reaktion auf ein Erkennen des Arbeitsablaufs zur Ausführung der Bereitstellung eines Dienstes mit dem fortlaufenden Überwachen und Erfassen von API-Aufrufdaten zu und von dem/den externen abhängigen System(en) 116. API-Aufrufdaten können Daten bezüglich des Datenaustauschs zwischen Systemen, einen dem Systemfehler zugehörigen Zeitstempel, eine oder mehrere Antworten von dem/den externen abhängigen System(en) 116, Parameter für Dienstaufrufe usw. umfassen, sind aber nicht darauf beschränkt. In einer Ausführungsform beginnt das Anfrageerfassungsmodul 108 nach einem Erkennen des Arbeitsablaufs zur Ausführung der Bereitstellung eines Dienstes damit, API-Aufrufdaten von dem/den externen abhängigen System(en) 116 fortlaufend zu überwachen und zu erfassen. In einer Ausführungsform erfasst der Dienstkoordinator 106 API-Aufrufdaten über das Anfrageerfassungsmodul 108. In einer Ausführungsform erfasst der Dienstkoordinator 106 zusätzlich zu den Daten des API-Aufrufs auch Daten, die der Anfrage zur Bereitstellung des Dienstes zugehörig sind. Zum Beispiel kann der Dienstkoordinator 106 eine Anfrage-ID, Anfrageparameter und/oder den Mandanten oder Benutzer, von dem die Anfrage empfangen wird, erfassen.
  • Der Dienstkoordinator 106 übermittelt die erfassten API-Aufrufdaten an das Blockchain-Registersystem 118 (Schritt 206). In einer Ausführungsform übermittelt der Dienstkoordinator 106, wenn der Dienstkoordinator 106 API-Aufrufdaten erfasst, die erfassten API-Aufrufdaten an das Blockchain-Registersystem 118. In einer Ausführungsform übermittelt der Dienstkoordinator 106 die erfassten API-Aufrufdaten in chronologischer Reihenfolge an das Blockchain-Registersystem 118. In einer Ausführungsform speichert der Dienstkoordinator 106 die erfassten API-Aufrufdaten in der Datenbank 120. In einer Ausführungsform kombiniert der Dienstkoordinator 106 die neu erfassten Daten mit in der Datenbank 120 gespeicherten Verlaufsdaten der Bereitstellung. In einer Ausführungsform übermittelt der Dienstkoordinator 106 über das Anfrageerfassungsmodul 108 API-Aufrufdaten an das Blockchain-Registersystem 118.
  • Der Dienstkoordinator 106 erkennt einen Bereitstellungsfehler (Schritt 208). In einer Ausführungsform empfängt der Dienstkoordinator 106 eine Benachrichtigung von der Cloud-Verwaltungsplattform 114, die anzeigt, dass eines oder mehrere des/der externen abhängigen Systems/Systeme 116 bei der Ausführung der Bereitstellung einen Fehler aufweisen. In einer anderen Ausführungsform erkennt der Dienstkoordinator 106 einen Fehler bei der Ausführung der Bereitstellung direkt anhand des/der externen abhängigen Systems/Systemen 116. In einer Ausführungsform überwacht der Dienstkoordinator 106 fortlaufend Systemaufrufe und Systemantworten von dem/den externen abhängigen System(en) 116 und kann auf der Grundlage des Inhalts der Antworten feststellen, dass mindestens eines der externen abhängigen Systeme 116 einen Fehler aufweist. In einer Ausführungsform erkennt der Dienstkoordinator 106 einen Bereitstellungsfehler über das Anfrageerfassungsmodul 108.
  • Der Dienstkoordinator 106 führt eine Analyse der zugrunde liegenden Ursache durch und ermittelt ein problematisches System (Schritt 210). In einer Ausführungsform extrahiert der Dienstkoordinator 106 die erfassten API-Aufrufdaten aus dem Blockchain Registersystem 118 und analysiert die erfassten API-Aufrufdaten, um eine zugrunde liegende Ursache für den Bereitstellungsfehler zu ermitteln. In einer Ausführungsform extrahiert der Dienstkoordinator 106 die erfassten Daten sowie Verlaufsdaten der Bereitstellung und vergleicht die beiden Zustände, d.h. Erfolg und Misserfolg, was einen Rückschluss auf die zugrunde liegende Ursache ermöglicht. In einer Ausführungsform führt der Dienstkoordinator 106 die Analyse der zugrunde liegenden Ursache über das Analysemodul 110 durch. Wenn der Dienstkoordinator 106 die Analyse zu Ende gebracht hat, ermittelt der Dienstkoordinator 106 ein oder mehrere problematische Systeme des/der externen abhängigen Systems/Systeme 116. In einer Ausführungsform ermittelt der Dienstkoordinator 106 über das Analysemodul 110 das eine oder die mehreren problematischen Systeme des/der externen abhängigen Systems/Systeme 116. In einer Ausführungsform ermittelt der Dienstkoordinator 106 eine oder mehrere Korrekturmaßnahmen, die erforderlich sind, um den Bereitstellungsfehler des problematischen Systems zu beheben.
  • Der Dienstkoordinator 106 übermittelt die Analyseergebnisse an das Blockchain-Registersystem 118 (Schritt 212). In einer Ausführungsform erstellt der Dienstkoordinator 106 einen Fehleranalysebericht, der die Analyse der zugrunde liegenden Ursache enthält, und übermittelt den Bericht an das Blockchain-Registersystem 118. Das Erstellen eines Berichts, der eine Analyse der zugrunde liegenden Ursache enthält, ist vorteilhaft, da ein Benutzer nicht in den Prozess eingreifen muss, um eine zugrunde liegende Ursache des Fehlers zu bestimmen. Das Übermitteln eines Berichts, der eine Analyse der zugrunde liegenden Ursache enthält, an das Blockchain-Register ist vorteilhaft, da ein Bericht in dem Blockchain-Register nicht geändert werden kann. In einer Ausführungsform umfasst der Bericht eine oder mehrere Korrekturmaßnahmen. In einer Ausführungsform benachrichtigt der Dienstkoordinator 106 die Besitzer des einen oder der mehreren problematischen Systeme. In der Ausführungsform umfasst die Benachrichtigung den erstellten Bericht. Zum Beispiel kann der Dienstkoordinator 106 den Besitzer eines problematischen Systems benachrichtigen, indem er eine eMail oder eine Textnachricht versendet, die den erstellten Bericht enthält. In einem anderen Beispiel kann der Dienstkoordinator 106 den Besitzer eines problematischen Systems benachrichtigen, indem er eine eMail oder Textnachricht mit einer Verknüpfung versendet, um den Bericht in dem Blockchain-Registersystem 118 einzusehen. In einer Ausführungsform übermittelt der Dienstkoordinator 106 die Analyseergebnisse über das Analysemodul 110 und erstellt einen Bericht über das Analysemodul 110.
  • Der Dienstkoordinator 106 ruft einen intelligenten Vertrag ab (Schritt 214). In einer Ausführungsform ruft der Dienstkoordinator 106 einen intelligenten Vertrag, der dem problematischen System zugehörig ist, aus der Datenbank 120 ab. In einer Ausführungsform definiert der abgerufene intelligente Vertrag eine Vereinbarung zwischen dem Besitzer des problematischen Systems und der Cloud-Verwaltungsplattform 114. Zum Beispiel kann der Systembesitzer vereinbart haben, dem Dienstkoordinator 106 die Verantwortung für das Beantworten von eingehenden Anfragen wie zum Beispiel API-Aufrufen zuzuweisen, ohne die Anfrage tatsächlich zu bearbeiten, wenn bei dem System während des Prozesses der Bereitstellung eines Dienstes ein Fehler wie zum Beispiel ein Leistungsproblem auftritt. In einer Ausführungsform löst der Dienstkoordinator 106, wenn der Dienstkoordinator 106 den intelligenten Vertrag abruft, das Modul 112 zur automatischen Fehlerbehebung aus, um die Anforderungen des intelligenten Vertrags umzusetzen.
  • Der Dienstkoordinator 106 empfängt einen eingehenden API-Aufruf für das problematische System (Schritt 216). In einer Ausführungsform empfängt der Dienstkoordinator 106 einen oder mehrere eingehende API-Aufrufe für das zuvor ermittelte problematische System, während die Cloud-Verwaltungsplattform 114 damit fortfährt, den Arbeitsablauf für die Anfrage zur Bereitstellung weiter auszuführen. In einer Ausführungsform empfängt der Dienstkoordinator 106 über das Modul 112 zur automatischen Fehlerbehebung einen eingehenden API-Aufruf für das problematische System.
  • Der Dienstkoordinator 106 verarbeitet Datenaktualisierungen (Schritt 218). In einer Ausführungsform startet der Dienstkoordinator 106 auf der Grundlage der eingehenden API-Aufrufdaten die Datenaktualisierungen von denjenigen Aufrufen, die von dem problematischen System nicht verarbeitet werden können. In einer Ausführungsform empfängt der Dienstkoordinator 106 über das Modul 112 zur automatischen Fehlerbehebung die Einzelheiten zu unbearbeiteten Aufrufen und parst die Daten je nach Bedarf in verschiedene Aktionen auf der Grundlage des intelligenten Vertrags. Zum Beispiel kann der Dienstkoordinator 106 über das Modul 112 zur automatischen Fehlerbehebung eine Tabelle einer dem problematischen System zugehörigen Backend-Datenbank aktualisieren. In einem anderen Beispiel kann der Dienstkoordinator 106 über das Modul 112 zur automatischen Fehlerbehebung einen Eintrag in ein bestehendes System einfügen. In einer Ausführungsform führt das Modul 112 zur automatischen Fehlerbehebung Offline-Stapelaktualisierungen durch, um eine endgültige Einheitlichkeit für jede Bereitstellungsanfrage zu erreichen. In einer Ausführungsform umfasst das Verarbeiten von Datenaktualisierungen ein Erzeugen und/oder Ermitteln von nicht synchronisierten Daten zur späteren Verarbeitung durch das problematische System. Durch das Verarbeiten der Datenaktualisierungen verhindert der Dienstkoordinator 106 eine Unterbrechung des Dienstes und eine Notwendigkeit zum Eingreifen, die das problematische System möglicherweise verursacht hätte.
  • Der Dienstkoordinator 106 erstellt eine Pseudoantwort auf den eingehenden API-Aufruf (Schritt 220). In einer Ausführungsform erstellt der Dienstkoordinator 106 eine Pseudoantwort auf den eingehenden API-Aufruf auf der Grundlage des abgerufenen intelligenten Vertrags. Das Abrufen eines intelligenten Vertrags und das Erstellen einer Pseudoantwort auf der Grundlage des abgerufenen intelligenten Vertrags ist vorteilhaft, da Antworten des problematischen Systems scheinbar im Zuge der Behebung des Problems erfolgen, wodurch ermöglicht wird, dass die Bereitstellung ohne Verzögerung zu Ende gebracht wird. In einer anderen Ausführungsform erzeugt der Dienstkoordinator 106 eine Pseudoantwort auf den eingehenden API-Aufruf auf der Grundlage des Inhalts der Analyse der zugrunde liegenden Ursache. In einer weiteren Ausführungsform erstellt der Dienstkoordinator 106 eine Pseudoantwort auf den eingehenden API-Aufruf sowohl auf der Grundlage des abgerufenen intelligenten Vertrags als auch auf der Grundlage der Analyse der zugrunde liegenden Ursache. Zum Beispiel kann die Pseudoantwort „Pseudo OK“ lauten. In einem anderen Beispiel kann die Pseudoantwort „zu verarbeitende Daten“ lauten. Darüber hinaus definiert HTTP vierzig Standard-Statuscodes, die verwendet werden können, um die Ergebnisse einer Benutzer-Anfrage zu übermitteln, wie der Fachmann weiß. Die Statuscodes sind in fünf Kategorien unterteilt, und „2xx Erfolgreich“ zeigt an, dass die Anfrage des Benutzers erfolgreich ausgeführt wurde. Zum Beispiel kann die Pseudoantwort „200 (OK)“ lauten, was anzeigt, dass ein REST-API-Aufruf die angeforderte Aktion erfolgreich ausgeführt hat. In einem anderen Beispiel kann die Pseudoantwort „201 (Erstellt)“ lauten, was anzeigt, dass eine Ressource erstellt wurde, wie zum Beispiel als Folge einer Aktion einer Steuereinheit. In einer Ausführungsform fungiert der Dienstkoordinator 106 über das Modul 112 zur automatischen Fehlerbehebung als Schein-System oder als Simulator des problematischen Systems, und bei jedem neuen Systemaufruf reagiert der Dienstkoordinator 106 so, als ob der Systemaufruf von dem problematischen System zu Ende gebracht würde. Die Pseudoantwort ermöglicht es, die Bereitstellung des Dienstes zu Ende zu bringen, da das problematische System den Arbeitsablauf der Bereitstellung nicht aufhält.
  • Der Dienstkoordinator 106 übermittelt Daten aus dem eingehenden API-Aufruf an das Blockchain-Registersystem 118 (Schritt 222). In einer Ausführungsform sammelt der Dienstkoordinator 106 die Daten, die einem oder mehreren eingehenden API-Aufrufen zugehörig sind, d.h. Einzelheiten zu unbearbeiteten Aufrufen, und übermittelt die Daten an das Blockchain-Registersystem 118. Die Daten können Einzelheiten zu den API-Aufrufen umfassen, wie zum Beispiel den API-Namen und zugehörige Parameter, eine System-ID, einen Zeitstempel, einen Fehlercode, eine Fehlermeldung, ein Fehlerprotokoll und andere Anfrage/Antwort-Beispiele für REST-API-Aufrufe, wie der Fachmann weiß. In einer Ausführungsform überträgt der Dienstkoordinator 106 die Daten über das Modul 112 zur automatischen Fehlerbehebung an das Blockchain-Registersystem 118. In einer Ausführungsform fügt der Dienstkoordinator 106 die Daten in die Datenbank 120 ein. In einer Ausführungsform übermittelt der Dienstkoordinator 106 zusätzlich zu den eingehenden API-Aufrufdaten die erstellten Pseudoantworten zusammen mit den zugehörigen API-Aufrufdaten an das Blockchain-Registersystem 118. In einer Ausführungsform übermittelt der Dienstkoordinator 106 zusätzlich zu den eingehenden API-Aufrufdaten alle Daten, die einer verarbeiteten Aktualisierung zugehörig sind, zusammen mit den zugehörigen API-Aufrufdaten an das Blockchain-Registersystem 118.
  • Der Dienstkoordinator 106 ermittelt, ob das problematische System wiederhergestellt ist (Entscheidungsblock 224). Auf der Grundlage des Überwachens des Status des problematischen Systems ermittelt der Dienstkoordinator 106, ob das problematische System nach dem erkannten Fehler wiederhergestellt ist. In einer Ausführungsform empfängt der Dienstkoordinator 106 eine Benachrichtigung von dem Besitzer des problematischen Systems, die anzeigt, dass das Problem behoben und geprüft wurde.
  • Wenn der Dienstkoordinator 106 feststellt, dass das problematische System nicht wiederhergestellt ist („Nein“-Zweig, Entscheidungsblock 224), kehrt der Dienstkoordinator 106 zu Schritt 216 zurück, um damit fortzufahren, eingehende API-Aufrufe für das problematische System zu empfangen.
  • Wenn der Dienstkoordinator 106 feststellt, dass das problematische System wiederhergestellt ist („Ja“-Zweig, Entscheidungsblock 224), gibt der Dienstkoordinator 106 die Steuerung an das wiederhergestellte System zurück (Schritt 226). In einer Ausführungsform stellt der Dienstkoordinator 106 als Reaktion auf die Wiederherstellung des problematischen Systems das Übermitteln von API-Aufrufdaten an das Blockchain-Registersystem 118 ein und unterbindet, dass der Simulator auf die API-Aufrufe antwortet. In einer Ausführungsform hält der Dienstkoordinator 106 das Anfrageerfassungsmodul 108 davon ab, die API-Aufrufe an das Blockchain-Registersystem 118 zu übermitteln. In einer Ausführungsform unterbindet der Dienstkoordinator 106, dass das Modul 112 zur automatischen Fehlerbehebung als Simulator fungiert. In einer Ausführungsform fährt der Dienstkoordinator 106 damit fort, API-Aufrufe an das Blockchain-Registersystem 118 zu übermitteln, um weitere erfolgreiche Daten zu erfassen, die in der Datenbank 120 gespeicherten Verlaufsdaten der Bereitstellung hinzugefügt werden.
  • 3 veranschaulicht ein Beispiel 300 für Arbeitsschritte des Dienstkoordinators 106 auf dem Server-Computer 104 innerhalb der verteilten Datenverarbeitungsumgebung 100 aus 1, gemäß einer Ausführungsform der vorliegenden Erfindung. Das Beispiel 300 stellt sowohl die hierarchischen Schichten des Systemaufrufs als auch eine zeitliche Abfolge dar. Das Beispiel 300 umfasst eine Web-Benutzerschnittstelle 302, einen Browser 304, einen API-Aufruf 3061-N, hierin API-Aufruf(e) 306, eine Cloud-Verwaltungsplattform 314 (welche die Cloud-Verwaltungsplattform 114 aus 1 darstellt) und ein externes abhängiges System 3161-N, hierin externe(s) abhängige(s) System(e) 316 (welche das/die externe(n) abhängige(n) System(e) 116 aus 1 darstellen). Wie in Bezug auf Schritt 202 aus 2 erörtert, übermittelt ein Benutzer, wenn er eine Bereitstellung eines Dienstes benötigt, eine Anfrage von der Web-Benutzerschnittstelle 302, die auch als Benutzerportal bezeichnet wird, über den Browser 304 an die Cloud-Verwaltungsplattform 314, die wiederum einen oder mehrere API-Aufrufe 306 zu und von dem/den externen abhängigen System(en) 316 auslöst.
  • Um eine Problem- oder Fehleranalyse während der Bereitstellung eines Dienstes zu ermöglichen, übermittelt der Dienstkoordinator 106 Daten, die der Anfrage zur Bereitstellung eines Dienstes von der Cloud-Verwaltungsplattform 314 zugehörig sind, an den Blockchain-Knoten 324, wie er in dem Blockchain-Registersystem 118 aus 1 zu finden ist. Datentypen 334 sind Beispiele für an den Blockchain-Knoten 324 übermittelte Daten und umfassen einen Zeitstempel, eine Anfrage-ID, einen Mandanten und/oder Benutzer sowie Anfrageparameter. Zusätzlich übermittelt der Dienstkoordinator 106 im Verlauf des Ausführens des Arbeitsablaufs der Bereitstellung des Dienste auch Daten, die dem/den externen abhängigen System(en) 316 zugehörig sind, an den Blockchain-Knoten 3261-N, hierin Blockchain-Knoten 326 in dem Blockchain-Registersystem 118 aus 1. Datentypen 3361-N sind Beispiele für Daten, die an den/die Blockchain-Knoten 326 übermittelt werden, und umfassen einen Zeitstempel und Dienstaufrufparameter. Ein Ereignis 312 stellt dar, dass der Dienstkoordinator 106 einen Bereitstellungsfehler in dem externen abhängigen System 316N erkennt, wie in Bezug auf Schritt 204 aus 2 erörtert. Der Dienstkoordinator 106 erfasst die dem Bereitstellungsfehler zugehörigen Daten, die als neuer Blockchain-Knoten 328 gezeigt werden, und übermittelt sie an das Blockchain-Registersystem 118 aus 1, wie in Bezug auf die Schritte 206 und 208 aus 2 erörtert. Datentypen 336N+1 sind Beispiele für an den neuen Blockchain-Knoten 328 übermittelte Daten und umfassen einen Zeitstempel, eine System-ID, einen Fehlercode und eine Fehlermeldung. Der Dienstkoordinator 106 fügt fortlaufend neue Blockchain-Knoten zu dem Blockchain-Registersystem 118 hinzu, bis das problematische System, d.h. das externe abhängige System 316N, ermittelt wurde und der Dienstkoordinator 106 eine zugrunde liegende Ursache des Bereitstellungsfehlers ermittelt hat, wie in den Schritten 210 und 212 aus 2 erörtert.
  • 4 stellt ein Blockschaubild von Komponenten des Server-Computers 104 innerhalb der verteilten Datenverarbeitungsumgebung 100 aus 1 gemäß einer Ausführungsform der vorliegenden Erfindung dar. Man sollte sich bewusst sein, dass 4 lediglich eine Veranschaulichung einer Umsetzung bereitstellt und keinerlei Einschränkungen in Bezug auf die Umgebungen, in denen verschiedene Ausführungsformen umgesetzt werden können, mit sich bringt. Es können viele Abwandlungen an der abgebildeten Umgebung vorgenommen werden.
  • Der Server-Computer 104 kann einen oder mehrere Prozessoren 404, einen Cache 414, einen Hauptspeicher 406, einen dauerhaften Speicher 408, eine Datenübertragungseinheit 410, eine oder mehrere Eingabe/Ausgabe- (E/A-) Schnittstellen 412 und ein Datenübertragungsnetz 402 umfassen. Das Datenübertragungsnetz 402 stellt Datenübertragungen zwischen dem Cache 414, dem Hauptspeicher 406, dem dauerhaften Speicher 408, der Datenübertragungseinheit 410 und der einen oder den mehreren Eingabe/Ausgabe- (E/A-) Schnittstellen 412 bereit. Das Datenübertragungsnetz 402 kann mit jeder beliebigen Architektur umgesetzt werden, die zum Weiterleiten von Daten und/oder Steuerungsinformationen zwischen Prozessoren (wie zum Beispiel Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.), Systemspeicher, Peripherieeinheiten und beliebigen anderen Hardware-Komponenten innerhalb eines Systems ausgelegt ist. Zum Beispiel kann das Datenübertragungsnetz 402 mit einem oder mehreren Bussen umgesetzt werden.
  • Bei dem Hauptspeicher 406 und dem dauerhaften Speicher 408 handelt es sich um durch einen Computer lesbare Speichermedien. In dieser Ausführungsform umfasst der Hauptspeicher 406 einen Direktzugriffsspeicher (RAM). Im Allgemeinen kann der Hauptspeicher 406 jedes beliebige flüchtige oder nichtflüchtige, durch einen Computer lesbare Speichermedium umfassen. Der Cache 414 ist ein schneller Speicher, der die Leistungsfähigkeit des/der Prozessor(en) 404 erhöht, indem er Daten aus dem Hauptspeicher 406, auf die kürzlich zugegriffen wurde, und Daten in der Nähe von Daten, auf die kürzlich zugegriffen wurde, bereithält.
  • Programmanweisungen und Daten, die zum Umsetzen von Ausführungsformen der vorliegenden Erfindung in die Praxis verwendet werden, z.B. der Servicekoordinator 106, werden in einem dauerhaften Speicher 408 gespeichert, damit sie von einem oder mehreren der jeweiligen Prozessoren 404 des Server-Computers 104 über den Cache 414 ausgeführt und/oder abgerufen werden können. In dieser Ausführungsform beinhaltet der dauerhafte Speicher 408 ein magnetisches Festplattenlaufwerk. Alternativ oder zusätzlich zu einem magnetischen Festplattenlaufwerk kann der dauerhafte Speicher 408 einen Halbleiter-Datenträger, eine Halbleiter-Speichereinheit, einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM), einen Flash-Speicher oder jedes beliebige andere durch einen Computer lesbare Speichermedium umfassen, das in der Lage ist, Programmanweisungen oder digitale Informationen zu speichern.
  • Die von dem dauerhaften Speicher 408 verwendeten Medien können auch auswechselbar sein. Zum Beispiel kann ein Wechselplattenlaufwerk für den dauerhaften Speicher 408 verwendet werden. Zu anderen Beispielen gehören optische und magnetische Platten, Thumb-Drives und Smartcards, die in ein Laufwerk zum Übertragen auf ein anderes durch einen Computer lesbares Speichermedium, das auch ein Teil des dauerhaften Speichers 408 ist, eingeführt werden.
  • Die Datenübertragungseinheit 410 stellt in diesen Beispielen den Datenaustausch mit anderen Datenverarbeitungssystemen oder -einheiten bereit, darunter Ressourcen der Cloud-Verwaltungsplattform 114 und des Blockchain-Registersystems 118. In diesen Beispielen umfasst die Datenübertragungseinheit 410 eine oder mehrere Netzwerkschnittstellenkarten. Die Datenübertragungseinheit 410 kann Datenübertragungen durch die Verwendung von physischen und/oder drahtlosen Datenübertragungsverbindungen bereitstellen. Der Servicekoordinator 106 und andere Programme und Daten, die zur Umsetzung der vorliegenden Erfindung verwendet werden, können über die Datenübertragungseinheit 410 in den dauerhaften Speicher 408 des Server-Computers 104 heruntergeladen werden.
  • Die eine oder mehreren E/A-Schnittstellen 412 ermöglichen die Eingabe und Ausgabe von Daten von/zu anderen Einheiten, die mit dem Server-Computer 104 verbunden sein können. Zum Beispiel können die eine oder die mehreren E/A-Schnittstellen 412 eine Verbindung zu einer oder mehreren externen Einheiten 416 wie zum Beispiel einer Tastatur, einem Ziffernblock, einem Touchscreen, einem Mikrofon, einer Digitalkamera und/oder einer anderen geeigneten Eingabeeinheit bereitstellen. Die eine oder die mehreren externen Einheiten 416 können auch tragbare, durch einen Computer lesbare Speichermedien wie zum Beispiel Thumb-Drives, tragbare optische oder magnetische Platten und Speicherkarten umfassen. Software und Daten, die zum Umsetzen von Ausführungsformen der vorliegenden Erfindung in die Praxis verwendet werden, z.B. der Servicekoordinator 106 auf dem Server-Computer 104, können auf derartigen tragbaren, durch einen Computer lesbaren Speichermedien gespeichert und über die E/A-Schnittstelle(n) 412 auf den dauerhaften Speicher 408 geladen werden. Die eine oder mehreren E/A-Schnittstellen 412 sind auch mit einer Anzeige 418 verbunden.
  • Die Anzeige 418 stellt einen Mechanismus zum Anzeigen von Daten für einen Benutzer bereit, und es kann sich dabei zum Beispiel um einen Computerbildschirm handeln. Die Anzeige 418 kann auch als Touchscreen fungieren, wie zum Beispiel eine Anzeige eines Tablet-Computers.
  • Es sei von vornherein klargestellt, dass das Umsetzen der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist, obwohl diese Offenbarung eine ausführliche Beschreibung von Cloud-Computing umfasst. Vielmehr können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen Art von jetzt bekannter oder später erfundener Datenverarbeitungsumgebung umgesetzt werden.
  • Cloud-Computing ist ein Servicebereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Service schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften umfassen, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle.
  • Bei den Eigenschaften handelt es sich um die Folgenden:
  • On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
  • Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
  • Resource-Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
  • Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
  • Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Die Nutzung von Ressourcen kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
  • Bei den Dienstmodellen handelt es sich um die Folgenden:
  • Software as a Service (SaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende E-Mail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Anwendungskonfigurationseinstellungen.
  • Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen des Application Hosting Environment.
  • Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, das Verarbeiten, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die Folgenden:
  • Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
  • Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (z.B. Mission, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann in den eigenen Räumen oder fremden Räumen stehen.
  • Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und sie gehört einer Cloud-Dienste verkaufenden Organisation.
  • Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert mit Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Herzen von Cloud-Computing liegt eine Infrastruktur, die ein Netzwerk aus zusammengeschalteten Knoten umfasst.
  • Unter Bezugnahme auf 5 ist eine veranschaulichende Cloud-Computing-Umgebung 50 abgebildet. Wie gezeigt ist, umfasst die Cloud-Computing-Umgebung 50 einen oder mehrere Cloud-Computing-Knoten 10, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie ein elektronischer Assistent (PDA) oder ein Mobiltelefon 54A, ein Desktop-Computer 54B, ein Laptop-Computer 54C und/oder ein Automobil-Computer-System 54N Daten austauschen können. Die Knoten 10 können miteinander Daten austauschen. Sie können physisch oder virtuell in ein oder mehrere Netzwerke wie private, Benutzergemeinschafts-, öffentliche oder hybride Clouds gruppiert werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder in eine Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienst anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 5 gezeigten Datenverarbeitungseinheiten 54A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • Unter Bezugnahme auf 6 wird ein Satz von funktionalen Abstraktionsschichten gezeigt, die durch die Cloud-Computing-Umgebung 50 (5) bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 6 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Software-Schicht 60 umfasst Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe-Computer 61; auf der RISC- (Reduced Instruction Set Computer) Architektur beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke sowie Netzwerkkomponenten 66. In einigen Ausführungsformen umfassen Software-Komponenten eine Netzwerk-Anwendungsserver-Software 67 und eine Datenbank-Software 68.
  • Eine Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 71, virtueller Speicher 72, virtuelle Netzwerke 73, darunter virtuelle private Netzwerke, virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75.
  • In einem Beispiel kann die Verwaltungsschicht 80 die nachfolgend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 81 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Ein Messen und eine Preisfindung 82 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungs-Software-Lizenzen umfassen. Die Sicherheit stellt die Identitätsüberprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 83 stellt Nutzern und Systemadministratoren den Zugang zu der Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 84 stellt die Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zum Dienstumfang (SLA, Service Level Agreement) 85 stellt die Anordnung vorab und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einem SLA bereit.
  • Eine Arbeitslastschicht 90 stellt Beispiele für die Funktionalität bereit, für welche die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; Bereitstellung von Ausbildung in virtuellen Klassenzimmern 93; Datenanalytikverarbeitung 94; Transaktionsverarbeitung 95; und der Servicekoordinator 106.
  • Die hierin beschriebenen Programme werden beruhend auf der Anwendung bestimmt, für die sie in einer spezifischen Ausführungsform der Erfindung umgesetzt werden. Man sollte sich jedoch bewusst sein, dass jede bestimmte Programm-Nomenklatur hierin lediglich der Einfachheit halber verwendet wird, und folglich darf die Erfindung nicht auf die ausschließliche Verwendung in einer beliebigen spezifischen Anwendung, die durch eine derartige Nomenklatur ermittelt und/oder impliziert wird, beschränkt werden.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) mit durch einen Computer lesbaren Programmanweisungen darauf umfassen, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine beliebige physische Einheit handeln, die Anweisungen zur Verwendung durch ein System zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine auswechselbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein auswechselbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server umfassen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetzwerk (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt umfasst, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der festgelegten logischen Funktion(en) umfassen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist darüber hinaus anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zum Zwecke der Veranschaulichung aufgeführt, sollen jedoch nicht gesamthaft stehen für bzw. begrenzt sein auf die offenbarten Ausführungsformen. Für den Fachmann werden viele Abänderungen und Abwandlungen ersichtlich sein, ohne von dem Umfang und dem Sinngehalt der Erfindung abzuweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsform, die praktische Anwendung oder technische Verbesserung gegenüber auf dem Markt vorgefundenen Technologien bestmöglich zu erläutern oder um es anderen Fachleuten zu ermöglichen, die hierin dargelegten Ausführungsformen zu verstehen.

Claims (20)

  1. Verfahren, aufweisend: Erfassen eines oder mehrerer Aufrufe einer Schnittstelle zur Anwendungsprogrammierung (API), die einer Bereitstellung eines Dienstes zugehörig sind, durch einen oder mehrere Computerprozessoren; Übermitteln des einen oder der mehreren erfassten API-Aufrufe an ein Blockchain-Register durch einen oder mehrere Computerprozessoren; Erkennen eines Systemfehlers während der Bereitstellung des Dienstes durch einen oder mehrere Computerprozessoren; Extrahieren des einen oder der mehreren übermittelten API-Aufrufe aus dem Blockchain-Register durch einen oder mehrere Computerprozessoren; und auf der Grundlage des einen oder der mehreren extrahierten API-Aufrufe, Ermitteln eines problematischen Systems, das dem Systemfehler zugehörig ist, durch einen oder mehrere Computerprozessoren.
  2. Verfahren nach Anspruch 1, wobei das Ermitteln des problematischen Systems darüber hinaus Folgendes aufweist: Durchführen einer Analyse der zugrunde liegenden Ursache des Systemfehlers durch einen oder mehrere Computerprozessoren während; Erstellen eines Berichts durch einen oder mehrere Computerprozessoren, wobei der Bericht die Analyse der zugrunde liegenden Ursache, das problematische System und mindestens eine Korrekturmaßnahme enthält; und Übermitteln des Berichts an das Blockchain-Register durch einen oder mehrere Computerprozessoren.
  3. Verfahren nach Anspruch 2, darüber hinaus aufweisend ein Benachrichtigen eines Besitzers des problematischen Systems durch einen oder mehrere Computerprozessoren.
  4. Verfahren nach Anspruch 1, darüber hinaus aufweisend: Abrufen eines intelligenten Vertrags, der dem problematischen System und der Bereitstellung des Dienstes zugehörig ist, durch einen oder mehrere Computerprozessoren; Empfangen eines oder mehrerer API-Aufrufe, die dem problematischen System zugehörig sind, durch einen oder mehrere Computerprozessoren; und Erstellen einer Pseudoantwort auf den einen oder die mehreren API-Aufrufe, die dem problematischen System zugehörig sind, auf der Grundlage des intelligenten Vertrags durch einen oder mehrere Computerprozessoren.
  5. Verfahren nach Anspruch 4, darüber hinaus aufweisend ein Übermitteln des einen oder der mehreren API-Aufrufe, die dem problematischen System zugehörig sind, an das Blockchain-Register durch einen oder mehrere Computerprozessoren.
  6. Verfahren nach Anspruch 4, darüber hinaus aufweisend: Verarbeiten einer oder mehrerer Einzelheiten zu unbearbeiteten Aufrufen, die dem einen oder den mehreren, dem problematischen System zugehörigen API-Aufrufen zugehörig sind, durch einen oder mehrere Computerprozessoren; und Parsen der einen oder der mehreren Einzelheiten zu unbearbeiteten Aufrufen durch einen oder mehrere Computerprozessoren in eine oder mehrere Aktionen auf der Grundlage des intelligenten Vertrags.
  7. Verfahren nach Anspruch 1, darüber hinaus aufweisend ein Erkennen eines Ausführens eines Arbeitsablaufs zur Bereitstellung von Cloud-Diensten durch einen oder mehrere Computerprozessoren, bevor der Systemfehler erkannt wird.
  8. Computerprogrammprodukt, aufweisend: ein oder mehrere durch einen Computer lesbare Speichermedien und auf dem einen oder den mehreren durch einen Computer lesbaren Speichermedien gemeinsam gespeicherte Programmanweisungen, die gespeicherten Programmanweisungen aufweisend: Programmanweisungen zum Erfassen eines oder mehrerer einer Bereitstellung eines Dienstes zugehöriger Aufrufe einer Schnittstelle zur Anwendungsprogrammierung (API); Programmanweisungen zum Übermitteln des einen oder der mehreren erfassten API-Aufrufe an ein Blockchain-Register; Programmanweisungen zum Erkennen eines Systemfehlers während der Bereitstellung eines Dienstes; Programmanweisungen zum Extrahieren des einen oder der mehreren übermittelten API-Aufrufe aus dem Blockchain-Register; und Programmanweisungen zum Ermitteln eines problematischen Systems, das dem Systemfehler zugehörig ist, auf der Grundlage des einen oder der mehreren extrahierten API-Aufrufe.
  9. Computerprogrammprodukt nach Anspruch 8, wobei die Programmanweisungen zum Ermitteln des problematischen Systems Folgendes aufweisen: Programmanweisungen zum Durchführen einer Analyse der zugrunde liegenden Ursache des Systemfehlers während; Programmanweisungen zum Erzeugen eines Berichts, wobei der Bericht die Analyse der zugrunde liegenden Ursache, das problematische System und mindestens eine Abhilfemaßnahme enthält; und Programmanweisungen zum Übermitteln des Berichts an das Blockchain-Register.
  10. Computerprogrammprodukt nach Anspruch 9, wobei die gespeicherten Programmanweisungen darüber hinaus Programmanweisungen zum Benachrichtigen eines Besitzers des problematischen Systems aufweisen.
  11. Computerprogrammprodukt nach Anspruch 8, wobei die gespeicherten Programmanweisungen darüber hinaus Folgendes aufweisen: Programmanweisungen zum Abrufen eines intelligenten Vertrags, der dem problematischen System und der Bereitstellung des Dienstes zugehörig ist; Programmanweisungen zum Empfangen eines oder mehrerer API-Aufrufe, die dem problematischen System zugehörig sind; und Programmanweisungen zum Erstellen einer Pseudoantwort auf einen oder mehrere API-Aufrufe, die dem problematischen System zugehörig sind, auf der Grundlage des intelligenten Vertrags.
  12. Computerprogrammprodukt nach Anspruch 11, wobei die gespeicherten Programmanweisungen darüber hinaus Programmanweisungen zum Übermitteln des einen oder der mehreren API-Aufrufe, die dem problematischen System zugehörig sind, an das Blockchain-Register aufweisen.
  13. Computerprogrammprodukt nach Anspruch 11, wobei die gespeicherten Programmanweisungen darüber hinaus Folgendes aufweisen: Programmanweisungen zum Verarbeiten eines oder mehrerer Einzelheiten zu unbearbeiteten Aufrufen, die dem einen oder den mehreren, dem problematischen System zugehörigen API-Aufrufen zugehörig sind; und Programmanweisungen zum Parsen der einen oder der mehreren Einzelheiten zu unbearbeiteten Aufrufen in eine oder mehrere Aktionen auf der Grundlage des intelligenten Vertrags.
  14. Computerprogrammprodukt nach Anspruch 8, wobei die gespeicherten Programmanweisungen darüber hinaus Programmanweisungen zum Erkennen eines Ausführens eines Arbeitsablaufs zur Bereitstellung von Cloud-Diensten aufweisen, bevor der Systemfehler erkannt wird.
  15. Computersystem, aufweisend: einen oder mehrere Computerprozessoren; ein oder mehrere durch einen Computer lesbare Speichermedien; Programmanweisungen, die gemeinsam auf dem einen oder den mehreren durch einen Computer lesbaren Speichermedien gespeichert sind, zur Ausführung durch mindestens einen des einen oder der mehreren Computerprozessoren, wobei die gespeicherten Programmanweisungen Folgendes aufweisen: Programmanweisungen zum Erfassen eines oder mehrerer einer Bereitstellung eines Dienstes zugehöriger Aufrufe einer Schnittstelle zur Anwendungsprogrammierung (API); Programmanweisungen zum Übermitteln des einen oder der mehreren erfassten API-Aufrufe an ein Blockchain-Register; Programmanweisungen zum Erkennen eines Systemfehlers während der Bereitstellung eines Dienstes; Programmanweisungen zum Extrahieren des einen oder der mehreren übermittelten API-Aufrufe aus dem Blockchain-Register; und Programmanweisungen zum Ermitteln eines problematischen Systems, das dem Systemfehler zugehörig ist, auf der Grundlage des einen oder der mehreren extrahierten API-Aufrufe.
  16. Computersystem nach Anspruch 15, wobei die Programmanweisungen zum Ermitteln des problematischen Systems Folgendes aufweisen: Programmanweisungen zum Durchführen einer Analyse der zugrunde liegenden Ursache des Systemfehlers während; Programmanweisungen zum Erzeugen eines Berichts, wobei der Bericht die Analyse der zugrunde liegenden Ursache, das problematische System und mindestens eine Abhilfemaßnahme enthält; und Programmanweisungen zum Übermitteln des Berichts an das Blockchain-Register.
  17. Computersystem nach Anspruch 16, wobei die gespeicherten Programmanweisungen darüber hinaus Programmanweisungen zum Benachrichtigen eines Besitzers des problematischen Systems aufweisen.
  18. Computersystem nach Anspruch 15, wobei die gespeicherten Programmanweisungen darüber hinaus Folgendes aufweisen: Programmanweisungen zum Abrufen eines intelligenten Vertrags, der dem problematischen System und der Bereitstellung des Dienstes zugehörig ist; Programmanweisungen zum Empfangen eines oder mehrerer API-Aufrufe, die dem problematischen System zugehörig sind; und Programmanweisungen zum Erstellen einer Pseudoantwort auf den einen oder die mehreren API-Aufrufe, die dem problematischen System zugehörig sind, auf der Grundlage des intelligenten Vertrags.
  19. Computersystem nach Anspruch 18, wobei die gespeicherten Programmanweisungen darüber hinaus Programmanweisungen zum Übermitteln des einen oder der mehreren API-Aufrufe, die dem problematischen System zugehörig sind, an das Blockchain-Register aufweisen.
  20. Computersystem nach Anspruch 18, wobei die gespeicherten Programmanweisungen darüber hinaus Folgendes aufweisen: Programmanweisungen zum Verarbeiten eines oder mehrerer Einzelheiten zu unbearbeiteten Aufrufen, die dem einen oder den mehreren, dem problematischen System zugehörigen API-Aufrufen zugehörig sind; und Programmanweisungen zum Parsen der einen oder der mehreren Einzelheiten zu unbearbeiteten Aufrufen in eine oder mehrere Aktionen auf der Grundlage des intelligenten Vertrags.
DE112021003402.2T 2020-08-03 2021-06-25 Blockchain-verwaltung von bereitstellungsfehlern Pending DE112021003402T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/983,163 2020-08-03
US16/983,163 US11481268B2 (en) 2020-08-03 2020-08-03 Blockchain management of provisioning failures
PCT/CN2021/102382 WO2022028144A1 (en) 2020-08-03 2021-06-25 Blockchain management of provisioning failures

Publications (1)

Publication Number Publication Date
DE112021003402T5 true DE112021003402T5 (de) 2023-05-17

Family

ID=80002959

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021003402.2T Pending DE112021003402T5 (de) 2020-08-03 2021-06-25 Blockchain-verwaltung von bereitstellungsfehlern

Country Status (6)

Country Link
US (1) US11481268B2 (de)
JP (1) JP2023536296A (de)
CN (1) CN115812298A (de)
DE (1) DE112021003402T5 (de)
GB (1) GB2613724A (de)
WO (1) WO2022028144A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11726860B2 (en) * 2020-12-23 2023-08-15 EMC IP Holding Company LLC Intelligent automatic support
US11650847B2 (en) * 2021-03-15 2023-05-16 Sap Se Auto-recovery job scheduling framework
US11789703B2 (en) * 2021-06-21 2023-10-17 Hearsch Jariwala Blockchain-based source code modification detection and tracking system and method for artificial intelligence platforms

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9329951B2 (en) 2009-07-31 2016-05-03 Paypal, Inc. System and method to uniformly manage operational life cycles and service levels
US9083733B2 (en) * 2011-08-01 2015-07-14 Visicom Media Inc. Anti-phishing domain advisor and method thereof
US9667470B2 (en) 2012-09-07 2017-05-30 Oracle International Corporation Failure handling in the execution flow of provisioning operations in a cloud environment
US20180027006A1 (en) * 2015-02-24 2018-01-25 Cloudlock, Inc. System and method for securing an enterprise computing environment
WO2017090041A1 (en) 2015-11-24 2017-06-01 Ben-Ari Adi A system and method for blockchain smart contract data privacy
US10176325B1 (en) * 2016-06-21 2019-01-08 Symantec Corporation System and method for dynamic detection of command and control malware
CN107045607A (zh) * 2016-12-13 2017-08-15 全球能源互联网研究院 应用异常行为识别模型建立方法及装置、识别方法及装置
US10225273B2 (en) * 2017-01-27 2019-03-05 International Business Machines Corporation Secured event monitoring leveraging blockchain
US10515233B2 (en) * 2017-03-19 2019-12-24 International Business Machines Corporation Automatic generating analytics from blockchain data
US20180285217A1 (en) * 2017-03-31 2018-10-04 Intel Corporation Failover response using a known good state from a distributed ledger
US10984134B2 (en) * 2017-07-14 2021-04-20 Microsoft Technology Licensing, Llc Blockchain system for leveraging member nodes to achieve consensus
US10762079B2 (en) * 2017-09-29 2020-09-01 Oracle International Corporation System and method for managing a blockchain cloud service
US10528403B2 (en) 2017-10-30 2020-01-07 MuleSoft, Inc. Adaptive event aggregation
US10452843B2 (en) * 2018-01-11 2019-10-22 ArecaBay, Inc. Self-adaptive application programming interface level security monitoring
US20190251556A1 (en) 2018-02-12 2019-08-15 Bank Of America Corporation Distributed ledger on-boarding system for standby guarantee resources
CN108804239B (zh) 2018-04-10 2022-10-18 平安科技(深圳)有限公司 平台整合的方法、装置、计算机设备和存储介质
WO2019217555A1 (en) * 2018-05-08 2019-11-14 Xspero U.S. Systems and methods for e-certificate exchange and validation
US10985907B2 (en) * 2018-05-16 2021-04-20 International Business Machines Corporation Identifying faults in a blockchain ordering service
US11409795B2 (en) * 2018-09-06 2022-08-09 International Business Machines Corporation Atomically executed application program interfaces
CN110162559B (zh) 2019-04-13 2020-07-10 山东公链信息科技有限公司 一种基于通用json同步和异步数据api接口调用的区块链处理方法
US11150978B2 (en) * 2019-04-26 2021-10-19 Bank Of America Corporation Automated system for intelligent error correction within an electronic blockchain ledger
US11546425B2 (en) * 2020-04-23 2023-01-03 Oracle International Corporation Systems and methods of providing ledger as a service

Also Published As

Publication number Publication date
GB2613724A (en) 2023-06-14
US20220035693A1 (en) 2022-02-03
WO2022028144A1 (en) 2022-02-10
GB202303064D0 (en) 2023-04-19
US11481268B2 (en) 2022-10-25
CN115812298A (zh) 2023-03-17
JP2023536296A (ja) 2023-08-24

Similar Documents

Publication Publication Date Title
DE112019001481T5 (de) Selektives bereitstellen gegenseitiger transportschichtsicherheit mittels alternativer servernamen
DE112018004349T5 (de) Dynamische auswahl von bereitstellungskonfigurationen von softwareanwendungen
DE112021003402T5 (de) Blockchain-verwaltung von bereitstellungsfehlern
DE112018002984T5 (de) Konformitätsbewusste Laufzeiterzeugung auf Grundlage von Anwendungsmustern und Risikobeurteilung
DE112017007510T5 (de) Blockchain für offene wissenschaftliche forschung
DE112021002820T5 (de) Dynamische automatisierung einer auswahl von pipeline-artefakten
DE112020002987T5 (de) Bereitstellen von mikrodiensten über eine dienstinfrastruktur hinweg
DE112019000421B4 (de) Arbeitslastverwaltung mit datenzugriffserkennung in einem datenverarbeitungscluster
DE112018004008T5 (de) Auf dateisysteminhalten beruhende sicherheit
DE112021003401T5 (de) Schattenexperimente für serverlose multi-tenant-cloud-dienste
DE102016105062A1 (de) Nähengestützte Berechtigungsprüfung für einheitenübergreifend verteilte Daten
DE112021001163T5 (de) Dynamisches erstellen von facetten unter verwendung von graphpartitionierung
DE112021005636T5 (de) Migrieren von komplexen legacy-anwendungen
DE112020000535T5 (de) Fehlerbehebung innerhalb und außerhalb der eigenen Räumlichkeiten
DE112020004967T5 (de) Änderungsverwaltung und analytik für microservices
DE102021130396A1 (de) Datenzugriffsüberwachung und -steuerung
DE112017005772T5 (de) Zeitpunktgesteuerte sicherungen über einen speicher-controller in eine objektspeicher-cloud
DE112022002615T5 (de) Kontinuierliche funktionsfähigkeit und integrität von anwendungen während eines migrationsvorgangs
DE112019002052T5 (de) Datenschutzsensibilisierung bei der bereitstellung von arbeitslasten
DE112021004577T5 (de) Verwalten eines aufgabenablaufs in einer edge-datenverarbeitungsumgebung
DE112021005927T5 (de) Patchen von arbeitsabläufen
DE102021125019A1 (de) Orchestrierung von einheiten für das internet der dinge
DE112021004695T5 (de) Umgang mit zurückstellbaren netzwerkanforderungen
DE112021004663T5 (de) Verteiltes, ressourcen berücksichtigendes training von pipelines desmaschinellen lernens
DE102021122508A1 (de) Ausgleichen von grossrechner- und verteilten arbeitslasten auf der grundlage von leistung und kosten

Legal Events

Date Code Title Description
R012 Request for examination validly filed