← ShimoDocs Suite Bereitstellungsdokumentation
1. Seitenübersicht
Die Kompatibilitätstestseite wird verwendet, um die Objekt-Storage-Konfiguration, Konnektivität, Upload-Kompatibilität und Upload-Leistung zu überprüfen. Die Seite ist unterteilt in:
- Speicherkonfiguration;
- Kompatibilitätstest;
- Leistungstest.
2. Speicherkonfiguration
2.1 Beschreibung der Konfigurationselemente
| Konfigurationselement | Funktion |
|---|---|
| Zugriffsschlüssel | Identifikator der Objekt-Storage-Zugriffsidentität, nämlich AK |
| Geheimer Schlüssel | Der Zugriffsschlüssel, der mit AK einhergeht, also SK |
| Endpunkt | Adresse des Objekt-Storage-Dienstes |
| Bucket-Name | Ziel-Bucket, der überprüft werden soll |
| Region | Speicher-Bucket-Standortbereich |
| Öffentlicher Endpunkt | Die von Browsern verwendete öffentliche Domain zum Zugriff auf den Objekt-Storage, optional |
| Pfad-Stil | Verwendung des Formats ‘endpoint/bucket/object’ zum Zugriff auf Objekte, Dienste wie MinIO müssen dies normalerweise aktivieren |
2.2 Füllen der Konfiguration
- Klicken Sie nach Bedarf auf „Attachments-Bucket füllen“ oder „Contents-Bucket füllen“.
- Das System füllt automatisch Konfigurationen wie AK, SK, Endpoint, Bucket, Region usw. entsprechend der aktuellen Umgebung aus.
- Wenn Sie die automatische Ausfüllung nicht verwenden, können Sie auch alle Konfigurationen manuell eingeben.
- Überprüfen Sie, ob der Endpunkt das richtige Protokoll und den richtigen Port enthält.
- Überprüfen Sie, ob der Bucket-Name der Bucket ist, der dieses Mal erkannt werden muss.
- Überprüfen Sie, ob die Region mit der tatsächlichen Region des Objektspeichers übereinstimmt.
- Wenn Sie möchten, dass der Browser direkt auf den Objektspeicher zugreift, füllen Sie den öffentlichen Endpunkt aus.
- Entscheiden Sie je nach Art des Objektspeichers, ob der Pfadstil aktiviert werden soll.
Nach dem automatischen Ausfüllen des Attachments-Buckets dieses Mal:
- Bucket:
shimo-attachments; - Endpunkt: wird automatisch vom System ausgefüllt;
- Region:
cn-north-1; - Öffentlicher Endpunkt: wird automatisch vom System ausgefüllt;
- Pfadstil: aktiviert.
Nach dem Klicken auf “Inhalte-Bucket ausfüllen” kann der Bucket automatisch wechseln zu file-contents.
Secret Key ist sensible Information; zeigen Sie ihn nicht im Klartext in Screenshots, Chats oder Tickets an.
3. Kompatibilitätstest
Der Kompatibilitätstest überprüft nacheinander das Backend-Upload, den direkten Browser-Upload und den Multipart-Upload.
3.1 Test starten
- Schließen Sie die Speicher-Konfiguration ab.
- Klicken Sie auf den Reiter “Kompatibilitätstest”.
- Bestätigen Sie erneut, dass die Konfiguration von Bucket, Endpunkt, Region, öffentlichem Endpunkt und Pfadstil korrekt ist.
- Klicken Sie auf “Kompatibilitätstest starten”.
- Warten Sie, bis die Seite “Kompatibilitätstest abgeschlossen” anzeigt.
- Prüfen Sie, ob der Zusammenfassungsstatus auf der Seite “Alle bestanden” ist.
- Überprüfen Sie den Status, die Dauer und die Ergebnisinformationen der drei Tests separat.
3.2 Backend-Upload-Test
Dieser Test wird verwendet, um die Netzwerkverbindung und Schreibberechtigungen vom Backend-Service zum Objektspeicher zu überprüfen.
- Das Backend erzeugt eine Testtextdatei.
- Das Backend schreibt die Datei in den Ziel-Bucket.
- Die Seite zeigt die Upload-Dauer und den Pfad des Testobjekts an.
- Ein grüner Erfolgsstatus zeigt an, dass das Backend-Netzwerk und die Schreibberechtigungen normal sind.
Aktuelles Ergebnis: Upload erfolgreich, Dauer 157 ms.
3.3 Browser-Direktupload-Test
Dieser Test wird verwendet, um die Verbindung für den direkten Upload vom Browser zum Objektspeicher über PostPolicy zu überprüfen.
- Die Seite fordert die für den Direktupload erforderliche PostPolicy vom Backend an.
- Der Browser verwendet den öffentlichen Endpunkt, um Dateien direkt in den Objektspeicher hochzuladen.
- Die Seite überprüft den HTTP Statuscode, der vom Objektspeicher zurückgegeben wird.
- HTTP 204 zeigt an, dass der direkte Browser-Upload erfolgreich war.
Ergebnis dieses Mal: Direkter Browser-Upload erfolgreich, dauerte 61 ms, Statuscode 204.
3.4 Multipart-Upload-Test
Dieser Test wird verwendet, um den vollständigen Ablauf des Multipart-Uploads von großen Dateien zu überprüfen.
- Initialisiere die Multipart-Upload-Aufgabe.
- Teile die Testdatei in mehrere Teile.
- Lade jeden Teil nacheinander hoch.
- Rufe die Merge-Schnittstelle auf, um die Objekterstellung abzuschließen.
- Die Seite zeigt
multipart upload succeeded, was darauf hinweist, dass der gesamte Prozess erfolgreich war.
Ergebnis dieses Mal: Multipart-Upload erfolgreich, dauerte 1746 ms.
3.5 Beschreibung der Testobjekte
Kompatibilitätstests führen tatsächliche Schreibvorgänge im Ziel-Bucket durch, und die Pfade der Backend-Testobjekte sind üblicherweise ähnlich zu:
compatibility-tests/<RANDOM UUID>.txt
- Überprüfen Sie, dass der Ziel-Bucket korrekt ist, bevor Sie Tests durchführen.
- Führen Sie keine Tests wahllos in einem falschen Produktions-Bucket durch.
- Nach den Tests können Sie Testobjekte gemäß der Bereinigungspolitik der Umgebung überprüfen und entfernen.
4. Leistungstest
Leistungstests werden verwendet, um die Upload-Zeit und den Durchsatz für verschiedene Dateigrößen zu messen.
4.1 Konfiguration von Leistungstests
- Klicken Sie auf die Registerkarte “Leistungstests”.
- Wählen Sie den Testmodus; die Seite ist standardmäßig auf “Browser Direkt” eingestellt.
- Wählen Sie den Inhaltstyp; Sie können
application/octet-streamstandardmäßig. - Wählen Sie die Dateigröße, die Sie testen möchten.
- Die Seite unterstützt 1, 5, 8, 10, 12, 15, 20 und 25 MB.
- In der Testumgebung können Sie zunächst 1 MB für eine schnelle Validierung auswählen.
- Für einen formalen Leistungsvergleich wählen Sie mehrere Dateigrößen für den Test aus.
4.2 Starten des Leistungstests
- Stellen Sie sicher, dass die Speicher-Konfiguration korrekt ist.
- Stellen Sie sicher, dass mindestens eine Dateigröße ausgewählt wurde.
- Klicken Sie auf ‘Leistungstest starten’.
- Warten Sie, bis alle Dateien hochgeladen sind.
- Überprüfen Sie den durchschnittlichen Durchsatz, die kürzeste Zeit und die längste Zeit.
- Überprüfen Sie den Status, die verstrichene Zeit, den Durchsatz und Fehlermeldungen für jede Dateigröße.
- Wenn Fehler auftreten, überprüfen Sie zuerst das Browser-Netzwerk, den öffentlichen Endpunkt, die Cross-Origin-Konfiguration und den Status des Objektspeichers.
4.3 Ergebnisse dieses Tests
Dieser Test verwendet nur 1 MB Dateien für einen leichten Frontend-Direkt-Upload-Test:
| Metrik | Ergebnis |
|---|---|
| Dateigröße | 1,0 MB |
| Status | Erfolg |
| Zeit | 874 ms |
| Durchsatz | 1,14 MB/s |
| Fehlermeldung | Keine |
Tatsächliche Ergebnisse: Upload erfolgreich, und die Seite kann verstrichene Zeit und Durchsatzmetriken korrekt erzeugen.
Leistungsergebnisse können durch das Netzwerk des Browsers, die Cluster-Auslastung, Proxy-Verbindungen und die Last des Objektspeichers beeinflusst werden. Ein einzelner Test kann nur die funktionale Verfügbarkeit überprüfen; die formale Leistungsabnahme sollte wiederholt in derselben Umgebung getestet und Statistik für P50, P95sowie Fehlerraten sollten aufgezeichnet werden.
5. Vorsichtsmaßnahmen
- Bestätigen Sie den Ziel-Bucket, bevor Sie Tests durchführen, um zu vermeiden, dass Testdateien in den falschen Speicher-Bucket geschrieben werden.
- Zeigen Sie den Secret Key nicht im Klartext in Dokumenten oder Screenshots an.
- Direktes Hochladen über den Browser hängt vom Public Endpoint und der Cross-Origin-Konfiguration ab.
- S3-kompatible Dienste wie MinIO erfordern normalerweise die Aktivierung des Path Style.
- Leistungstests erzeugen echten Netzwerkverkehr und Speicherzugriffe; bewerten Sie die Auswirkungen auf die Umgebung, bevor Sie große Dateien testen.
- Die formale Leistungsabnahme sollte in mehreren Runden durchgeführt werden; ein einzelnes Browser-Testergebnis ist nicht ausreichend.