Пост
Поделитесь своими знаниями.
Как лучше всего оценить пропускную способность транзакций Sui?
Я изучаю заявления Суи о производительности и хочу сравнить пропускную способность транзакций в Testnet. Какие инструменты и методологии мне следует использовать?
- Sui
- SDKs and Developer Tools
Ответы
4Чтобы эффективно оценить пропускную способность транзакций Sui, вам следует использовать официальный sui-benchmark
инструмент или написать собственный сценарий нагрузочного тестирования с использованием Sui SDK (например, TypeScript или Rust), ориентированный на среду локальной или тестовой сети. Если вы используетеsui-benchmark
, начните с запуска локальной сетиsui-test-validator
, а затем запустите инструмент тестирования с несколькими параллельными транзакциями. Это поможет смоделировать реалистичную нагрузку и определить, сколько транзакций в секунду (TPS) сеть обрабатывает в условиях стресса. Вам нужно измерять пропускную способность как в пиковые, так и в периоды простоя, отслеживать потребление газа и проверять задержку каждой транзакции. Если вы предпочитаете больший контроль, создайте скрипт, который отправляет простые блоки транзакций (например, передачи объектов или вызовы Move) с помощью Sui TypeScript SDK с высоким уровнем параллелизма и синхронизации пакетов.
Вот пример командной строки для запуска localnet:
sui-test-validator
Затем используйте инструмент Rust:
cargo run --release --bin sui-benchmark -- --target-qps 1000 --duration 60
Вы также можете проводить тесты в приложении Node.js, используя Promise.all()
для параллельной отправки множества транзакций через SuiClient. При локальном тестировании не забывайте контролировать процессор и память, так как аппаратные ограничения могут повлиять на результаты.
Чтобы узнать больше или воспользоваться инструментом сравнительного анализа, выполните следующие действия: https://github.com/MystenLabs/sui/tree/main/crates/sui-benchmark
Сообщите мне, нужен ли вам образец сценария бенчмаркинга в Node или руководство по профилированию в devnet.
Чтобы сравнить пропускную способность транзакций Sui, используйте Sui TypeScript SDK для создания большого объема транзакций с минимальным общим состоянием. Сосредоточьтесь на операциях с использованием собственных объектов, чтобы максимизировать параллельное выполнение. Выполняйте пакетные команды с использованием программируемых блоков транзакций (PTB) и измеряйте количество транзакций в секунду (TPS) в течение фиксированного периода времени. Используйте sui_getTransactionBlocks
для анализа результатов. Проведите тестирование на стабильной конечной точке RPC и убедитесь, что рабочая нагрузка позволяет избежать таких узких мест, как борьба за общие объекты. Для обеспечения точности повторяйте тесты в нескольких эпохах и используйте Sui Testnet или среду localnet.
Чтобы сравнить пропускную способность транзакций Sui в Testnet, вы можете сделать следующее:
https://fullnode.devnet.sui.io:5001
Настройте тестовую сеть: подключитесь к тестовой сети Sui (используйте общедоступный URL-адрес RPC, например).
2.Используйте инструменты сравнительного анализа: используйте встроенные инструменты тестирования Sui или создайте собственные сценарии с помощью Sui SDK для параллельной отправки нескольких транзакций.
3.Измерьте TPS и задержку: отслеживайте количество транзакций в секунду (TPS) и время, необходимое для подтверждения транзакций. Для этого можно использовать такие инструменты, какwrkилиApache JMeter.
4.Отслеживайте производительность сети: следите за статистикой сети с помощью таких инструментов, какPrometheusилиGrafana, или проверьте панель управления Sui Testnet, если она доступна.
5.Стресс-тест: подтолкните систему, отправив большое количество транзакций, чтобы увидеть, как она справляется с нагрузкой.
Это даст вам хорошее представление о пропускной способности транзакций Sui и о том, как она работает в условиях стресса.
*Чтобы оценить пропускную способность транзакций Sui в Testnet, используйте официальный инструмент Sui Benchmarker или собственные скрипты с интерфейсом командной строки Sui. Создавайте большое количество транзакций на основе собственных объектов, чтобы максимизировать параллельное выполнение и моделировать реалистичные рабочие нагрузки. Избегайте использования общих объектов, если только не тестируйте узкие места, поскольку они сериализуют исполнение и снижают пропускную способность. Разверните локальный полный набор узлов или валидаторов, если требуется более глубокая настройка метрик. Используйте конечные точки или журналы метрик для отслеживания TPS, задержек и неудачных транзакций во время стресс-тестов. Проводите тесты в контролируемых средах с одинаковым состоянием сети и оборудования для обеспечения воспроизводимости. Пакетные транзакции в блоках или последовательностях и отслеживайте время выполнения с помощью временных меток и журналов ответов. Анализируйте использование системных ресурсов, чтобы определить ограничения в процессоре, памяти или вводе-выводе, которые могут повлиять на пропускную способность. Протестируйте транзакции разных типов (чистые, собственные и совместно используемые), чтобы понять, как приходится идти на компромиссы в производительности. Используйте Prometheus и Grafana с телеметрией узлов для получения более глубокого анализа в реальном времени во время тестирования. *
Знаете ответ?
Пожалуйста, войдите в систему и поделитесь им.
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Заработай свою долю из 1000 Sui
Зарабатывай очки репутации и получай награды за помощь в развитии сообщества Sui.

- Почему BCS требует точного порядка полей для десериализации, когда структуры Move содержат именованные поля?55
- «Ошибки проверки нескольких источников» в публикациях модуля Sui Move — автоматическое устранение ошибок45
- Сбой транзакции Sui: объекты, зарезервированные для другой транзакции48
- Ошибка Sui Move — невозможно обработать транзакцию Не найдено действительных газовых монет для транзакции29
- Как ограничения возможностей взаимодействуют с динамическими полями в гетерогенных коллекциях?07