メインコンテンツまでスキップ

「エンジニアリング」タグの記事が6件件あります

全てのタグを見る

297k TPS!Sui ネットワークの驚異的なパフォーマンス更新:スループットと確定時間を徹底分析

· 約3分
Dora Noda
Software Engineer

Sui Foundation は最近、一連のテストを実施し、Sui ネットワーク上のさまざまなワークロードに対する現在のピークスループットと確定時間(Time to Finality)を測定しました。発表から1年が経ち、Sui ネットワークはパフォーマンス面で大きく前進し、将来有望な分散型プロトコルとなっています。

主な調査結果

  • 100 のグローバルに分散したバリデータで構成される Sui ネットワークは、ワークロードに応じて 10,871 TPS から 297,000 TPS までのピークスループットを達成しました。
  • Sui の確定時間は約 480 ミリ秒で、トランザクションの高速確認が可能です。

パフォーマンス評価

Sui プロトコルのパフォーマンス測定のため、Foundation はハードウェア構成、バリデータ数、地理的分布、投票権分布がメインネットに極めて近い、グローバルに分散した環境を使用しました。テストは 100 台のバリデータ、24 コア AMD ハードウェア、256GB メモリ、25Gbps NIC を用いて実施されました。

プログラマブル・トランザクション・ブロック(PTB)でスループットを測定

Sui のコア開発者プリミティブである PTB は、複雑かつ構成可能なトランザクションシーケンスを実現します。PTB 内でチェーンされたトランザクションは原子的に実行・失敗でき、効率と表現力が向上します。各 PTB は最大 1,024 件のトランザクションをサポートでき、Sui は大規模ワークロードを処理し、ユーザーの手数料を削減できます。

スループット測定の課題

トランザクション・パー・セカンド(TPS)はブロックチェーンプロトコルの処理能力を測る一般的な指標ですが、PTB が秒間に何件実行されたかだけでは Sui の計算能力を正確に表せません。平均 PTB サイズが大きくなるとスループットは向上しますが、PTB/秒 の指標は変わらないため、Foundation は PTB 内の個別トランザクション数を秒間に実行された件数として測定する方針を採用しました。

確定時間(Time to Finality)

ブロックチェーンにおける確定性とは、トランザクションが不可逆的となり、変更や取り消しができなくなる時点を指します。本パフォーマンス更新では、トランザクション自体とその効果が最終的に確定し、以降のトランザクションで利用可能になるライフサイクル上の時点を測定しています。Sui の確定時間は約 480 ミリ秒で、95 パーセンタイルのレイテンシは約 550 ミリ秒です。

今後の最適化とスケーラビリティ

Sui プロトコルはパフォーマンス面で大きく前進しましたが、最適化とスケーラビリティの余地はまだ多く残っています。近い将来、Sui Foundation は以下の項目の改善を計画しています。

  • ベンチマークツールのスケーラビリティとカバレッジの拡充
  • 複数マシンに跨るバリデータ間スケーリングを実現する水平スケーラビリティ
  • 個別バリデータの低パフォーマンスに対するレジリエンス

Sui プロトコルが進化しパフォーマンスが向上するにつれ、Sui Foundation はコミュニティへ継続的にアップデートを共有し、フィードバックと検討を呼びかけていきます。圧倒的なスループットと確定時間を備えた Sui ネットワークは、分散型システムの世界に大きなインパクトを与える準備が整っています。

スケーラビリティの革命:SuiブロックチェーンのWeb 3における大規模採用への道

· 約3分
Dora Noda
Software Engineer

Suiブロックチェーンは、有望なレイヤー1(L1)プロジェクトで、独自の技術イノベーションとトークンエコノミクスを活用し、スケーラブルで効率的なプラットフォームを提供します。本稿では、Sui の主要なイノベーションを検証し、Web 3.0 アプリケーションの大規模採用に向けたソリューションとしての可能性を評価します。

