So dezentralisieren und monetarisieren Sie Ihre Anwendung mit iExec

iExec hat einen Blockchain-basierten, dezentralen Marktplatz für Cloud-Computing-Ressourcen entwickelt. Der iExec Marketplace ermöglicht es Teilnehmern, die Rechenleistung benötigen, sich mit denen zu treffen, die Rechenleistung besitzen, und macht Cloud-Leistung zu einer Ware, die von jedem gehandelt werden kann.

Das iExec SDK ermöglicht die einfache Umwandlung jeder Anwendung in eine dezentrale. In diesem Artikel wird der einfache Prozess zum Einrichten einer Anwendung für ein dezentrales Cloud-Netzwerk beschrieben und erläutert, wie Entwickler von den neuen Geschäftsmodellen profitieren können, die iExec eröffnet.

Warum iExec?

Mit iExec können Entwickler ihre vorhandenen Anwendungen dezentralisieren. Die Dezentralisierung wird erreicht, wenn die Datenverarbeitung auf separaten Knoten über das Netzwerk erfolgt, ohne dass ein Knoten einen anderen anweist. Die Verwendung von iExec für die dezentrale Stromversorgung Ihrer Anwendung bietet zahlreiche Vorteile, einschließlich Monetarisierungsmöglichkeiten über das iExec-System "Pay-per-Task".

  • Als dezentrale Anwendung ("dapp") werden Anwendungen autonom. Das Netzwerk für Rechenleistung ist verteilt, wird im Konsens betrieben und wird nicht von einer einzelnen Einheit kontrolliert. Dies beseitigt die Verwundbarkeit eines Single-Point-of-Failures und ist extrem schwierig und teuer anzugreifen.
  • Anwendungsentwickler müssen keine Blockchain-Smart-Verträge schreiben. Das iExec SDK beseitigt die Komplexität der Blockchain.
  • Die für das dezentrale iExec-Netzwerk verwendeten intelligenten Verträge wurden von ChainSecurity öffentlich geprüft, um sicherzustellen, dass die Funktionen korrekt sind, dass sie eingehalten werden und keine Sicherheitslücken bestehen.
  • iExec übernimmt einen Großteil des Lebenszyklus, der Bereitstellung, des Betriebs und der Überwachung von Anwendungen, sodass sich Entwickler auf ihr Kernangebot konzentrieren können.
  • Durch die Monetarisierung über das iExec-Zahlungsschema "Pay-per-Task" können Entwickler bei jeder Verwendung ihrer Anwendungen Geld verdienen.

Welche Anwendungen können von iExec unterstützt werden?

iExec unterstützt die rechenintensivsten dezentralen Anwendungen in einer Vielzahl von Bereichen, von AI und Big Data bis hin zu Fintech und 3D-Rendering. Der iExec Dapp Store listet dezentrale Anwendungen auf, die bereits von iExec-Mitarbeitern betrieben werden. Um einen tieferen Einblick in die Möglichkeiten von iExec zu erhalten, lesen Sie unsere Serie "Dapp der Woche". Einige Beispiele sind:

  • Fintech: wie das Ausführen von Simulationen für Finanzdaten und das Verwenden von Kosten-Preis-Vorhersagen
  • Maschinelles Lernen: „Dezentrale KI“ ist ein Beispiel für eine CNN-Anwendung, die mit iExec dezentral betrieben wird
  • 3D-Rendering: Dieses Video zeigt einen 3D-Rendering-Prozess, der mit Blender auf iExec ausgeführt wird
  • Hochdurchsatz-Computing
  • Monte-Carlo-Anwendungen: iExec hat eine Fintech-Anwendung entwickelt, die Monte-Carlo-Methoden für Aktien mit Optionspreisen anwendet
  • Designexploration: OpenMOLE ist eine wissenschaftliche Forschungsanwendung, die von iExec dezentralisiert wurde

