溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Swoole學習筆記(六):Hprose入門

發布時間:2020-07-25 15:23:46 來源:網絡 閱讀:649 作者:liuxu1992 欄目:web開發

1.什么是RPC
RPC是一種進程間的通訊方式,全稱是“遠程調用過程”。
當客戶端向服務器發出請求時,并不是至直接發送給目標服務器,而是發送給RPC Server,由RPC Server進行調度。
RPC提供與調用本地方法無差別的遠程調用方法。
Swoole學習筆記(六):Hprose入門

2.Hprose簡介
Hprose是一個輕量級的高性能跨語言RPC服務框架;提供同步,異步,寫成等多種調用方式。
Hprose的簡單架構如下圖所示
Swoole學習筆記(六):Hprose入門

3.Hprose具體實例
Hprose支持多種協議,以下展示多種協議中demo
1)Http協議
客戶端:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Client;

$client = Client::create('http://hprose.com/example/', false);

服務器:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Server;

function hello($name) {
    return "Hello $name!";
}

$server = new Server();
$server->addFunction('hello');
$server->start();

2)TCP協議
客戶端:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Client;

$client = Client::create('tcp://127.0.0.1:1234', false);

服務器:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Server;

function hello($name) {
    return "Hello $name!";
}

$server = new Server("tcp://0.0.0.0:1234");
$server->addFunction('hello');
$server->start();

3)創建UNIX Socket服務器
客戶端:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Client;

$client = Client::create('unix:/tmp/my.sock');

服務器:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Server;

function hello($name) {
    return "Hello $name!";
}

$server = new Server("unix:/tmp/my.sock");
$server->addFunction('hello');
$server->start();

4)異步的 WebSocket 客戶端
客戶端:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Client;

$client = Client::create('ws://127.0.0.1:8080/');

服務器:

<?php
require_once "vendor/autoload.php";

use Hprose\Swoole\Server;

function hello($name) {
    return "Hello $name!";
}

$server = new Server("ws://0.0.0.0:8088");
$server->addFunction('hello');
$server->start();

4.Hprose-Swoole
Hprose-Swoole支持swoole的on,set,listen方法
使用步驟如下:
1)創建Hprose服務對象
2)設置服務器參數及回調函數
3)在onStart回調中初始化框架
4)在onWorkerStart回調中初始化PDO等連接
5)注冊服務接口并啟動服務

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女