1
0
Fork 0
mirror of synced 2024-09-30 17:26:48 +13:00
appwrite/app/realtime.php

40 lines
1.2 KiB
PHP
Raw Normal View History

2020-10-16 20:31:09 +13:00
<?php
use Appwrite\Extend\PDO;
use Appwrite\Realtime\Server;
use Utopia\App;
2021-02-25 06:12:38 +13:00
require_once __DIR__ . '/init.php';
2020-10-16 20:31:09 +13:00
2020-10-20 04:09:53 +13:00
Swoole\Runtime::enableCoroutine(SWOOLE_HOOK_ALL);
2020-10-19 00:51:16 +13:00
$config = [
2021-03-02 04:13:10 +13:00
'package_max_length' => 64000 // Default maximum Package Size (64kb)
];
2020-10-16 20:31:09 +13:00
$register->set('db', function () {
$dbHost = App::getEnv('_APP_DB_HOST', '');
$dbUser = App::getEnv('_APP_DB_USER', '');
$dbPass = App::getEnv('_APP_DB_PASS', '');
$dbScheme = App::getEnv('_APP_DB_SCHEMA', '');
$pdo = new PDO("mysql:host={$dbHost};dbname={$dbScheme};charset=utf8mb4", $dbUser, $dbPass, array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8mb4',
PDO::ATTR_TIMEOUT => 3, // Seconds
PDO::ATTR_PERSISTENT => true,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
));
return $pdo;
});
$register->set('cache', function () { // Register cache connection
$redis = new Redis();
$redis->pconnect(App::getEnv('_APP_REDIS_HOST', ''), App::getEnv('_APP_REDIS_PORT', ''));
$redis->setOption(Redis::OPT_READ_TIMEOUT, -1);
return $redis;
});
2021-06-16 21:09:12 +12:00
$realtimeServer = new Server($register, port: App::getEnv('PORT', 80), config: $config);