update socket
This commit is contained in:
		
							parent
							
								
									d335ad52c4
								
							
						
					
					
						commit
						3c68142234
					
				|  | @ -32,6 +32,7 @@ services: | ||||||
|       - mysql |       - mysql | ||||||
|     ports: |     ports: | ||||||
|       - 8000:8000 |       - 8000:8000 | ||||||
|  |       - 8001:8001 | ||||||
|     networks: |     networks: | ||||||
|       - laravel |       - laravel | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -57,7 +57,7 @@ VITE_PUSHER_PORT="${PUSHER_PORT}" | ||||||
| VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" | VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" | ||||||
| VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" | VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" | ||||||
| 
 | 
 | ||||||
| RABBITMQ_HOST=192.168.56.222 | RABBITMQ_HOST='192.168.56.222' | ||||||
| RABBITMQ_PORT=5672 | RABBITMQ_PORT=5672 | ||||||
| RABBITMQ_USER=rabbit1 | RABBITMQ_USER=rabbit1 | ||||||
| RABBITMQ_PASSWORD=rabbit@123 | RABBITMQ_PASSWORD=rabbit@123 | ||||||
|  |  | ||||||
|  | @ -0,0 +1,40 @@ | ||||||
|  | <?php | ||||||
|  | 
 | ||||||
|  | namespace App\Console\Commands; | ||||||
|  | 
 | ||||||
|  | use Illuminate\Console\Command; | ||||||
|  | 
 | ||||||
