TCP代理
作者:
零一间 | 来源:发表于
2017-10-10 16:42 被阅读417次<?php
/**
* mysql代理
* 将8306端口的tcp请求导入到远端的3306端口
*/
use Workerman\Worker;
use Workerman\Connection\AsyncTcpConnection;
require_once __DIR__ . '/Workerman/Autoloader.php';
//本机接收tcp请求协议和端口
$worker = new Worker('tcp://0.0.0.0:8306');
$worker->count = 20;
//远程tcp地址
define('DB_HOST', 'xxx.xxx.xxx.xxx');
//远程tcp端口
define('DB_PORT', '3306');
// tcp连接建立后
$worker->onConnect = function ($connection) {
// 建立3306端口的异步连接
$connection_to_3306 = new AsyncTcpConnection('tcp://' . DB_HOST . ':' . DB_PORT);
// 设置将当前客户端连接的数据导向3306端口的连接
$connection->pipe($connection_to_3306);
// 设置3306端口连接返回的数据导向客户端连接
$connection_to_3306->pipe($connection);
// 执行异步连接
$connection_to_3306->connect();
};
// 运行worker
Worker::runAll();
本文标题:TCP代理
本文链接:https://www.haomeiwen.com/subject/zgriextx.html
网友评论