主要なイノベーション

  • Sui Move:並列実行に最適化されたカスタム版 Move 言語で、摩擦のない大量資産の生成と、よりスムーズなプログラミング体験を実現します。
  • シングルライタートランザクション:コンセンサスを必要としないシンプルなトランザクション処理の新手法で、セキュリティと効率性のためにビザンチン一貫ブロードキャストを使用します。
  • Narwhal‑Tusk コンセンサスエンジン:有向非循環グラフ(DAG)データ構造を利用した最先端のコンセンサスメカニズムで、高スループットと低レイテンシを実現します。
  • 独自のトークンエコノミクス:Sui のトークンモデルは、ネットワーク上のストレージコストに対応するためにストレージ基金を導入し、ブロックチェーンの寿命全体で比較的一定のガス価格を維持します。この設計はバリデータにインセンティブを与え、十分なストレージ容量を確保します。

評価

Sui ブロックチェーンは、特にシングルライタートランザクションの上限が無制限というスケーラビリティに関する革新的なソリューションで際立っています。これにより、ソーシャルメディアアプリや大量の NFT 配布など、シングルライタートランザクションに大きく依存するアプリケーションに適しています。

Sui のスケーラビリティソリューションは、低い固有価値だが高い社会的目的を持つ NFT、例えばオンチェーンクーポン、分散型 ID、クレジットカードなどの可能性を開きます。さらに、Sui Move の言語機能により、ブロックチェーン上でオブジェクトを構造的に保存でき、ブロックチェーンのセキュリティと永続性の保証を享受できます。

結論

Sui ブロックチェーンは、Web 2.0 レベルのスケーラビリティを処理できる L1 ブロックチェーンの実現可能な設計図を提供します。これは Web 3.0 の成熟度の高まりと、十億ユーザー規模の可能性を象徴しています。長期的な成功に関わらず、Sui のブロックチェーン技術への革新的アプローチはすでに重要な成果を示しています。

Optimism アーキテクチャ

· 約5分
Tian Pan
Community Hacker

Optimism は EVM 等価のオプティミスティック・ロールアップ・プロトコルで、Ethereum のスケーリングを目的としています。Ethereum のスケーリングとは、ネットワークが処理できる有用なトランザクション数を増やすことを意味します。オプティミスティック・ロールアップ はレイヤー 2 のスケーラビリティ手法で、セキュリティや分散性を犠牲にせずに Ethereum の計算・ストレージ容量を拡張します。EVM 等価性 は、Ethereum イエローペーパーで定義された状態遷移関数への完全な準拠を指します。

オプティミスティック・ロールアップは、複数のトランザクションを単一のトランザクションにまとめ、Ethereum ネットワーク上のスマートコントラクトで検証します。このプロセスは「ロールアップ」と呼ばれ、個々のトランザクションが大きなトランザクションに統合されて Ethereum に送信されます。「オプティミスティック」という名称は、トランザクションが有効であると仮定し、反証が出るまでそのまま処理を進めることで、より高速かつ効率的に処理できることに由来します。

全体アーキテクチャ

Optimism アーキテクチャ

op-node + op-geth

ロールアップノードはバリデータモードまたはシーケンサーモードで動作できます。

  1. バリデータ(検証者): Ethereum ノードを実行するのと同様に、ローカルで L2 トランザクションをシミュレートし、レート制限はありません。また、バリデータシーケンサー の作業を検証し、出力ルート を再計算してシーケンサーが提出したものと比較します。不一致があれば、バリデータフォルト・プルーフ を実行できます。
  2. シーケンサー: シーケンサー は特権的なアクターで、L2 ユーザーから受け取ったトランザクションを L2 ブロックにまとめ、データ可用性プロバイダーバッチャー 経由)へ送信します。また、出力ルート を L1 に提出します。現在のスタックではシーケンサーは 1 つだけであり、OP スタックが非分散的であると批判される点です。

op-batcher

バッチ送信者(バッチャー)は、L2 のシーケンサーデータを L1 に送信し、検証者が利用できるようにします。

op-proposer

