Как к IPC между клиентами PHP и Сервером Демона C?

Вы можете сохранить результат вызова функции after в некоторой переменной after_id, а затем в своем обратном вызове кнопки выполнить fenster.after_cancel(after_id)

23
задан Alex Recarey 29 May 2017 в 20:28
поделиться

5 ответов

Подозреваю, Экономия - это то, что вы хотите. Вам нужно написать небольшой склеивающий код, чтобы выполнить PHP < -thrift-> C ++ < -> C, но это, вероятно, будет более надежным, чем ваш собственный.

5
ответ дан 29 November 2019 в 03:08
поделиться

IPC между скриптами можно сделать намного проще, используя Pipes. Который делает очень простую реализацию.

0
ответ дан 29 November 2019 в 03:08
поделиться

Хотя я никогда не пробовал, memcached вместе с соответствующим расширением PHP должно устранить большую часть ворчливой работы.

Пояснение: Я неявно предполагал, что если вы сделаете это, вы поместите отдельные листья дерева в кэш памяти, используя сплющенные ключи, отбрасывая дерево. Осуществимость и желательность этого подхода, конечно, зависит от многих факторов, прежде всего от источника данных.

0
ответ дан 29 November 2019 в 03:08
поделиться

Вы также можете загрузить структуру данных в общую память, используя функции общей памяти PHP http: // www .php.net / manual / en / book.shmop.php .

О, это не очевидно из документации, но координирующей переменной является $ key в shmop_open. Каждый процесс, которому требуется доступ к общей памяти, должен иметь один и тот же ключ $. Так, один процесс создает разделяемую память с помощью $ key. Затем другие процессы могут получить доступ к этой общей памяти, если они используют тот же ключ $. Я считаю, что вы можете выбрать для $ key все, что захотите.

2
ответ дан 29 November 2019 в 03:08
поделиться

"Проблема" (а может, и нет?) В том, что на SysV MQ определенно может быть много потребителей / производителей. Хотя это вполне возможно для того, что вы делаете, если у вас не обязательно есть потребность в m: n в модели производитель: потребитель к ресурсам, здесь у вас есть модель запрос / ответ.

Вы можете получить некоторые странные зависания с SysV MQ как есть.

Во-первых, уверены ли вы, что сокеты INET недостаточно быстры для вас? Краткий пример PHP с использованием сокетов домена unix находится на http://us.php.net/socket-create-pair (как и пример кода, конечно, используйте socket_create () для конечной точки PHP).

1
ответ дан 29 November 2019 в 03:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: