Beitrag
Teile dein Wissen.
Was ist der beste Weg, um den Transaktionsdurchsatz von Sui zu vergleichen?
Ich untersuche die Leistungsangaben von Sui und möchte den Transaktionsdurchsatz auf Testnet vergleichen. Welche Tools und Methoden sollte ich verwenden?
- Sui
- SDKs and Developer Tools
Antworten
4Um den Transaktionsdurchsatz von Sui effektiv zu bewerten, sollten Sie das offizielle sui-benchmark
Tool verwenden oder ein benutzerdefiniertes Lasttest-Skript mit dem Sui SDK (z. B. TypeScript oder Rust) schreiben, das entweder auf eine Localnet- oder eine Testnet-Umgebung abzielt. Wenn Sie es verwendensui-benchmark
, starten Sie zunächst ein lokales Netzwerk mit und sui-test-validator
führen Sie dann das Benchmark-Tool mit mehreren gleichzeitigen Transaktionen aus. Auf diese Weise können Sie eine realistische Belastung simulieren und beobachten, wie viele Transaktionen pro Sekunde (TPS) das Netzwerk unter Stress verarbeitet. Sie sollten den Durchsatz sowohl bei Spitzenlast als auch bei Leerlauflast messen, den Gasverbrauch überwachen und die Latenz pro Transaktion überprüfen. Wenn Sie mehr Kontrolle bevorzugen, erstellen Sie mithilfe des Sui TypeScript SDK ein Skript, das einfache Transaktionsblöcke (z. B. Objektübertragungen oder Move-Aufrufe) mit hoher Parallelität und zeitgesteuerten Batches übermittelt.
Hier ist ein CLI-Beispiel für die Ausführung von localnet:
sui-test-validator
Dann verwende das Rust-Tool:
cargo run --release --bin sui-benchmark -- --target-qps 1000 --duration 60
Sie können Benchmarks auch von einer Node.js App aus durchführenPromise.all()
, indem Sie viele Transaktionen parallel über den SUIClient einreichen. Denken Sie nur daran, CPU/Speicher zu überwachen, wenn Sie lokal testen, da Ihre Hardwarebeschränkungen die Ergebnisse beeinflussen können.
Um mehr zu erfahren oder das Benchmarking-Tool herunterzuladen: https://github.com/MystenLabs/sui/tree/main/crates/sui-benchmark
Lassen Sie mich wissen, ob Sie ein Beispiel-Benchmarking-Skript in Node oder eine Anleitung für die Profilerstellung auf Devnet wünschen.
Um den Transaktionsdurchsatz von Sui zu vergleichen, verwenden Sie das Sui TypeScript SDK, um ein hohes Transaktionsvolumen mit minimalem Shared State zu generieren. Konzentrieren Sie sich auf Operationen mit eigenen Objekten, um die parallele Ausführung zu maximieren. Stapeln Sie Befehle mithilfe von Programmable Transaction Blocks (PTBs) zusammen und messen Sie Transaktionen pro Sekunde (TPS) über einen festen Zeitraum. Wird sui_getTransactionBlocks
zur Analyse von Ergebnissen verwendet. Führen Sie Tests mit einem stabilen RPC-Endpunkt durch und stellen Sie sicher, dass Ihre Arbeitslast Engpässe wie Konflikte um gemeinsame Objekte vermeidet. Um die Genauigkeit zu gewährleisten, wiederholen Sie die Tests über mehrere Epochen hinweg und verwenden Sie Sui Testnet oder eine Localnet-Umgebung.
Um den Transaktionsdurchsatz von Sui auf Testnet zu vergleichen, können Sie Folgendes tun:
https://fullnode.devnet.sui.io:5001
Testnetz einstellen: Stellen Sie eine Verbindung zu Suis Testnet her (verwenden Sie die öffentliche RPC-URL wie).
2.Verwenden Sie Benchmarking-Tools: Nutzen Sie die integrierten Benchmarking-Tools von Sui oder erstellen Sie Ihre eigenen Skripte mit dem Sui SDK, um mehrere Transaktionen parallel einzureichen.
3.TPS und Latenz messen: Verfolgen Sie Transaktionen pro Sekunde (TPS) und wie lange die Bestätigung von Transaktionen dauert. Sie können dafür Tools wiewrkoderApache JMeterverwenden.
4.Überwachen Sie die Netzwerkleistung: Behalten Sie die Netzwerkstatistiken mit Tools wiePrometheusoderGrafanaim Auge oder schauen Sie im Testnet-Dashboard von Sui nach, falls verfügbar.
5.Stresstest: Übermitteln Sie das System, indem Sie eine große Anzahl von Transaktionen einreichen, um zu sehen, wie es unter Last zurechtkommt.
Dadurch erhalten Sie einen guten Überblick über den Transaktionsdurchsatz von Sui und darüber, wie es unter Stress abschneidet.
*Um den Transaktionsdurchsatz von Sui auf Testnet zu vergleichen, verwenden Sie das offizielle Sui Benchmarker-Tool oder benutzerdefinierte Skripte mit der Sui CLI. Generieren Sie eine große Anzahl von Transaktionen, die auf eigenen Objekten basieren, um die parallele Ausführung zu maximieren und realistische Workloads zu simulieren. Vermeiden Sie gemeinsam genutzte Objekte, es sei denn, Sie testen Engpässe, da sie die Ausführung serialisieren und den Durchsatz verringern. Stellen Sie einen lokalen Fullnode- oder Validator-Satz bereit, falls detailliertere Metriken oder Optimierungen erforderlich sind. Verwenden Sie Metrik-Endpunkte oder Logs, um TPS, Latenz und fehlgeschlagene Transaktionen während Stresstests zu überwachen. Führen Sie Benchmarks in kontrollierten Umgebungen mit konsistenten Netzwerk- und Maschinenbedingungen durch, um die Reproduzierbarkeit sicherzustellen. Stapeln Sie Transaktionen in Blöcken oder Sequenzen zusammen und verfolgen Sie die Ausführungszeiten mithilfe von Zeitstempeln und Antwortprotokollen. Analysieren Sie die Nutzung der Systemressourcen, um CPU-, Speicher- oder I/O-Beschränkungen zu erkennen, die sich auf den Durchsatz auswirken können. Testen Sie unter verschiedenen Transaktionstypen — reine, eigene und gemeinsam genutzte —, um Leistungskompromisse zu verstehen. Verwenden Sie Prometheus und Grafana mit Node-Telemetrie, um während des Testens tiefere Einblicke in Echtzeit zu erhalten. *
Weißt du die Antwort?
Bitte melde dich an und teile sie.
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Verdiene deinen Anteil an 1000 Sui
Sammle Reputationspunkte und erhalte Belohnungen für deine Hilfe beim Wachstum der Sui-Community.

- Warum benötigt BCS eine genaue Feldreihenfolge für die Deserialisierung, wenn Move-Strukturen benannte Felder haben?55
- Fehler bei der Überprüfung mehrerer Quellen“ in den Veröffentlichungen des Sui Move-Moduls — Automatisierte Fehlerbehebung45
- Sui-Transaktion schlägt fehl: Objekte sind für eine andere Transaktion reserviert48
- Sui Move Error - Transaktion kann nicht verarbeitet werden Keine gültigen Gasmünzen für die Transaktion gefunden29
- Wie interagieren Fähigkeitsbeschränkungen mit dynamischen Feldern in heterogenen Sammlungen?07