プロポーザーは L2 出力チェックポイントを Ethereum 上の L2 出力オラクルコントラクトに生成・送信します。ファイナライズ期間が経過すると、このデータに基づいて出金が可能になります。

バッチャーとプロポーザーはどちらも状態を L1 に送信しますが、なぜ分離されているのでしょうか? バッチャーはトランザクションデータをバッチ単位で L1 に集約・送信し、プロポーザーは L2 の状態を表すコミットメント(出力ルート)を送信して L2 アカウント状態のビューを確定させます。これらを分離することで、並行して処理でき、効率が向上します。

contracts-bedrock

L2 が L1 とやり取りするための各種コントラクト:

  • OptimismPortal: L1 の状態でスマートコントラクト呼び出しとして発生した L2 トランザクションのフィード。
  • Batch inbox: バッチ送信者がトランザクションバッチを送信する L1 アドレス。
  • L2 output oracle: 出金やフォルト・プルーフで使用するために L2 出力ルート を保存するスマートコントラクト。

Optimism コンポーネント

デポジットの方法

出金の方法

Optimism ドキュメントへのフィードバック

OP スタックの理解は、いくつかの要因により難しいことがあります。その一つは、コードやドキュメントで同じコンポーネントが微妙に異なる名前で複数回言及される点です。例えば、"op-batcher" と "batch‑submitter"、"verifiers" と "validators" が混同され、各コンポーネントの正確な機能が分かりにくくなります。

もう一つの課題は、アーキテクチャが進化し続けるため、設計要素が時間とともに廃止されることです。ドキュメントが常に最新の変更を反映しているとは限らず、古い情報や不正確な情報に基づいてシステムを理解しようとすると、さらなる混乱を招きます。

これらの課題を克服するには、利用可能なすべてのドキュメントを注意深くレビューし、概念を一貫させ、OP スタックの変更やアップデートに常に追随することが重要です。追加の調査や他のユーザー・開発者との協働が必要になることもありますが、複雑なシステムを正しく理解し、効果的に活用するためには不可欠です。

Optimism の紹介:Optimistic Rollup による Ethereum のスケーリング

· 約8分
Dora Noda
Software Engineer

Optimism は、セキュリティや分散性を犠牲にせずに Ethereum をスケールさせるための Optimistic Rollup プロトコルです。プロトコルは、Ethereum の計算およびストレージ容量を増大させつつ、既存の Ethereum インフラストラクチャとの最大限の互換性を保ちます。

Optimism の紹介:Optimistic Rollup による Ethereum のスケーリング

基礎

Ethereum のスケーラビリティとは?

Ethereum のスケーラビリティは、ネットワークがより多くの有用なトランザクションを処理できる能力を指します。現在の Ethereum は帯域幅、計算、ストレージといったリソースが限られており、大量のトランザクション処理が困難です。特に計算とストレージがボトルネックとなり、手数料が極端に高くなります。Ethereum をスケールさせ手数料を下げるには、帯域幅、計算、ストレージをより有効に活用する必要があります。

Optimistic Rollup とは?

Optimistic Rollup は、レイヤー 2 のスケーラビリティ手法で、トランザクションをオフチェーンで実行しつつ、セキュリティと分散性を維持します。トランザクションデータはチェーン上に提出されますが、実行はオフチェーンで行われます。オフチェーン実行にエラーがあった場合、フォルトプルーフをチェーン上に提出してエラーを訂正し、ユーザー資金を保護します。このアプローチは、紛争が生じたときだけ裁判所に行くイメージに似ており、エラーがあったときだけチェーン上でトランザクションを実行します。

EVM 等価性とは?

EVM 等価性は、Ethereum イエローペーパーで定義された状態遷移関数に完全に準拠していることを指します。EVM 等価な Rollup プロトコルは、EVM 間で Ethereum 標準を遵守し、スマートコントラクト開発者がコードを一度書くだけでどこでもデプロイできるようにします。つまり、Ethereum メインネット向けに書かれたスマートコントラクトは、ほとんど変更せずに EVM 等価な Rollup プロトコルへデプロイ可能です。

