walkor 5 жил өмнө
parent
commit
ca926b7b8e
1 өөрчлөгдсөн 12 нэмэгдсэн , 214 устгасан
  1. 12 214
      README.md

+ 12 - 214
README.md

@@ -9,7 +9,7 @@
 ## What is it
 ## What is it
 Workerman is an asynchronous event-driven PHP framework with high performance to build fast and scalable network applications. 
 Workerman is an asynchronous event-driven PHP framework with high performance to build fast and scalable network applications. 
 Workerman supports HTTP, Websocket, SSL and other custom protocols. 
 Workerman supports HTTP, Websocket, SSL and other custom protocols. 
-Workerman supports libevent/event extension, [HHVM](https://github.com/facebook/hhvm) , [ReactPHP](https://github.com/reactphp/react).
+Workerman supports event extension.
 
 
 ## Requires
 ## Requires
 PHP 5.3 or Higher  
 PHP 5.3 or Higher  
@@ -72,12 +72,18 @@ $http_worker = new Worker("http://0.0.0.0:2345");
 $http_worker->count = 4;
 $http_worker->count = 4;
 
 
 // Emitted when data received
 // Emitted when data received
-$http_worker->onMessage = function($connection, $data)
+$http_worker->onMessage = function($connection, $request)
 {
 {
-    // $_GET, $_POST, $_COOKIE, $_SESSION, $_SERVER, $_FILES are available
-    var_dump($_GET, $_POST, $_COOKIE, $_SESSION, $_SERVER, $_FILES);
+    //$request->get();
+    //$request->post();
+    //$request->header();
+    //$request->cookie();
+    //$requset->session();
+    //$request->uri();
+    //$request->path();
+    //$request->method();
     // send data to client
     // send data to client
-    $connection->send("hello world \n");
+    $connection->send("hello world");
 };
 };
 
 
 // run all workers
 // run all workers
@@ -233,7 +239,7 @@ Worker::runAll();
 ```php
 ```php
 require_once __DIR__ . '/vendor/autoload.php';
 require_once __DIR__ . '/vendor/autoload.php';
 use Workerman\Worker;
 use Workerman\Worker;
-use Workerman\Lib\Timer;
+use Workerman\Timer;
 
 
 $task = new Worker();
 $task = new Worker();
 $task->onWorkerStart = function($task)
 $task->onWorkerStart = function($task)
@@ -280,214 +286,6 @@ $worker->onWorkerStart = function()
 Worker::runAll();
 Worker::runAll();
 ```
 ```
 
 
-### Async Mysql of ReactPHP
-```
-composer require react/mysql
-```
-
-```php
-<?php
-require_once __DIR__ . '/vendor/autoload.php';
-use Workerman\Worker;
-
-$worker = new Worker('tcp://0.0.0.0:6161');
-$worker->onWorkerStart = function() {
-    global $mysql;
-    $loop  = Worker::getEventLoop();
-    $mysql = new React\MySQL\Connection($loop, array(
-        'host'   => '127.0.0.1',
-        'dbname' => 'dbname',
-        'user'   => 'user',
-        'passwd' => 'passwd',
-    ));
-    $mysql->on('error', function($e){
-        echo $e;
-    });
-    $mysql->connect(function ($e) {
-        if($e) {
-            echo $e;
-        } else {
-            echo "connect success\n";
-        }
-    });
-};
-$worker->onMessage = function($connection, $data) {
-    global $mysql;
-    $mysql->query('show databases' /*trim($data)*/, function ($command, $mysql) use ($connection) {
-        if ($command->hasError()) {
-            $error = $command->getError();
-        } else {
-            $results = $command->resultRows;
-            $fields  = $command->resultFields;
-            $connection->send(json_encode($results));
-        }
-    });
-};
-Worker::runAll();
-```
-
-### Async Redis of ReactPHP
-```
-composer require clue/redis-react
-```
-
-```php
-<?php
-require_once __DIR__ . '/vendor/autoload.php';
-use Clue\React\Redis\Factory;
-use Clue\React\Redis\Client;
-use Workerman\Worker;
-
-$worker = new Worker('tcp://0.0.0.0:6161');
-
-$worker->onWorkerStart = function() {
-    global $factory;
-    $loop    = Worker::getEventLoop();
-    $factory = new Factory($loop);
-};
-
-$worker->onMessage = function($connection, $data) {
-    global $factory;
-    $factory->createClient('localhost:6379')->then(function (Client $client) use ($connection) {
-        $client->set('greeting', 'Hello world');
-        $client->append('greeting', '!');
-
-        $client->get('greeting')->then(function ($greeting) use ($connection){
-            // Hello world!
-            echo $greeting . PHP_EOL;
-            $connection->send($greeting);
-        });
-
-        $client->incr('invocation')->then(function ($n) use ($connection){
-            echo 'This is invocation #' . $n . PHP_EOL;
-            $connection->send($n);
-        });
-    });
-};
-
-Worker::runAll();
-```
-
-### Aysnc dns of ReactPHP
-```
-composer require react/dns
-```
-
-```php
-require_once __DIR__ . '/vendor/autoload.php';
-use Workerman\Worker;
-$worker = new Worker('tcp://0.0.0.0:6161');
-$worker->onWorkerStart = function() {
-    global   $dns;
-    // Get event-loop.
-    $loop    = Worker::getEventLoop();
-    $factory = new React\Dns\Resolver\Factory();
-    $dns     = $factory->create('8.8.8.8', $loop);
-};
-$worker->onMessage = function($connection, $host) {
-    global $dns;
-    $host = trim($host);
-    $dns->resolve($host)->then(function($ip) use($host, $connection) {
-        $connection->send("$host: $ip");
-    },function($e) use($host, $connection){
-        $connection->send("$host: {$e->getMessage()}");
-    });
-};
-
-Worker::runAll();
-```
-
-### Http client of ReactPHP
-```
-composer require react/http-client
-```
-
-```php
-<?php
-require_once __DIR__ . '/vendor/autoload.php';
-use Workerman\Worker;
-
-$worker = new Worker('tcp://0.0.0.0:6161');
-
-$worker->onMessage = function($connection, $host) {
-    $loop    = Worker::getEventLoop();
-    $client  = new \React\HttpClient\Client($loop);
-    $request = $client->request('GET', trim($host));
-    $request->on('error', function(Exception $e) use ($connection) {
-        $connection->send($e);
-    });
-    $request->on('response', function ($response) use ($connection) {
-        $response->on('data', function ($data) use ($connection) {
-            $connection->send($data);
-        });
-    });
-    $request->end();
-};
-
-Worker::runAll();
-```
-
-### ZMQ of ReactPHP
-```
-composer require react/zmq
-```
-
-```php
-<?php
-require_once __DIR__ . '/vendor/autoload.php';
-use Workerman\Worker;
-
-$worker = new Worker('text://0.0.0.0:6161');
-
-$worker->onWorkerStart = function() {
-    global   $pull;
-    $loop    = Worker::getEventLoop();
-    $context = new React\ZMQ\Context($loop);
-    $pull    = $context->getSocket(ZMQ::SOCKET_PULL);
-    $pull->bind('tcp://127.0.0.1:5555');
-
-    $pull->on('error', function ($e) {
-        var_dump($e->getMessage());
-    });
-
-    $pull->on('message', function ($msg) {
-        echo "Received: $msg\n";
-    });
-};
-
-Worker::runAll();
-```
-
-### STOMP of ReactPHP
-```
-composer require react/stomp
-```
-
-```php
-<?php
-require_once __DIR__ . '/vendor/autoload.php';
-use Workerman\Worker;
-
-$worker = new Worker('text://0.0.0.0:6161');
-
-$worker->onWorkerStart = function() {
-    global   $client;
-    $loop    = Worker::getEventLoop();
-    $factory = new React\Stomp\Factory($loop);
-    $client  = $factory->createClient(array('vhost' => '/', 'login' => 'guest', 'passcode' => 'guest'));
-
-    $client
-        ->connect()
-        ->then(function ($client) use ($loop) {
-            $client->subscribe('/topic/foo', function ($frame) {
-                echo "Message received: {$frame->body}\n";
-            });
-        });
-};
-
-Worker::runAll();
-```
-
 
 
 
 
 ## Available commands
 ## Available commands