|  | class SendSocket extends Command | ||||||
|  | { | ||||||
|  |     /** | ||||||
|  |      * The name and signature of the console command. | ||||||
|  |      * | ||||||
|  |      * @var string | ||||||
|  |      */ | ||||||
|  |     protected $signature = 'send-socket {username} {message?}'; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * The console command description. | ||||||
|  |      * | ||||||
|  |      * @var string | ||||||
|  |      */ | ||||||
|  |     protected $description = 'Command description'; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Execute the console command. | ||||||
|  |      * | ||||||
|  |      * @return int | ||||||
|  |      */ | ||||||
|  |     public function handle() | ||||||
|  |     { | ||||||
|  |         $client = new \WebSocket\Client("ws://192.168.56.101:2346/"); | ||||||
|  |         $client->text( | ||||||
|  |             json_encode([ | ||||||
|  |                 'username' => $this->argument('username'), | ||||||
|  |             ]) | ||||||
|  |         ); | ||||||
|  |         $client->text($this->argument('message')); | ||||||
|  |         $client->receive(); | ||||||
|  |         $client->close(); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | @ -0,0 +1,48 @@ | ||||||
|  | <?php | ||||||
|  | 
 | ||||||
|  | namespace App\Jobs; | ||||||
|  | 
 | ||||||
|  | use Illuminate\Bus\Queueable; | ||||||
|  | use Illuminate\Contracts\Queue\ShouldQueue; | ||||||
|  | use Illuminate\Foundation\Bus\Dispatchable; | ||||||
|  | use Illuminate\Queue\InteractsWithQueue; | ||||||
|  | use Illuminate\Queue\SerializesModels; | ||||||
|  | use Illuminate\Support\Facades\Artisan; | ||||||
|  | 
 | ||||||
|  | class ProcessJob implements ShouldQueue | ||||||
|  | { | ||||||
|  |     use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; | ||||||
|  | 
 | ||||||
|  |     protected $process; | ||||||
|  |     /** | ||||||
|  |      * Create a new job instance. | ||||||
|  |      * | ||||||
|  |      * @return void | ||||||
|  |      */ | ||||||
|  |     public function __construct() | ||||||
|  |     { | ||||||
|  |         $process = 'process' . rand(1, 3); | ||||||
|  |         $this->process = $process; | ||||||
|  |         $this->onQueue($process); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Execute the job. | ||||||
|  |      * | ||||||
|  |      * @return void | ||||||
|  |      */ | ||||||
|  |     public function handle() | ||||||
|  |     { | ||||||
|  |         $client = new \WebSocket\Client("ws://192.168.56.101:2346/"); | ||||||
|  |         $client->text( | ||||||
|  |             json_encode([ | ||||||
|  |                 'username' => 'kai.1', | ||||||
|  |             ]) | ||||||
|  |         ); | ||||||
|  |         $client->text( | ||||||
|  |             $this->process . ': ' . rand() | ||||||
|  |         ); | ||||||
|  |         $client->receive(); | ||||||
|  |         $client->close(); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | @ -12,6 +12,7 @@ | ||||||
|         "laravel/sanctum": "^3.0", |         "laravel/sanctum": "^3.0", | ||||||
|         "laravel/tinker": "^2.7", |         "laravel/tinker": "^2.7", | ||||||
|         "predis/predis": "^2.2", |         "predis/predis": "^2.2", | ||||||
|  |         "textalk/websocket": "^1.5", | ||||||
|         "vladimir-yuldashev/laravel-queue-rabbitmq": "^13.3" |         "vladimir-yuldashev/laravel-queue-rabbitmq": "^13.3" | ||||||
|     }, |     }, | ||||||
|     "require-dev": { |     "require-dev": { | ||||||
|  |  | ||||||
|  | @ -4,7 +4,7 @@ | ||||||
|         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", |         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", | ||||||
|         "This file is @generated automatically" |         "This file is @generated automatically" | ||||||
|     ], |     ], | ||||||
|     "content-hash": "d708be9c051b0e2eb167a1f2a0295b3a", |     "content-hash": "97efdeb4e149ae370ca39b1992647562", | ||||||
|     "packages": [ |     "packages": [ | ||||||
|         { |         { | ||||||
|             "name": "brick/math", |             "name": "brick/math", | ||||||
|  | @ -5825,6 +5825,55 @@ | ||||||
|             ], |             ], | ||||||
|             "time": "2023-12-28T19:16:56+00:00" |             "time": "2023-12-28T19:16:56+00:00" | ||||||
|         }, |         }, | ||||||
|  |         { | ||||||
|  |             "name": "textalk/websocket", | ||||||
|  |             "version": "1.5.8", | ||||||
|  |             "source": { | ||||||
|  |                 "type": "git", | ||||||
|  |                 "url": "https://github.com/Textalk/websocket-php.git", | ||||||
|  |                 "reference": "d05dbaa97500176447ffb1f1800573f23085ab13" | ||||||
|  |             }, | ||||||
|  |             "dist": { | ||||||
|  |                 "type": "zip", | ||||||
|  |                 "url": "https://api.github.com/repos/Textalk/websocket-php/zipball/d05dbaa97500176447ffb1f1800573f23085ab13", | ||||||
|  |                 "reference": "d05dbaa97500176447ffb1f1800573f23085ab13", | ||||||
|  |                 "shasum": "" | ||||||
|  |             }, | ||||||
|  |             "require": { | ||||||
|  |                 "php": "^7.2 | ^8.0", | ||||||
|  |                 "psr/log": "^1 | ^2 | ^3" | ||||||
|  |             }, | ||||||
|  |             "require-dev": { | ||||||
|  |                 "php-coveralls/php-coveralls": "^2.0", | ||||||
|  |                 "phpunit/phpunit": "^8.0|^9.0", | ||||||
|  |                 "squizlabs/php_codesniffer": "^3.5" | ||||||
|  |             }, | ||||||
|  |             "type": "library", | ||||||
|  |             "autoload": { | ||||||
|  |                 "psr-4": { | ||||||
|  |                     "WebSocket\\": "lib" | ||||||
|  |                 } | ||||||
|  |             }, | ||||||
|  |             "notification-url": "https://packagist.org/downloads/", | ||||||
|  |             "license": [ | ||||||
|  |                 "ISC" | ||||||
|  |             ], | ||||||
|  |             "authors": [ | ||||||
|  |                 { | ||||||
|  |                     "name": "Fredrik Liljegren" | ||||||
|  |                 }, | ||||||
|  |                 { | ||||||
|  |                     "name": "Sören Jensen", | ||||||
|  |                     "email": "soren@abicart.se" | ||||||
|  |                 } | ||||||
|  |             ], | ||||||
|  |             "description": "WebSocket client and server", | ||||||
|  |             "support": { | ||||||
|  |                 "issues": "https://github.com/Textalk/websocket-php/issues", | ||||||
|  |                 "source": "https://github.com/Textalk/websocket-php/tree/1.5.8" | ||||||
|  |             }, | ||||||
|  |             "time": "2022-04-26T06:28:24+00:00" | ||||||
|  |         }, | ||||||
|         { |         { | ||||||
|             "name": "tijsverkoyen/css-to-inline-styles", |             "name": "tijsverkoyen/css-to-inline-styles", | ||||||
|             "version": "v2.2.7", |             "version": "v2.2.7", | ||||||
|  | @ -5880,23 +5929,23 @@ | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "vladimir-yuldashev/laravel-queue-rabbitmq", |             "name": "vladimir-yuldashev/laravel-queue-rabbitmq", | ||||||
|             "version": "v13.3.4", |             "version": "v13.3.5", | ||||||
|             "source": { |             "source": { | ||||||
|                 "type": "git", |                 "type": "git", | ||||||
|                 "url": "https://github.com/vyuldashev/laravel-queue-rabbitmq.git", |                 "url": "https://github.com/vyuldashev/laravel-queue-rabbitmq.git", | ||||||
|                 "reference": "03e10511426a00758129bd695f9a99c4a5470461" |                 "reference": "2fda5722bf2b3d77e448aabcccce8d88305bcdea" | ||||||
|             }, |             }, | ||||||
|             "dist": { |             "dist": { | ||||||
|                 "type": "zip", |                 "type": "zip", | ||||||
|                 "url": "https://api.github.com/repos/vyuldashev/laravel-queue-rabbitmq/zipball/03e10511426a00758129bd695f9a99c4a5470461", |                 "url": "https://api.github.com/repos/vyuldashev/laravel-queue-rabbitmq/zipball/2fda5722bf2b3d77e448aabcccce8d88305bcdea", | ||||||
|                 "reference": "03e10511426a00758129bd695f9a99c4a5470461", |                 "reference": "2fda5722bf2b3d77e448aabcccce8d88305bcdea", | ||||||
|                 "shasum": "" |                 "shasum": "" | ||||||
|             }, |             }, | ||||||
|             "require": { |             "require": { | ||||||
|                 "ext-json": "*", |                 "ext-json": "*", | ||||||
|                 "illuminate/queue": "^9.0|^10.0", |                 "illuminate/queue": "^9.0|^10.0", | ||||||
|                 "php": "^8.0", |                 "php": "^8.0", | ||||||
|                 "php-amqplib/php-amqplib": "^v3.5.2" |                 "php-amqplib/php-amqplib": "^v3.6" | ||||||
|             }, |             }, | ||||||
|             "require-dev": { |             "require-dev": { | ||||||
|                 "laravel/framework": "^9.0|^10.0", |                 "laravel/framework": "^9.0|^10.0", | ||||||
|  | @ -5938,9 +5987,9 @@ | ||||||
|             "description": "RabbitMQ driver for Laravel Queue. Supports Laravel Horizon.", |             "description": "RabbitMQ driver for Laravel Queue. Supports Laravel Horizon.", | ||||||
|             "support": { |             "support": { | ||||||
|                 "issues": "https://github.com/vyuldashev/laravel-queue-rabbitmq/issues", |                 "issues": "https://github.com/vyuldashev/laravel-queue-rabbitmq/issues", | ||||||
|                 "source": "https://github.com/vyuldashev/laravel-queue-rabbitmq/tree/v13.3.4" |                 "source": "https://github.com/vyuldashev/laravel-queue-rabbitmq/tree/v13.3.5" | ||||||
|             }, |             }, | ||||||
|             "time": "2024-01-10T17:43:56+00:00" |             "time": "2024-01-26T16:20:56+00:00" | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|             "name": "vlucas/phpdotenv", |             "name": "vlucas/phpdotenv", | ||||||
|  |  | ||||||
|  | @ -13,7 +13,7 @@ return [ | ||||||
|     | setting is null, Horizon will reside under the same domain as the |     | setting is null, Horizon will reside under the same domain as the | ||||||
|     | application. Otherwise, this value will serve as the subdomain. |     | application. Otherwise, this value will serve as the subdomain. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'domain' => env('HORIZON_DOMAIN'), |     'domain' => env('HORIZON_DOMAIN'), | ||||||
| 
 | 
 | ||||||
|  | @ -26,7 +26,7 @@ return [ | ||||||
|     | to change this path to anything you like. Note that the URI will not |     | to change this path to anything you like. Note that the URI will not | ||||||
|     | affect the paths of its internal API that aren't exposed to users. |     | affect the paths of its internal API that aren't exposed to users. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'path' => env('HORIZON_PATH', 'horizon'), |     'path' => env('HORIZON_PATH', 'horizon'), | ||||||
| 
 | 
 | ||||||
|  | @ -39,7 +39,7 @@ return [ | ||||||
|     | meta information required for it to function. It includes the list |     | meta information required for it to function. It includes the list | ||||||
|     | of supervisors, failed jobs, job metrics, and other information. |     | of supervisors, failed jobs, job metrics, and other information. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'use' => 'default', |     'use' => 'default', | ||||||
| 
 | 
 | ||||||
|  | @ -52,11 +52,11 @@ return [ | ||||||
|     | may modify the prefix when you are running multiple installations |     | may modify the prefix when you are running multiple installations | ||||||
|     | of Horizon on the same server so that they don't have problems. |     | of Horizon on the same server so that they don't have problems. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'prefix' => env( |     'prefix' => env( | ||||||
|         'HORIZON_PREFIX', |         'HORIZON_PREFIX', | ||||||
|         Str::slug(env('APP_NAME', 'laravel'), '_').'_horizon:' |         Str::slug(env('APP_NAME', 'laravel'), '_') . '_horizon:' | ||||||
|     ), |     ), | ||||||
| 
 | 
 | ||||||
|     /* |     /* | ||||||
|  | @ -68,7 +68,7 @@ return [ | ||||||
|     | the chance to add your own middleware to this list or change any of |     | the chance to add your own middleware to this list or change any of | ||||||
|     | the existing middleware. Or, you can simply stick with this list. |     | the existing middleware. Or, you can simply stick with this list. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'middleware' => ['web'], |     'middleware' => ['web'], | ||||||
| 
 | 
 | ||||||
|  | @ -81,7 +81,7 @@ return [ | ||||||
|     | will be fired. Every connection / queue combination may have its |     | will be fired. Every connection / queue combination may have its | ||||||
|     | own, unique threshold (in seconds) before this event is fired. |     | own, unique threshold (in seconds) before this event is fired. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'waits' => [ |     'waits' => [ | ||||||
|         'redis:default' => 60, |         'redis:default' => 60, | ||||||
|  | @ -96,7 +96,7 @@ return [ | ||||||
|     | persist the recent and failed jobs. Typically, recent jobs are kept |     | persist the recent and failed jobs. Typically, recent jobs are kept | ||||||
|     | for one hour while all failed jobs are stored for an entire week. |     | for one hour while all failed jobs are stored for an entire week. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'trim' => [ |     'trim' => [ | ||||||
|         'recent' => 60, |         'recent' => 60, | ||||||
|  | @ -116,7 +116,7 @@ return [ | ||||||
|     | of completed jobs within the Horizon dashboard. This setting may be |     | of completed jobs within the Horizon dashboard. This setting may be | ||||||
|     | used to fully remove any noisy jobs from the completed jobs list. |     | used to fully remove any noisy jobs from the completed jobs list. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'silenced' => [ |     'silenced' => [ | ||||||
|         // App\Jobs\ExampleJob::class,
 |         // App\Jobs\ExampleJob::class,
 | ||||||
|  | @ -131,7 +131,7 @@ return [ | ||||||
|     | the metrics graph. This will get used in combination with Horizon's |     | the metrics graph. This will get used in combination with Horizon's | ||||||
|     | `horizon:snapshot` schedule to define how long to retain metrics. |     | `horizon:snapshot` schedule to define how long to retain metrics. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'metrics' => [ |     'metrics' => [ | ||||||
|         'trim_snapshots' => [ |         'trim_snapshots' => [ | ||||||
|  | @ -151,7 +151,7 @@ return [ | ||||||
|     | allowing a new instance of Horizon to start while the last |     | allowing a new instance of Horizon to start while the last | ||||||
|     | instance will continue to terminate each of its workers. |     | instance will continue to terminate each of its workers. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'fast_termination' => false, |     'fast_termination' => false, | ||||||
| 
 | 
 | ||||||
|  | @ -164,7 +164,7 @@ return [ | ||||||
|     | supervisor may consume before it is terminated and restarted. For |     | supervisor may consume before it is terminated and restarted. For | ||||||
|     | configuring these limits on your workers, see the next section. |     | configuring these limits on your workers, see the next section. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'memory_limit' => 64, |     'memory_limit' => 64, | ||||||
| 
 | 
 | ||||||
|  | @ -177,15 +177,18 @@ return [ | ||||||
|     | in all environments. These supervisors and settings handle all your |     | in all environments. These supervisors and settings handle all your | ||||||
|     | queued jobs and will be provisioned by Horizon during deployment. |     | queued jobs and will be provisioned by Horizon during deployment. | ||||||
|     | |     | | ||||||
|     */ |      */ | ||||||
| 
 | 
 | ||||||
|     'defaults' => [ |     'defaults' => [ | ||||||
|         'supervisor-1' => [ |         'supervisor-1' => [ | ||||||
|             'connection' => env('QUEUE_CONNECTION'), |             'connection' => env('QUEUE_CONNECTION'), | ||||||
|             'queue' => json_decode(env('HORIZON_QUEUES','["default"]'), true), |             'queue' => json_decode( | ||||||
|  |                 env('HORIZON_QUEUES', '["default"]'), | ||||||
|  |                 true | ||||||
|  |             ), | ||||||
|             'balance' => 'auto', |             'balance' => 'auto', | ||||||
|             'autoScalingStrategy' => 'time', |             'autoScalingStrategy' => 'time', | ||||||
|             'maxProcesses' => 1, |             'maxProcesses' => 3, | ||||||
|             'maxTime' => 0, |             'maxTime' => 0, | ||||||
|             'maxJobs' => 0, |             'maxJobs' => 0, | ||||||
|             'memory' => 128, |             'memory' => 128, | ||||||
|  |  | ||||||
|  | @ -32,7 +32,7 @@ return [ | ||||||
| 
 | 
 | ||||||
|         'sync' => [ |         'sync' => [ | ||||||
|             'driver' => 'sync', |             'driver' => 'sync', | ||||||
|          ], |         ], | ||||||
| 
 | 
 | ||||||
|         'database' => [ |         'database' => [ | ||||||
|             'driver' => 'database', |             'driver' => 'database', | ||||||
|  | @ -40,7 +40,7 @@ return [ | ||||||
|             'queue' => 'default', |             'queue' => 'default', | ||||||
|             'retry_after' => 90, |             'retry_after' => 90, | ||||||
|             'after_commit' => false, |             'after_commit' => false, | ||||||
|          ], |         ], | ||||||
| 
 | 
 | ||||||
|         'beanstalkd' => [ |         'beanstalkd' => [ | ||||||
|             'driver' => 'beanstalkd', |             'driver' => 'beanstalkd', | ||||||
|  | @ -49,7 +49,7 @@ return [ | ||||||
|             'retry_after' => 90, |             'retry_after' => 90, | ||||||
|             'block_for' => 0, |             'block_for' => 0, | ||||||
|             'after_commit' => false, |             'after_commit' => false, | ||||||
|          ], |         ], | ||||||
| 
 | 
 | ||||||
|         'sqs' => [ |         'sqs' => [ | ||||||
|             'driver' => 'sqs', |             'driver' => 'sqs', | ||||||
|  | @ -60,7 +60,7 @@ return [ | ||||||
|             'suffix' => env('SQS_SUFFIX'), |             'suffix' => env('SQS_SUFFIX'), | ||||||
|             'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), |             'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), | ||||||
|             'after_commit' => false, |             'after_commit' => false, | ||||||
|          ], |         ], | ||||||
| 
 | 
 | ||||||
|         'redis' => [ |         'redis' => [ | ||||||
|             'driver' => 'redis', |             'driver' => 'redis', | ||||||
|  | @ -69,11 +69,11 @@ return [ | ||||||
|             'retry_after' => 90, |             'retry_after' => 90, | ||||||
|             'block_for' => null, |             'block_for' => null, | ||||||
|             'after_commit' => false, |             'after_commit' => false, | ||||||
|          ], |         ], | ||||||
| 
 | 
 | ||||||
|         'rabbitmq' => [ |         'rabbitmq' => [ | ||||||
|             'driver' => 'rabbitmq', |             'driver' => 'rabbitmq', | ||||||
|             'worker' => env('RABBITMQ_WORKER', 'default'), |             'worker' => env('RABBITMQ_WORKER', 'horizon'), | ||||||
|             'hosts' => [ |             'hosts' => [ | ||||||
|                 [ |                 [ | ||||||
|                     'host' => env('RABBITMQ_HOST', '127.0.0.1'), |                     'host' => env('RABBITMQ_HOST', '127.0.0.1'), | ||||||
|  | @ -81,17 +81,11 @@ return [ | ||||||
|                     'user' => env('RABBITMQ_USER', 'guest'), |                     'user' => env('RABBITMQ_USER', 'guest'), | ||||||
|                     'password' => env('RABBITMQ_PASSWORD', 'guest'), |                     'password' => env('RABBITMQ_PASSWORD', 'guest'), | ||||||
|                     'vhost' => env('RABBITMQ_VHOST', '/'), |                     'vhost' => env('RABBITMQ_VHOST', '/'), | ||||||
|                  ], |                 ], | ||||||
|              ], |             ], | ||||||
|             'options' => [ |         ], | ||||||
|                 'queue' => [ |  | ||||||
|                     'prioritize_delayed' => false, |  | ||||||
|                     'queue_max_priority' => 10, |  | ||||||
|                  ], |  | ||||||
|              ], |  | ||||||
|          ], |  | ||||||
| 
 | 
 | ||||||
|      ], |     ], | ||||||
| 
 | 
 | ||||||
|     /* |     /* | ||||||
|     |-------------------------------------------------------------------------- |     |-------------------------------------------------------------------------- | ||||||
|  | @ -108,6 +102,6 @@ return [ | ||||||
|         'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), |         'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), | ||||||
|         'database' => env('DB_CONNECTION', 'mysql'), |         'database' => env('DB_CONNECTION', 'mysql'), | ||||||
|         'table' => 'failed_jobs', |         'table' => 'failed_jobs', | ||||||
|      ], |     ], | ||||||
| 
 | 
 | ||||||
|  ]; | ]; | ||||||
|  |  | ||||||
|  | @ -0,0 +1,36 @@ | ||||||
|  | <?php | ||||||
|  | 
 | ||||||
|  | use Illuminate\Database\Migrations\Migration; | ||||||
|  | use Illuminate\Database\Schema\Blueprint; | ||||||
|  | use Illuminate\Support\Facades\Schema; | ||||||
|  | 
 | ||||||
|  | return new class extends Migration | ||||||
|  | { | ||||||
|  |     /** | ||||||
|  |      * Run the migrations. | ||||||
|  |      * | ||||||
|  |      * @return void | ||||||
|  |      */ | ||||||
|  |     public function up() | ||||||
|  |     { | ||||||
|  |         Schema::create('jobs', function (Blueprint $table) { | ||||||
|  |             $table->bigIncrements('id'); | ||||||
|  |             $table->string('queue')->index(); | ||||||
|  |             $table->longText('payload'); | ||||||
|  |             $table->unsignedTinyInteger('attempts'); | ||||||
|  |             $table->unsignedInteger('reserved_at')->nullable(); | ||||||
|  |             $table->unsignedInteger('available_at'); | ||||||
|  |             $table->unsignedInteger('created_at'); | ||||||
|  |         }); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Reverse the migrations. | ||||||
|  |      * | ||||||
|  |      * @return void | ||||||
|  |      */ | ||||||
|  |     public function down() | ||||||
|  |     { | ||||||
|  |         Schema::dropIfExists('jobs'); | ||||||
|  |     } | ||||||
|  | }; | ||||||
|  | @ -0,0 +1,39 @@ | ||||||
|  | <?php | ||||||
|  | 
 | ||||||
|  | use Illuminate\Database\Migrations\Migration; | ||||||
|  | use Illuminate\Database\Schema\Blueprint; | ||||||
|  | use Illuminate\Support\Facades\Schema; | ||||||
|  | 
 | ||||||
|  | return new class extends Migration | ||||||
|  | { | ||||||
|  |     /** | ||||||
|  |      * Run the migrations. | ||||||
|  |      * | ||||||
|  |      * @return void | ||||||
|  |      */ | ||||||
|  |     public function up() | ||||||
|  |     { | ||||||
|  |         Schema::create('job_batches', function (Blueprint $table) { | ||||||
|  |             $table->string('id')->primary(); | ||||||
|  |             $table->string('name'); | ||||||
|  |             $table->integer('total_jobs'); | ||||||
|  |             $table->integer('pending_jobs'); | ||||||
|  |             $table->integer('failed_jobs'); | ||||||
|  |             $table->longText('failed_job_ids'); | ||||||
|  |             $table->mediumText('options')->nullable(); | ||||||
|  |             $table->integer('cancelled_at')->nullable(); | ||||||
|  |             $table->integer('created_at'); | ||||||
|  |             $table->integer('finished_at')->nullable(); | ||||||
|  |         }); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Reverse the migrations. | ||||||
|  |      * | ||||||
|  |      * @return void | ||||||
|  |      */ | ||||||
|  |     public function down() | ||||||
|  |     { | ||||||
|  |         Schema::dropIfExists('job_batches'); | ||||||
|  |     } | ||||||
|  | }; | ||||||
|  | @ -0,0 +1,68 @@ | ||||||
|  | <!DOCTYPE html> | ||||||
|  | <html lang="en"> | ||||||
|  | <head> | ||||||
|  |     <meta charset="UTF-8"> | ||||||
|  |     <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||||||
|  |     <title>Socket Client</title> | ||||||
|  | </head> | ||||||
|  | <body> | ||||||
|  | 
 | ||||||
|  |     <h1>Socket Client</h1> | ||||||
|  | 
 | ||||||
|  |     <div id="messages"></div> | ||||||
|  | 
 | ||||||
|  |     <script> | ||||||
|  |         // Create a WebSocket instance
 | ||||||
|  |         const socket = new WebSocket('ws://192.168.56.101:2346'); | ||||||
|  | 
 | ||||||
|  |         socket.onopen = function (event) { | ||||||
|  |             console.log("Connected to the server"); | ||||||
|  |             console.log({socket, event}); | ||||||
|  | 
 | ||||||
|  |             // Send an initial payload upon connection
 | ||||||
|  |             const username = 'kai.1'; | ||||||
|  |             const payload = { | ||||||
|  |                 username: username | ||||||
|  |             }; | ||||||
|  |             socket.send(JSON.stringify(payload)); | ||||||
|  |         }; | ||||||
|  | 
 | ||||||
|  |         socket.onmessage = function (event) { | ||||||
|  |             console.log("Received message from the server:", event.data); | ||||||
|  |         }; | ||||||
|  | 
 | ||||||
|  |         // Event handler for when the connection is opened
 | ||||||
|  |         socket.addEventListener('open', (event) => { | ||||||
|  |             console.log('Connected to the server'); | ||||||
|  |         }); | ||||||
|  | 
 | ||||||
|  |         // Event handler for when a message is received from the server
 | ||||||
|  |         socket.addEventListener('message', (event) => { | ||||||
|  |             // Display the received message on the HTML page
 | ||||||
|  |             const messagesDiv = document.getElementById('messages'); | ||||||
|  |             messagesDiv.innerHTML += '<p>' + event.data + '</p>'; | ||||||
|  |         }); | ||||||
|  | 
 | ||||||
|  |         // Event handler for errors
 | ||||||
|  |         socket.addEventListener('error', (event) => { | ||||||
|  |             console.error('Error occurred:', event); | ||||||
|  |         }); | ||||||
|  | 
 | ||||||
|  |         // Event handler for when the connection is closed
 | ||||||
|  |         socket.addEventListener('close', (event) => { | ||||||
|  |             console.log('Connection closed:', event); | ||||||
|  |         }); | ||||||
|  | 
 | ||||||
|  |         // Function to send a message to the server
 | ||||||
|  |         function sendMessage() { | ||||||
|  |             const message = prompt('Enter a message to send:'); | ||||||
|  |             if (message) { | ||||||
|  |                 socket.send(message); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     </script> | ||||||
|  | 
 | ||||||
|  |     <button onclick="sendMessage()">Send Message</button> | ||||||
|  | 
 | ||||||
|  | </body> | ||||||
|  | </html> | ||||||
|  | @ -16,3 +16,5 @@ use Illuminate\Support\Facades\Route; | ||||||
| Route::get('/', function () { | Route::get('/', function () { | ||||||
|     return view('welcome'); |     return view('welcome'); | ||||||
| }); | }); | ||||||
|  | 
 | ||||||
|  | Route::view('/socket', 'socket'); | ||||||
|  |  | ||||||
|  | @ -0,0 +1 @@ | ||||||
|  | Subproject commit 14099e070baf75f620f7fad7e261e5de75460692 | ||||||
|  | @ -0,0 +1,317 @@ | ||||||
|  | 2024-01-26 06:15:20 pid:3994 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:34:24 pid:3994 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:34:24 pid:3994 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:34:24 pid:4662 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:35:25 pid:4662 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:35:25 pid:4662 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:35:26 pid:4680 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:38:57 pid:4680 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:38:57 pid:4680 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:38:58 pid:4716 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:44:06 pid:4716 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:44:06 pid:4716 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:44:07 pid:4759 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:48:59 pid:4759 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:48:59 pid:4759 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:49:27 pid:4824 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:49:53 pid:4824 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:49:53 pid:4824 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:49:54 pid:4839 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:51:18 pid:4839 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:51:18 pid:4839 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:51:18 pid:4856 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:56:19 pid:4856 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:56:19 pid:4856 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:56:20 pid:4892 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:56:23 pid:4893 Error: Object of class Workerman\Connection\TcpConnection could not be converted to string in /root/bitnami-laravel-demo/workerman/socket.php:27 | ||||||
|  | Stack trace: | ||||||
|  | #0 /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php(719): {closure}() | ||||||
|  | #1 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(452): Workerman\Connection\TcpConnection->baseRead() | ||||||
|  | #2 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(384): Workerman\Events\Select->safeCall() | ||||||
|  | #3 /root/bitnami-laravel-demo/workerman/src/Worker.php(1641): Workerman\Events\Select->run() | ||||||
|  | #4 /root/bitnami-laravel-demo/workerman/src/Worker.php(1444): Workerman\Worker::forkOneWorkerForLinux() | ||||||
|  | #5 /root/bitnami-laravel-demo/workerman/src/Worker.php(1418): Workerman\Worker::forkWorkersForLinux() | ||||||
|  | #6 /root/bitnami-laravel-demo/workerman/src/Worker.php(578): Workerman\Worker::forkWorkers() | ||||||
|  | #7 /root/bitnami-laravel-demo/workerman/socket.php(41): Workerman\Worker::runAll() | ||||||
|  | #8 {main} | ||||||
|  | 2024-01-26 06:56:23 pid:4892 worker[none:4893] exit with status 64000 | ||||||
|  | 2024-01-26 06:56:40 pid:4892 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:56:40 pid:4892 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:56:41 pid:4910 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:56:42 pid:4911 Error: Object of class Workerman\Connection\TcpConnection could not be converted to string in /root/bitnami-laravel-demo/workerman/socket.php:27 | ||||||
|  | Stack trace: | ||||||
|  | #0 /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php(719): {closure}() | ||||||
|  | #1 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(452): Workerman\Connection\TcpConnection->baseRead() | ||||||
|  | #2 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(384): Workerman\Events\Select->safeCall() | ||||||
|  | #3 /root/bitnami-laravel-demo/workerman/src/Worker.php(1641): Workerman\Events\Select->run() | ||||||
|  | #4 /root/bitnami-laravel-demo/workerman/src/Worker.php(1444): Workerman\Worker::forkOneWorkerForLinux() | ||||||
|  | #5 /root/bitnami-laravel-demo/workerman/src/Worker.php(1418): Workerman\Worker::forkWorkersForLinux() | ||||||
|  | #6 /root/bitnami-laravel-demo/workerman/src/Worker.php(578): Workerman\Worker::forkWorkers() | ||||||
|  | #7 /root/bitnami-laravel-demo/workerman/socket.php(41): Workerman\Worker::runAll() | ||||||
|  | #8 {main} | ||||||
|  | 2024-01-26 06:56:42 pid:4910 worker[none:4911] exit with status 64000 | ||||||
|  | 2024-01-26 06:57:08 pid:4910 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:57:08 pid:4910 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:57:09 pid:4928 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:57:37 pid:4928 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:57:37 pid:4928 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:57:38 pid:4947 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:58:04 pid:4947 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:58:04 pid:4947 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:58:05 pid:4972 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:58:25 pid:4972 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:58:25 pid:4972 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:58:25 pid:4989 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 06:58:49 pid:4989 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 06:58:49 pid:4989 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 06:58:54 pid:5035 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:01:40 pid:5035 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:01:40 pid:5035 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:01:41 pid:5080 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:02:27 pid:5080 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:02:27 pid:5080 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:02:45 pid:5140 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:03:12 pid:5140 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:03:12 pid:5140 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:09:40 pid:5278 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:12:56 pid:5278 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:12:56 pid:5278 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:13:04 pid:5329 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:13:36 pid:5329 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:13:36 pid:5329 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:13:36 pid:5347 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:14:54 pid:5347 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:14:54 pid:5347 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:14:54 pid:5380 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:16:35 pid:5380 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:16:35 pid:5380 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:16:37 pid:5425 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:17:26 pid:5425 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:17:26 pid:5425 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:17:26 pid:5463 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:18:00 pid:5463 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:18:00 pid:5463 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:18:01 pid:5482 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:18:40 pid:5482 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:18:40 pid:5482 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:18:41 pid:5511 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:45:39 pid:5511 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:45:39 pid:5511 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:46:17 pid:5590 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:46:41 pid:5590 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:46:41 pid:5590 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:46:41 pid:5608 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:47:11 pid:5608 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:47:11 pid:5608 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:47:11 pid:5624 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:47:57 pid:5624 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:47:57 pid:5624 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:47:58 pid:5650 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:48:16 pid:5650 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:48:16 pid:5650 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:48:16 pid:5670 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:48:36 pid:5670 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:48:36 pid:5670 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:48:37 pid:5685 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:49:25 pid:5685 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:49:25 pid:5685 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:49:26 pid:5701 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:50:31 pid:5701 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:50:31 pid:5701 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:50:32 pid:5718 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:51:09 pid:5718 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:51:09 pid:5718 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:51:09 pid:5747 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:52:16 pid:5747 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:52:16 pid:5747 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:52:17 pid:5767 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:52:36 pid:5767 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:52:36 pid:5767 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:52:36 pid:5783 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:53:09 pid:5783 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:53:09 pid:5783 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:53:10 pid:5798 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:53:50 pid:5798 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:53:50 pid:5798 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:53:51 pid:5838 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:54:28 pid:5838 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:54:28 pid:5838 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:55:17 pid:5876 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 07:58:03 pid:5876 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 07:58:03 pid:5876 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 07:58:17 pid:5949 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:02:04 pid:5949 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:02:04 pid:5949 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:02:04 pid:5989 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:02:43 pid:5989 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:02:43 pid:5989 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:02:44 pid:6012 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:03:32 pid:6012 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:03:32 pid:6012 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:03:32 pid:6044 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:13:11 pid:6044 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:13:11 pid:6044 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:13:23 pid:6080 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:13:39 pid:6080 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:13:39 pid:6080 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:13:40 pid:6096 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:22:19 pid:6096 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:22:19 pid:6096 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:22:22 pid:6368 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:25:49 pid:6368 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:25:49 pid:6368 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:25:50 pid:6448 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:27:06 pid:6448 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:27:06 pid:6448 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:27:07 pid:6493 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:28:26 pid:6493 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:28:26 pid:6493 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:28:29 pid:6538 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:28:41 pid:6538 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:28:41 pid:6538 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:28:42 pid:6556 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:29:18 pid:6556 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:29:18 pid:6556 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:29:18 pid:6574 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:31:01 pid:6574 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:31:01 pid:6574 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:31:02 pid:6610 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:36:03 pid:6610 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:36:03 pid:6610 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:36:04 pid:6645 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:36:54 pid:6645 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:36:54 pid:6645 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:36:55 pid:6660 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:37:06 pid:6660 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:37:06 pid:6660 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:37:07 pid:6676 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:37:54 pid:6676 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:37:54 pid:6676 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:37:54 pid:6695 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:38:33 pid:6695 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:38:33 pid:6695 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:38:33 pid:6727 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:39:39 pid:6727 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:39:39 pid:6727 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:39:40 pid:6743 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:40:27 pid:6743 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:40:27 pid:6743 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:40:28 pid:6767 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:41:23 pid:6767 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:41:23 pid:6767 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:41:24 pid:6786 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:41:57 pid:6786 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:41:57 pid:6786 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:41:57 pid:6809 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:41:59 pid:6810 Error: Call to undefined method Workerman\Connection\TcpConnection::getRemoteUri() in /root/bitnami-laravel-demo/workerman/socket.php:13 | ||||||
|  | Stack trace: | ||||||
|  | #0 /root/bitnami-laravel-demo/workerman/src/Worker.php(2525): {closure}() | ||||||
|  | #1 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(452): Workerman\Worker->acceptTcpConnection() | ||||||
|  | #2 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(384): Workerman\Events\Select->safeCall() | ||||||
|  | #3 /root/bitnami-laravel-demo/workerman/src/Worker.php(1641): Workerman\Events\Select->run() | ||||||
|  | #4 /root/bitnami-laravel-demo/workerman/src/Worker.php(1444): Workerman\Worker::forkOneWorkerForLinux() | ||||||
|  | #5 /root/bitnami-laravel-demo/workerman/src/Worker.php(1418): Workerman\Worker::forkWorkersForLinux() | ||||||
|  | #6 /root/bitnami-laravel-demo/workerman/src/Worker.php(578): Workerman\Worker::forkWorkers() | ||||||
|  | #7 /root/bitnami-laravel-demo/workerman/socket.php(46): Workerman\Worker::runAll() | ||||||
|  | #8 {main} | ||||||
|  | 2024-01-26 08:41:59 pid:6809 worker[none:6810] exit with status 64000 | ||||||
|  | 2024-01-26 08:42:41 pid:6809 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:42:41 pid:6809 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:42:42 pid:6826 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:42:43 pid:6827 Error: Call to undefined method Workerman\Connection\TcpConnection::getHeaders() in /root/bitnami-laravel-demo/workerman/socket.php:13 | ||||||
|  | Stack trace: | ||||||
|  | #0 /root/bitnami-laravel-demo/workerman/src/Worker.php(2525): {closure}() | ||||||
|  | #1 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(452): Workerman\Worker->acceptTcpConnection() | ||||||
|  | #2 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(384): Workerman\Events\Select->safeCall() | ||||||
|  | #3 /root/bitnami-laravel-demo/workerman/src/Worker.php(1641): Workerman\Events\Select->run() | ||||||
|  | #4 /root/bitnami-laravel-demo/workerman/src/Worker.php(1444): Workerman\Worker::forkOneWorkerForLinux() | ||||||
|  | #5 /root/bitnami-laravel-demo/workerman/src/Worker.php(1418): Workerman\Worker::forkWorkersForLinux() | ||||||
|  | #6 /root/bitnami-laravel-demo/workerman/src/Worker.php(578): Workerman\Worker::forkWorkers() | ||||||
|  | #7 /root/bitnami-laravel-demo/workerman/socket.php(46): Workerman\Worker::runAll() | ||||||
|  | #8 {main} | ||||||
|  | 2024-01-26 08:42:43 pid:6826 worker[none:6827] exit with status 64000 | ||||||
|  | 2024-01-26 08:43:12 pid:6826 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:43:12 pid:6826 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:43:12 pid:6843 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:43:48 pid:6843 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:43:48 pid:6843 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:43:48 pid:6859 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:44:10 pid:6859 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:44:10 pid:6859 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:44:11 pid:6875 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:44:22 pid:6875 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:44:22 pid:6875 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:44:23 pid:6887 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:46:37 pid:6887 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:46:37 pid:6887 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:46:37 pid:6930 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:46:51 pid:6930 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:46:51 pid:6930 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:46:51 pid:6945 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:49:26 pid:6945 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:49:26 pid:6945 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:49:27 pid:6971 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:49:38 pid:6971 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:49:38 pid:6971 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:49:38 pid:6986 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:52:34 pid:6986 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:52:34 pid:6986 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:52:35 pid:7020 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:54:18 pid:7020 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:54:18 pid:7020 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:54:19 pid:7057 Workerman[socket.php] start in USER mode | ||||||
|  | 2024-01-26 08:54:20 pid:7058 TypeError: Workerman\Protocols\Ws::encode(): Argument #2 ($connection) must be of type Workerman\Connection\AsyncTcpConnection, Workerman\Connection\TcpConnection given, called in /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php on line 395 and defined in /root/bitnami-laravel-demo/workerman/src/Protocols/Ws.php:241 | ||||||
|  | Stack trace: | ||||||
|  | #0 /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php(395): Workerman\Protocols\Ws::encode() | ||||||
|  | #1 /root/bitnami-laravel-demo/workerman/socket.php(15): Workerman\Connection\TcpConnection->send() | ||||||
|  | #2 /root/bitnami-laravel-demo/workerman/src/Worker.php(2525): {closure}() | ||||||
|  | #3 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(452): Workerman\Worker->acceptTcpConnection() | ||||||
|  | #4 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(384): Workerman\Events\Select->safeCall() | ||||||
|  | #5 /root/bitnami-laravel-demo/workerman/src/Worker.php(1641): Workerman\Events\Select->run() | ||||||
|  | #6 /root/bitnami-laravel-demo/workerman/src/Worker.php(1444): Workerman\Worker::forkOneWorkerForLinux() | ||||||
|  | #7 /root/bitnami-laravel-demo/workerman/src/Worker.php(1418): Workerman\Worker::forkWorkersForLinux() | ||||||
|  | #8 /root/bitnami-laravel-demo/workerman/src/Worker.php(578): Workerman\Worker::forkWorkers() | ||||||
|  | #9 /root/bitnami-laravel-demo/workerman/socket.php(45): Workerman\Worker::runAll() | ||||||
|  | #10 {main} | ||||||
|  | 2024-01-26 08:54:20 pid:7058 TypeError: Workerman\Protocols\Ws::onClose(): Argument #1 ($connection) must be of type Workerman\Connection\AsyncTcpConnection, Workerman\Connection\TcpConnection given, called in /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php on line 1028 and defined in /root/bitnami-laravel-demo/workerman/src/Protocols/Ws.php:338 | ||||||
|  | Stack trace: | ||||||
|  | #0 /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php(1028): Workerman\Protocols\Ws::onClose() | ||||||
|  | #1 /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php(900): Workerman\Connection\TcpConnection->destroy() | ||||||
|  | #2 /root/bitnami-laravel-demo/workerman/src/Worker.php(2477): Workerman\Connection\TcpConnection->close() | ||||||
|  | #3 /root/bitnami-laravel-demo/workerman/src/Worker.php(1949): Workerman\Worker->stop() | ||||||
|  | #4 [internal function]: Workerman\Worker::Workerman\{closure}() | ||||||
|  | #5 /root/bitnami-laravel-demo/workerman/src/Worker.php(1949): array_walk() | ||||||
|  | #6 /root/bitnami-laravel-demo/workerman/src/Connection/ConnectionInterface.php(178): Workerman\Worker::stopAll() | ||||||
|  | #7 /root/bitnami-laravel-demo/workerman/src/Connection/TcpConnection.php(397): Workerman\Connection\ConnectionInterface->error() | ||||||
|  | #8 /root/bitnami-laravel-demo/workerman/socket.php(15): Workerman\Connection\TcpConnection->send() | ||||||
|  | #9 /root/bitnami-laravel-demo/workerman/src/Worker.php(2525): {closure}() | ||||||
|  | #10 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(452): Workerman\Worker->acceptTcpConnection() | ||||||
|  | #11 /root/bitnami-laravel-demo/workerman/src/Events/Select.php(384): Workerman\Events\Select->safeCall() | ||||||
|  | #12 /root/bitnami-laravel-demo/workerman/src/Worker.php(1641): Workerman\Events\Select->run() | ||||||
|  | #13 /root/bitnami-laravel-demo/workerman/src/Worker.php(1444): Workerman\Worker::forkOneWorkerForLinux() | ||||||
|  | #14 /root/bitnami-laravel-demo/workerman/src/Worker.php(1418): Workerman\Worker::forkWorkersForLinux() | ||||||
|  | #15 /root/bitnami-laravel-demo/workerman/src/Worker.php(578): Workerman\Worker::forkWorkers() | ||||||
|  | #16 /root/bitnami-laravel-demo/workerman/socket.php(45): Workerman\Worker::runAll() | ||||||
|  | #17 {main} | ||||||
|  | 2024-01-26 08:54:20 pid:7057 worker[none:7058] exit with status 64000 | ||||||
|  | 2024-01-26 08:54:46 pid:7057 Workerman[socket.php] stopping ... | ||||||
|  | 2024-01-26 08:54:46 pid:7057 Workerman[socket.php] has been stopped | ||||||
|  | 2024-01-26 08:54:51 pid:7075 Workerman[socket.php] start in USER mode | ||||||
|  |  | ||||||