ADC

gRPC

NetScalerアプライアンスのgRPCは、軽量で高性能なオープンソースのユニバーサルリモートプロシージャコール(RPC)フレームワークです。このフレームワークは、どのオペレーティングシステムでも実行される複数の言語で動作するのに最適です。また、他のプロトコルと比較すると、gRPCはパフォーマンスとセキュリティが優れています。

NetScaler 用 gRPC が推奨される理由は次のとおりです。

  • データセンターとパブリック/プライベートクラウドインフラストラクチャ用の分散アプリケーションを構築します。
  • モバイル、ウェブ、またはクラウド用のクライアント/サーバー通信を提供します。
  • クラウドサービスとアプリケーションへのアクセス
  • マイクロサービスデプロイメント

NetScaler にgRPCが選ばれる理由

NetScalerのgRPCは、高性能でスケーラブルなAPIをサポートするために、HTTP/2を介して実装されています。テキストよりもバイナリを使用すると、ペイロードがコンパクトで効率的になります。NetScalerでは、HTTP/2リクエストは単一のTCP接続で多重化されるため、ネットワークリソースの使用量を損なうことなく、複数のメッセージを同時に送信できます。また、ヘッダー圧縮を使用してリクエストとレスポンスのサイズを小さくします。

gRPCは、クライアントがパラメータや戻り値の型をリモートで呼び出すための以下のタイプのサービスメソッドをサポートしています。

  1. 単項RPC。クライアントは gRPC サーバに 1 つのリクエストを送信し、1 つの応答を返します。

    例: rpc SayHello(HelloRequest) returns (HelloResponse);

  2. サーバーストリーミング RPC。クライアントは gRPC サーバーに単一のリクエストを送信し、ストリームレスポンスを取得します。

    例: rpc StreamingResponse(HelloRequest) returns (HelloResponse);

  3. クライアントストリーミング RPC。クライアントは一連のメッセージを送信し、サーバーが応答を読み取って返すのを待ちます。

    例: rpc IntroduceYourself(stream HelloRequest) returns (HelloResponse)

  4. 双方向ストリーミング RPC。クライアントとサーバーの両方が、読み取り/書き込みストリームを使用してメッセージのストリームを送信します。2 つのストリームは独立して動作します。

    例: rpc ChatSession (stream HelloRequest) returns (stream HelloResponse)

NetScalerは、gRPCエンドポイントを使用するサービスで次の機能をサポートしています。

  • 負荷分散
  • コンテンツの切り替え
  • Web アプリケーションファイアウォール、認証などの安全なエンドポイントサービス。
  • ポリシー設定
  • 統計とロギング
  • コンテンツの書き換え、コンテンツのフィルタリング
  • レイヤー 4 とレイヤー 7 の最適化、TLS オファリング
  • プロトコル変換用ゲートウェイソリューション
gRPC