Optimism = EVM 等価 + Optimistic Rollup + Ethereum のスケーリング

Optimism は、既存の Ethereum インフラストラクチャとの最大限の互換性を保ちつつ、Ethereum をスケールさせることを目的とした EVM 等価な Optimistic Rollup プロトコルです。

セキュリティ

Ethereum をセキュリティを犠牲にせずにスケールさせるため、Optimism はレイヤー 1 の重要な 3 つの特性、ライブネス、可用性、妥当性を保持します。

  1. ライブネス – 誰でも任意のタイミングでトランザクションを送信し、Rollup チェーンを拡張できます。
    • トランザクションはシーケンサー経由または直接レイヤー 1 に送信できます。シーケンサーは低遅延・低コストを提供し、レイヤー 1 へ直接送信することで検閲耐性が得られます。
  2. 可用性 – 誰でも Rollup チェーンをダウンロードできます。
    • チェーンを再構築するために必要なすべての情報はレイヤー 1 のブロックに埋め込まれています。したがって、レイヤー 1 が利用可能である限り、Rollup も利用可能です。
  3. 妥当性 – すべてのトランザクションが正しく実行され、すべての出金が正しく処理されます。
    • Rollup の状態と出金は L1 コントラクト L2OutputOracle で管理され、単一の正直な検証者が存在すれば正しい(=妥当な)Rollup ブロックハッシュのみが確定されます。無効なブロックハッシュが L1 に提示された場合、正直な検証者がそれが無効であることを証明し、ボンドを獲得します。

Optimism はフォルトプルーフを通じて Rollup の妥当性を強制します。妥当性プルーフは実装が可能になった段階で組み込むこともできます。

ネットワーク参加者

Optimism には ユーザーシーケンサー検証者 の 3 種類のアクターが存在します。

Optimism ネットワーク参加者

ユーザー

ネットワークの中心は、Ethereum メインネット上のコントラクトへデータを送信することで L2 に任意のトランザクションを入金・出金できるユーザーです。ユーザーはシーケンサーへトランザクションを送信して L2 の EVM スマートコントラクトを利用し、検証者が提供するブロックエクスプローラーでトランザクションのステータスを確認できます。

シーケンサー

シーケンサーは主なブロックプロデューサーです。コンセンサスプロトコルを用いて 1 つまたは複数存在します。バージョン 1.0.0 では、Optimism Foundation の監督下で運営されている単一シーケンサーが使用されています。一般に、仕様書では「シーケンサー」という語が複数シーケンサーによるコンセンサスプロトコル全体を指すことがあります。

シーケンサーの主な役割は

  1. ユーザーからのオフチェーントランザクションを受け取ること、
  2. オンチェーントランザクション(主に L1 からの入金イベント)を観測すること、
  3. これらを特定の順序で L2 ブロックに統合し、統合された L2 ブロックを L1 に calldata として 2 つ送信すること
    • ステップ 1 で受け入れた保留中オフチェーントランザクション、
    • オンチェーントランザクションの順序情報(L1 のみでブロックを再構築できるようにするための情報)

シーケンサーはステップ 3 の時点でブロックデータへのアクセスも提供し、ユーザーは L1 の確定を待たずにリアルタイム状態を取得できます。

検証者

検証者は次の 2 つの目的を持ちます。

  1. ユーザーへ Rollup データを提供すること、
  2. Rollup の整合性を検証し、無効な主張に対して争議を行うこと。

ネットワークの安全性を保つため、少なくとも 1 人の正直な検証者が存在し、Rollup チェーンの整合性を検証し、ブロックチェーンデータをユーザーに提供できなければなりません。

主要なインタラクション図

以下の図は、プロトコルコンポーネントがユーザーインタラクション中にどのように利用されるかを示し、各コンポーネント仕様を掘り下げる際の文脈を提供します。

入金とトランザクション送信

