---
html: the-clio-server.html
parent: xrpl-servers.html
blurb: Clioは、API呼び出しに最適化されたXRP Ledgerサーバーです。
---
# Clioサーバー

Clioは、検証済みの台帳データに対するWebSocketまたはHTTP API呼び出しに最適化されたXRP Ledger APIサーバーです。

ClioサーバはP2Pネットワークに接続しません。代わりに、P2Pネットワークに接続されている指定された`rippled`サーバからデータを抽出します。APIコールを効率的に処理することで、ClioサーバーはP2Pモードで動作する`rippled`サーバーの負荷を軽減することができます。

Clioは、検証済みの過去の台帳とトランザクションデータをスペース効率の良いフォーマットで保存し、`rippled`に比べて最大4倍少ないスペースで保存できます。ClioはCassandraまたはScyllaDBを使用し、スケーラブルな読み取りスループットを可能にします。複数のClioサーバーが同じデータセットへのアクセスを共有できるため、冗長なデータストレージや計算を必要とせず、Clioサーバーの高可用性クラスタを構築することが可能です。

Clioは`rippled`サーバーにアクセスする必要があり、このサーバーはClioと同じマシン上で実行することも、別々に実行することも可能です。

Clioは完全な[HTTP / WebSocket API](http-websocket-apis.html)を提供していますが、デフォルトでは、検証済みのデータのみを返します。P2Pネットワークへのアクセスを必要とするリクエストに対しては、Clioは自動的にP2Pネットワーク上の`rippled`サーバにリクエストを転送し、レスポンスを返します。

## Clioサーバーを運用する理由

独自のClioサーバーを運用する理由には様々なものがありますが、その多くは、P2Pネットワークに接続している`rippled`サーバーの負荷軽減、メモリ使用量とストレージのオーバーヘッドの低減、水平スケーリングの容易さ、APIリクエストのスループットの向上などに集約されるのではないでしょうか。

* `rippled`サーバーの負荷軽減 - Clioサーバーはピアツーピア・ネットワークに接続しません。P2Pネットワークに接続されている1つ以上の信頼できる`rippled`サーバーから検証済みのデータを取得するためにgRPCを使用します。したがって、Clioサーバーはリクエストをより効率的に処理し、P2Pモードで動作する`rippled`サーバーの負荷を軽減することができます。

* メモリ使用量とストレージのオーバーヘッドの低減 - ClioはデータベースとしてCassandraを使用し、データをスペース効率の良いフォーマットで保存するため、`rippled`に比べて最大4倍少ないスペースで保存できます。

* 容易な水平スケーリング - 複数のClioサーバーが同じデータセットへのアクセスを共有できるため、Clioサーバーの高可用性クラスターを構築することが可能です。

* APIリクエストのスループットの向上 - Clioサーバーは、1つまたは複数の信頼できる`rippled`サーバーから検証済みのデータを抽出し、このデータを効率的に保存します。そのため、APIコールを効率的に処理することができ、結果としてスループットが向上し、場合によってはレイテンシーも低下します。


## Clioサーバーの仕組み

{{ include_svg("img/clio-basic-architecture.svg", "図1: Clioサーバーの仕組み") }}

Clioサーバーは、トランザクションメタデータ、アカウントステート、台帳ヘッダーなどの有効な台帳データを永続的なデータストアに保存します。

ClioサーバーはAPIリクエストを受信すると、これらのデータストアからデータを検索します。P2Pネットワークからのデータを必要とするリクエストについては、ClioサーバーはリクエストをP2Pサーバーに転送し、レスポンスをクライアントに返します。


## 関連項目

- [Clio ソースコード](https://github.com/XRPLF/clio)
- **チュートリアル:**
    - [UbuntuにClioサーバーをインストールする](install-clio-on-ubuntu.html)