4 Schritte zur Dezentralisierung Ihrer Anwendung

Mit iExec ist das Erreichen der Dezentralisierung einfach. Der Rest des Artikels führt Sie durch die folgenden Schritte:

  1. Erstellen Sie ein Docker-Image
  2. Dezentralisieren Sie Ihre Anwendung in der Blockchain (und legen Sie einen Preis dafür fest)
  3. Listen Sie Ihre Anwendung im iExec Dapp Store auf
  4. Überwachen Sie Ihre Anwendung mit dem iExec Explorer

1. Erstellen Sie ein Docker-Image

Es gibt keine bestimmte Methode zum Erstellen eines Docker-Images für iExec. Befolgen Sie dazu die offizielle Docker-Dokumentation. Es gibt jedoch einige wichtige Punkte, die während des Prozesses berücksichtigt werden sollten.

  • Die Docker-Image-Datei sollte kein Verzeichnis mit dem Namen "/ iexec" enthalten.
    Ein Verzeichnis mit dem Namen "/ iexec" wird zur Laufzeit automatisch erstellt. In diesem Verzeichnis ruft Ihre Anwendung Eingabedateien ab und speichert die Ergebnisse von Berechnungen.
  • Um ein Höchstmaß an Vertrauenswürdigkeit zu gewährleisten, sollten Anwendungen deterministisch sein. Dies bedeutet, dass die Task bei gleichen Eingabedateien und Parametern jedes Mal ein identisches Ergebnis liefern muss. Dies ist erforderlich, um von dem Vertrauensmechanismus zu profitieren, der vom „PoCo“, dem iExec-Konsensusprotokoll, bereitgestellt wird, das die Richtigkeit des Ergebnisses validiert. (Weitere Informationen zum Beitragsnachweis oder zu PoCo finden Sie hier). Es liegt in der Verantwortung des Anwendungsentwicklers, das deterministische Verhalten seiner Anwendung sicherzustellen, das anhand der Ergebnisdatei berechnet wird. Wenn die Anwendung nicht deterministisch ist, generiert sie möglicherweise die Datei: "/iexec/consensus.iexec", und der PoCo-Mechanismus versucht, den Konsens für diese bestimmte Datei anstelle des Ergebnisses selbst zu berechnen.
Hinweis: Wenn Ihre Anwendung nicht deterministisch ist, bietet PoCo dennoch drei Sicherheitsmechanismen: Blockchain-Audibility, sichere Zahlung mit RLC-Token und möglicherweise die Zertifizierung, dass eine Berechnung in Intel® SGX-Hardware-Enklaven ausgeführt wurde.
  • Ein weiterer zu vermeidender Dateiname lautet: „/iexec/enclaveSig.iexec“. Diese Datei wird automatisch generiert, wenn Ihre Anwendung in einer SGX-Enklave ausgeführt wird [Weitere Informationen zu unserer Lösung für SGX] und vorhandene Inhalte überschreibt.
  • Sobald das Docker-Image erstellt wurde, sollte ein Test mit dem folgenden Befehl lokal ausgeführt werden:

docker run -v $ (pwd): / iexec-rm-name $ {CONTAINERNAME} \ $ {IMAGENAME} $ {ARGS} 2> & 1

$ (pwd) - ist das aktuelle Arbeitsverzeichnis (behalte es so bei; dies wird automatisch von deiner Shell berechnet);
$ {CONTAINERNAME} - ist der Name des Containers (Freitext);
$ {IMAGENAME} - ist der Name des Docker-Images (Freitext);
$ {ARGS} ist das Befehlszeilenargument der Anwendung (Freitext);

Wenn das Bild fertig ist, muss es auf einen öffentlichen Hub unter https://hub.docker.com hochgeladen werden

2. Dezentralisieren Sie Ihre Anwendung in der Blockchain

Das iExec Software Development Kit (SDK) erleichtert Entwicklern das Leben.

