Zum Hauptinhalt springen

Was ist der Leapcell Service?

Leapcell Service ist eine vollständig verwaltete, serverlose Plattform, die entwickelt wurde, um Ihren Code auszuführen, ohne dass eine Serververwaltung erforderlich ist.

Sie können sich auf das Schreiben von Code konzentrieren, während Leapcell die Infrastruktur, Skalierung und Wartung übernimmt.

data

Serverloser Modus

Leapcell Serverless Service ist eine Hosting-Plattform, die sich an die 12 Factor Methodik hält und eine vollständig serverlose Erfahrung bietet.

Nachfolgend finden Sie einen architektonischen Überblick über den Service.

Serverless Cost

Konzepte

CPU, Speicher und Netzwerk

Leapcell Service weist dynamisch CPU- und Netzwerkressourcen basierend auf der ausgewählten Speichergröße zu. Durch Anpassen der Speichergröße können Sie sowohl die Leistung als auch die Kosten optimieren. Die Abrechnung erfolgt pro Millisekunde Rechenzeit.

Tipp Die Standardbezeichnung für die Tip-Ermahnung (:::tip)

Kleinere Speichergrößen sind nicht immer billiger. Zum Beispiel:

  • Ein Dienst mit 128 MB Speicher benötigt 1 Sekunde für die Fertigstellung.
  • Derselbe Dienst mit 1024 MB Speicher benötigt 0,1 Sekunden für die Fertigstellung.

Die Kosten bleiben gleich, aber die höhere Speicherkonfiguration bietet eine schnellere Ausführung und eine bessere Netzwerkbandbreite. Zum Beispiel:

  • Eine 300-MB-Konfiguration kann Leapcell Table in weniger als 50 ms aufrufen, während eine 128-MB-Konfiguration aufgrund geringerer CPU- und Netzwerkressourcen 100 ms dauern kann.
Konfigurierter Speicher (MB)Zugewiesene Kerne
128–17691
1770–35382
3539–53073
5308–70764
SpeicherCPU-Grenze
192 MB10.8%
256 MB14.1%

Speicher

Leapcell Service bietet begrenzten beschreibbaren Speicherplatz.

  • Nur das /tmp-Verzeichnis ist beschreibbar und für temporäre Dateien vorgesehen.
  • Andere Verzeichnisse sind schreibgeschützt. Der Versuch, in diese zu schreiben, führt zu einem Berechtigungsfehler.
Achtung Die Standardbezeichnung für die Caution-Ermahnung (:::caution)

Speichern Sie keine kritischen Daten in /tmp. Dieses Verzeichnis ist nicht persistent – sein Inhalt geht verloren, wenn der Dienst neu gestartet wird. Verwenden Sie persistente Speicherdienste wie Leapcell Redis für dauerhaften Speicher.

Umgebungsvariablen

Vertrauliche Informationen wie Datenbankanmeldeinformationen sollten über Umgebungsvariablen verwaltet werden:

  • Diese Variablen sind verschlüsselt und privat.
  • Konfigurieren Sie sie über den Abschnitt Service > Umgebung. Änderungen werden automatisch übernommen, ohne den Dienst neu zu starten.

Verpackung und Bereitstellung

Die Verpackung bündelt Ihren Code und Ihre Abhängigkeiten in einem Image, das automatisch bereitgestellt wird.

Worker-Ressourcen für die Verpackung

PlanRessourcen
Hobby2 vCPUs, 4 GB RAM
Pro4 vCPUs, 10 GB RAM

Bereitstellungsschritte

  1. Manuelle Bereitstellung

    • Klicken Sie auf der Dienstseite auf Manuelle Bereitstellung.
    • Füllen Sie die erforderlichen Felder wie unten beschrieben aus.
  2. Konfigurationsdetails

    • Laufzeit: Wählen Sie aus unterstützten Laufzeiten wie Python, Node.js, Go oder Rust.
    • Build-Befehl: Geben Sie den Befehl zum Installieren von Abhängigkeiten an. Beispiele:
      • Python: pip install requests
      • Web-App: pip install -r requirements.txt
      • KI-App:
        apt-get update && apt-get install -y libsm6 libxext6 libxrender-dev
        pip install tensorflow pillow
    • Startbefehl: Geben Sie den Befehl zum Starten Ihres Dienstes an. Stellen Sie sicher, dass er für minimale Kaltstartzeiten optimiert ist. Beispiele:
      • Flask: gunicorn -w 1 -b :8080 app:app
      • Express.js: node app.js
    • Serving-Port: Der Port, an dem Ihr Dienst lauscht (Standard: 8080). Stellen Sie sicher, dass dieser mit dem Port in Ihrem Startbefehl übereinstimmt.
    • Umgebungsvariablen: Fügen Sie alle zusätzlichen Variablen hinzu, die für die Bereitstellung spezifisch sind.
  3. Bereitstellen Klicken Sie auf die Schaltfläche Bereitstellen, um die Verpackung und Bereitstellung Ihres Dienstes zu starten.


Debuggen von Bereitstellungsproblemen

  • Build-Fehler: Überprüfen Sie die Bereitstellungsinformationen auf Echtzeitprotokolle und beheben Sie Fehler basierend auf der Ausgabe.

  • Startfehler: Wenn der Dienst erfolgreich bereitgestellt wird, aber nicht reagiert, lesen Sie den Abschnitt Observability für Tipps zur Fehlerbehebung.


Persistenter Servermodus

Persistent Server

Der persistente Modus bietet Ihnen eine dedizierte, kontinuierlich laufende Instanz, ähnlich wie ein lokaler Rechner oder ein traditioneller Cloud-Server.

Er bleibt aktiv und bereit, Datenverkehr zu verarbeiten, unabhängig vom eingehenden Anfragevolumen. Dieser Modus wird basierend auf einem festen Zeitintervall abgerechnet, z. B. pro Stunde oder pro Monat.