ユーザーはまず L1 から ETH を入金し、手数料を支払えるようになると L2 でトランザクションを送信し始めます。以下の図はこのインタラクションと、利用される(または利用すべき)主要な Optimism コンポーネントを示しています。

入金とトランザクション送信

出金

出金は L2 上の通常トランザクションで開始され、争議期間が経過した後に L1 上のトランザクションで完了します。

出金の図

結論

Optimism は、既存の Ethereum インフラストラクチャとの最大限の互換性を保ちつつ、Ethereum をスケールさせることを目的とした Optimistic Rollup プロトコルです。計算とストレージ容量を増やすことで、セキュリティや分散性を犠牲にせずに、より多くの有用なトランザクションを処理できるソリューションを提供します。詳細を知りたい方は、公式スペック(official specs)をご覧ください。Ethereum のコア原則を遵守し、既存インフラと高い互換性を持つ Optimism は、Ethereum がよりスケーラブルで効率的なネットワークになるための重要なプレイヤーになるでしょう。

Optimism Rollup のノードをセットアップ・維持するのに何時間も費やすのにうんざりしていませんか? ネットワークへの接続がもっと簡単にできたらいいな、と思いませんか? BlockEden.xyz の Optimism RPC を使えば、数分で Optimism Rollup に接続できます! ノードのセットアップや保守にかかる手間と時間にさよならを告げましょう。

BlockEden.xyz Optimism RPC は、Optimism Rollup への接続プロセスをシンプルにし、開発者が本当に重要なこと—プロジェクトの開発—に集中できるようにします。使いやすいプラットフォームで、ネットワークへの接続が迅速かつ手間なく行えるため、時間とリソースを大幅に節約できます。

当社のプラットフォームは、Optimism Rollup の利点を活用したい開発者にとって、セットアップや保守に時間を取られることなく、スムーズに利用できるソリューションを提供します。専門チームが常に最新技術を保守・更新するので、アプリケーションの安定性と信頼性に自信を持てます。

Optimism Rollup の複雑さに足枷を感じることなく、最高のアプリケーションを作り上げましょう。BlockEden.xyz Optimism RPC が技術的な詳細を担当し、開発者はイノベーションと創造に専念できます。今すぐ BlockEden.xyz にサインアップ するか、お試しください て、シームレスな接続性と効率向上のメリットを体感してください!

Suiブロックチェーンが高速かつ効率的なトランザクション処理の有望なプラットフォームである理由

· 約3分
Dora Noda
Software Engineer

ブロックチェーンの世界では、スピード と 効率性 があらゆるプラットフォームの成功にとって不可欠です。そこで登場するのが Sui ブロックチェーンで、低レイテンシ のトランザクション処理 と スマートコントラクト 実行 を提供することを約束するプラットフォームです。

Sui と BlockEden.xyz

Sui ブロックチェーンのユニークな機能のひとつは、オブジェクト所有権の種類を区別できる点です。従来のブロックチェーンプラットフォームでは、すべてのコントラクト と オブジェクト が可変的に共有されますが、Sui ではオブジェクトがアドレスに所有され、可変所有、不可変所有、または可変共有のいずれかになることができます。この機能は、スマートコントラクト の並列実行 と 資産管理 に活用されます。

Sui は分散型かつ許可不要なスマートコントラクトプラットフォームで、資産の低レイテンシ管理に特化しています。Move 言語を使用して、資産をアドレスが所有できるオブジェクトとして定義します。プラットフォームは、他のブロックチェーンシステムにおけるバリデータ や マイナー に相当する、許可不要な権限者の集合によって維持されています。

低レイテンシを実現するために、Sui はトランザクション処理を 2 つのフェーズに分割します。 1) オブジェクト単位での分散ロック取得、 2) トランザクションの実行 と その効果のコミット です。

フェーズ 1 は、権限者内部でグローバル同期を必要としない信頼性の高いブロードキャストプリミティブを通じて実行され、シャーディングによるスケーラビリティを可能にします。共有オブジェクトを含むトランザクションでは、コンセンサスプロトコルを用いたシーケンシングが必要です。