➡ Befolgen Sie das vollständige SDK-Tutorial auf GitHub. Es führt Sie durch die folgenden Schritte:

  • Installieren Sie das SDK: "npm -g install iexec"
  • Initialisieren Sie ein Projekt: "iexec init" (um automatisch alle Konfigurationsdateien und eine Brieftasche im aktuellen Verzeichnis zu erstellen)
  • Bearbeiten Sie die Datei "iexec.json", um den Namen, den Preis und den Dockerhub-Link für Ihre Anwendung festzulegen
  • Stellen Sie Ihre Anwendung in der Blockchain bereit: "iexec app deploy".

Danach haben Sie jetzt eine Blockchain-Adresse für Ihre Anwendung, den Einstiegspunkt für die Ausführung Ihrer App innerhalb von SDK oder Marketplace

Geld verdienen mit Ihrer Anwendung

Um eine Anwendung zu monetarisieren und jedes Mal, wenn sie über iExec ausgeführt wird, RLC-Token zu erhalten, können Entwickler für jede Aufgabenausführung eine Gebühr festlegen. Dieser Schritt wird im Abschnitt iexec.json im SDK gezeigt. Bei der Benennung der .json-Datei sollte die Summe (in nRLC) nach "Preis" festgelegt werden: (Hinweis: 1 nRLC entspricht 0,000000001 RLC)

Glückwunsch!

Das war's, Ihre Anwendung ist dezentralisiert. Wenn Sie in der .json-Datei einen Preis festlegen, zahlt der Benutzer bei jedem Start einer Aufgabe über den iExec Dapp Store den festgelegten Preis für die Ausführung und Sie werden mit der Gebühr belohnt, die in Ihrer Datei enthalten ist iExec-Konto. Sie können dann Ihr Geld auf Ihr eigenes Portemonnaie abheben.

3. Listen Sie Ihre dezentrale Anwendung im iExec Dapp Store auf

Dies ist ein optionaler Schritt. Da Ihre Anwendung in den iExec-Marktplatz und das native iExec-Zahlungstoken "RLC" integriert ist, kann sie problemlos monetarisiert werden. Der iExec Dapp Store ist eine Auflistung aller dezentralen Anwendungen, die von iExec-Mitarbeitern bereitgestellt werden können. Um Ihre Bewerbung hier zu bewerben, können Sie eine Pull-Anfrage in unserer GitHub Dapp-Registrierung öffnen. Bitte beachten Sie, dass in Kürze jeder ermutigt wird, Dapp Stores bereitzustellen. Um die Dezentralisierung zu fördern, möchte iExec nicht der einzige Betreiber und Kurator von dezentralen Anwendungen sein.

4. Überwachen Sie Ihre dezentrale Anwendung

iExec ist vollständig überprüfbar. Der iExec Explorer bietet einen Überblick über alle Transaktionen im iExec-Netzwerk, sodass Entwickler und Benutzer die Aktivitäten ihrer Anwendungen sowie die ausgeführten Aufgaben und Transaktionen auf dem Markt verfolgen können.

Das war's! Durch die Bereitstellung auf iExec haben Sie Ihrer Anwendung einen dezentralen Aspekt hinzugefügt und können nun von den neuen Monetarisierungsmodellen profitieren, die durch die Blockchain ermöglicht werden. Also viel Spaß mit den SDK-Tools und lass uns wissen, wie es geht!

Technischer Support für Slack:

Zusammen mit einer Community von Entwicklern, die iExec bereits mit ihren Anwendungen verwenden, ist das Tech-Team in unserem Slack-Chat über den # Beta-Testerkanal erreichbar.

Über iExec

  • Website: http://iex.ec/
  • Blog: https://medium.com/iex-ec
  • Twitter: https://twitter.com/iEx_ec
  • Telegramm: https://t.me/joinchat/FswFJw6AaL-kpQeWdBSwRA