1
0
Fork 0
mirror of synced 2024-06-26 18:20:43 +12:00

Messaging

This commit is contained in:
shimon 2023-05-30 11:53:52 +03:00
parent 06ca9ce815
commit 478e83a4bf
3 changed files with 20 additions and 16 deletions

View file

@ -221,23 +221,20 @@ Server::setResource('getBuildsDevice', function (string $projectId) {
$pools = $register->get('pools');
$platform = new Appwrite();
$_args = (!empty($args) || !isset($_SERVER['argv']) ? $args : $_SERVER['argv']);
$args = $_SERVER['argv'];
if (isset($_args[0])) {
$workerName = end($_args);
if (isset($args[0])) {
$workerName = end($args);
} else {
throw new Exception('Missing command');
throw new Exception('Missing worker name');
}
$platform->init(Service::TYPE_WORKER, [
'queue' => App::getEnv('QUEUE'),
'workerNumber' => swoole_cpu_num() * intval(App::getEnv('_APP_WORKER_PER_CORE', 6)),
'workersNumber' => swoole_cpu_num() * intval(App::getEnv('_APP_WORKER_PER_CORE', 6)),
'connection' => $pools->get('queue')->pop()->getResource(),
'name' => $workerName,
'workerName' => $workerName,
]);
$worker = $platform->getWorker();
$worker

View file

@ -3,6 +3,7 @@
namespace Appwrite\Platform\Workers;
use Exception;
use Utopia\App;
use Utopia\Audit\Audit;
use Utopia\Database\Database;
use Utopia\Database\Document;
@ -11,6 +12,8 @@ use Utopia\Queue\Message;
class Audits extends Action
{
protected static array $init;
public static function getName(): string
{
return 'audits';
@ -25,8 +28,10 @@ class Audits extends Action
->callback(fn ($message, $dbForProject) => $this->action($message, $dbForProject));
}
public function action(Message $message, $dbForProject): void
{
$payload = $message->getPayload() ?? [];
if (empty($payload)) {

View file

@ -18,10 +18,10 @@ use Utopia\Queue\Message;
class Messaging extends Action
{
private ?DSN $dsn;
private string $user;
private string $secret;
private string $provider;
private ?DSN $dsn = null;
private string $user = '';
private string $secret = '';
private string $provider = '';
public static function getName(): string
{
@ -31,9 +31,11 @@ class Messaging extends Action
public function __construct()
{
$this->provider = App::getEnv('_APP_SMS_PROVIDER', '');
$this->dsn = !empty($this->provider) ? new DSN($this->provider) : null;
$this->user = !empty($this->provider) ? $this->dsn->getUser() : '';
$this->secret = !empty($this->provider) ? $this->dsn->getPassword() : '';
if (!empty($this->provider)) {
$this->dsn = new DSN($this->provider);
$this->user = $this->dsn->getUser();
$this->secret = $this->dsn->getPassword();
}
$this
->desc('Messaging worker')