ホームページ バックエンド開発 PHPの問題 php rpc フレームワークとは何ですか?

php rpc フレームワークとは何ですか?

Jun 25, 2019 am 11:23 AM
php RPC フレームワーク

php rpc フレームワークとは何ですか?

RPC フレームワークとは何ですか?

RPC を一言で表すと: リモート プロシージャ コール (リモート プロシージャ コール)

それでは、リモート コールとは何でしょうか。

通常、php では、localAdd(10, 20) のような関数メソッドなどのメソッドを呼び出します。localAdd メソッドの具体的な実装は、ユーザーによって定義されるか、 PHP ライブラリの関数、つまり、localAdd メソッドのコードがローカルに実装されている場合、これはローカル呼び出しです。

リモート呼び出しとは、呼び出されるメソッドの特定の実装が、実行中のプログラムに対してローカルではなく、他のリモートの場所にあることを意味します。

リモート呼び出しの原則

たとえば、A (クライアント) は、B (サーバー) が提供する RemoteAdd メソッドを呼び出します。

まず、接続を確立します。 A と B 間の TCP 接続;

次に、A は呼び出す必要があるメソッド名 (ここではremoteAdd) とメソッド パラメータ (10、20) をバイト ストリームにシリアル化し、送信します。

B は A が送信したものを受け入れます 次に、バイト ストリームが逆シリアル化されてターゲット メソッド名とメソッド パラメータが取得され、対応するメソッド呼び出し (おそらく localAdd) が実行され、結果 30 が返されます。リモート呼び出しの結果と出力 30。

RPC フレームワークは、先ほど述べた詳細をカプセル化し、ユーザーにシンプルでフレンドリーな API の使用を提供します。

リモート呼び出しの利点

分離: サーバーがメソッドを変更する必要がある場合、クライアントはそれをまったく認識せず、変更を加える必要がありません。メソッド 部門や会社を越えてコラボレーションする場合によく使用され、メソッドの提供者は通常「サービス公開」と呼ばれます。

RPC とソケットの違いは何ですか?

上記の簡単な説明から、RPC と Socket は似ていることがわかります。これらはすべてリモート メソッドを呼び出し、すべてクライアント/サーバー モードです。以前にも記事を書きました: ソケットについて詳しく話しましょう。それらの違いは何ですか?

RPC (リモート プロシージャ コール) はクライアント/サーバーを使用しますこのモードでは、2 つのプロセスが相互に通信できるようになります。ソケットは RPC でよく使用される通信方式の 1 つであり、RPC はソケットに基づいて実装されているため、ソケットよりも多くのネットワーク リソースとシステム リソースが必要になります。 RPC には、Socket に加えて、http、オペレーティング システム独自のパイプライン、およびリモート プログラムへの呼び出しを実装するその他のテクノロジなど、他の通信方法もあります。 Microsoft の Windows システムでは、RPC は通信に名前付きパイプを使用します。

RPC と REST の違いは何ですか?

RPC を理解すると、RPC がクライアント/サーバー モードであり、リモート メソッドを呼び出すことがわかります。REST も、私たちがよく知っている API 呼び出しプロトコル メソッドのセットです。また、クライアントに基づいています。 /server mode. はリモートメソッドを呼び出しますが、両者の違いは何でしょうか?

REST API と RPC は両方とも、関数をサーバー側のインターフェイスにカプセル化し、クライアント呼び出し用に公開します。ただし、REST API は HTTP プロトコルに基づいています。REST は http プロトコルで POST/ を渡すことに専念しています。 GET/PUT/DELETE などのメソッドと人間が判読できる URL を使用して http リクエストを提供します。 RPC は HTTP プロトコルに基づく必要はありません

したがって、2 つのバックエンド言語が相互に呼び出しを行う場合、RPC を使用することでより良いパフォーマンスを実現できます (HTTP ヘッダーなどの一連のものを排除します)。設定はもっと簡単になるはずです。フロントエンドが AJAX 経由でバックエンドを呼び出す場合は、REST API を使用することをお勧めします (とにかく HTTP のハードルを回避できないため)。

php で人気のある rpc フレームワークは何ですか?

PHP は世界で最高の言語ですが、PHP で人気のある RPC フレームワークは何ですか?

最初にそれらをリストしてみましょう:

phprpc、yar、thrift、gRPC、swoole、hprose

時間とエネルギーは限られているため、それらを 1 つずつ学習して使用することは不可能です。世界で最も一般的に使用されているものをいくつか選択して使用してください。 RPC の原理は同じなので、どちらもクライアント/サーバー モードですが、それぞれのフレームワークの使用方法が異なります。

以上がphp rpc フレームワークとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

See all articles