Sui は権限者内部でのグローバルロックを必要とするボトルネックや同期ポイントを積極的に削減し、リソース増加に伴う準線形スケーリングを実現します。また、Move 仮想マシンが複数コアや物理マシン上でバージョン管理された入力オブジェクトを読み取り、実行し、結果オブジェクトを書き込むことで、スマートコントラクトの並列実行を可能にします。

オブジェクト と トランザクション に対するストアの整合性要件は非常に緩く、各権限者が内部でスケーラブルな分散キー・バリューストアを利用できます。Sui は権限者間でビザンチン整合ブロードキャストプロトコルを使用し、資産に対する共通操作の安全性を確保します。これにより、ビザンチン合意に比べて低レイテンシ と 高いスケーラビリティ が実現されます。

総合すると、Sui ブロックチェーンの設計選択 と 最適化は、速くて効率的なトランザクション処理を必要とするアプリケーションにとって有望なプラットフォームとなります。 1) オブジェクト所有権の種類を区別できること、 2) オブジェクト単位で分散ロックを取得できること、 3) スマートコントラクトを並列実行できること、という三つの主要機能が他のブロックチェーンプラットフォームと差別化するポイントです。Sui ブロックチェーンとともに、速くて効率的なトランザクション処理の未来がここにあります。

ブロックチェーンのTPSについて語ろう

· 約4分
Jack Sim
Web3 Builder

Note: Metrics cited here were taken from October 2022 and may no longer reflect current network performance.

On Day 1 of Aptos Mainnet launch, there’s some confusing conversations on social media

TPS は「transactions per second(1 秒あたりの取引数)」の略で、エンジニアがネットワークのトラフィック量を測る指標です。TPS について語る際には、以下のようなシナリオがあります。

  • Max TPS はブロックチェーンがサポートできる最大のネットワークトラフィックを指します。これは、チェーンがコンセンサスに達し新しいブロックを生成できる速度、ブロックサイズ(例:BTC)やブロックのガスリミット(例:Ethereum)によって決まります。スマートコントラクトをサポートする Ethereum 以降のブロックチェーンでは、ガスで制限される方が意味があります。なぜなら、取引の種類(例:1 対 1 のトークン転送 vs 複数 NFT のミント)によって計算コストが異なり、一貫した計測が必要になるからです。したがって、Max TPS はチェーンのスループットを測る厳密な指標ではなく、max gas per second が実際の指標となります。開発者はこの Max TPS の値をどのように得るのでしょうか?通常は実験結果から導き出され、良好なネットワーク環境、フルに稼働するバリデータ、そして最もシンプルな取引を前提とした上限値です。

  • Actual TPS は稼働中のブロックチェーンが現在処理しているトラフィック量です。これは主にネットワークの混雑度によって決まります。Aptos Mainnet のローンチ時期には、利用可能な dApp が少なく、Aptos トークンを保有しているユーザーも少なかったため、取引があまり行われず Actual TPS は低かったのです。しかし、Actual TPS は Max TPS によって上限が設定されます。いわゆる Ethereum の混雑状態とは、Actual TPS がすでに Max TPS に達し、これ以上取引を処理できず待機が必要になる状態を指します。

したがって、エコシステムが成長すれば、Aptos の高い Max TPS が優位性を示し、ほぼ瞬時の取引確定と低い取引手数料が実現できるでしょう。

次に、BlockEden.xyz のお客様に戻ります。当社は異なるプランで node API services を提供しており、主な違いは QPS(queries per second の略)制限です。無料プランは基本的に 1 QPS、Pro プランは 10 QPS が利用可能です。これは 1 秒間に何回 REST API を呼び出せるかを示します。ブロックチェーン上で 1 秒に何件の取引が確定できるかとは別の指標です。REST API を呼び出す際には、書き込み操作(取引送信)だけでなく、アカウント情報取得、ブロック取得、取引取得といった多数の読み取り操作も行えます。

まだ当社のサービスにサインアップしていない方は、このリンク から無料で始めてみてください。