go — Связь между PHP & amp; Golang

Я хотел бы начать использовать Голанг. Для этого я дал мне небольшой проект. У меня уже есть сайт (классический php, mysql, css, html).

Я хотел бы экспортировать некоторые черты в сценарий Голанга. (например, рассчитать Пи.)

На самом деле, когда я нажимаю на кнопку, PHP-алгоритм делает эту работу. Есть ли лучшая практика для использования php и golang.

Я думал о сокете. (сервер golang, клиент php) или база данных. Но это приведет к большому количеству запросов SQL.

Я надеюсь, ты поможешь мне,

Спасибо

2

Решение

Лучшее решение — использовать сокет. Любые другие «шаблоны» будут использовать сокет.
Например, вы можете использовать для взаимодействия процессов ZMQ. ZMQ даст вам доступ к розеткам низкого уровня на высоком уровне (розетка на стероидах).

Использование базы данных — не будет рассматриваться как асинхронное решение, но его также можно использовать ….
Он должен основываться на доступных ресурсах и задачах.

PHP-привязка ZMQ

ZMQ Go Binding

Постскриптум У меня был опыт объединения php + Erlang. Так что мое решение — универсально.

6

Другие решения

Вы можете начать сборку простого сервера REST в Golang, который возвращает JSON в общем формате следующим образом:
http://www.alexedwards.net/blog/golang-response-snippets

На стороне PHP, скажем, запрос API, вы можете использовать cURL для отправки простого запроса на вызов REST-сервера следующим образом:
http://codular.com/curl-with-php

Поскольку вы можете использовать простые REST API в Golang, которые возвращают некоторые данные JSON, это позволяет вам использовать почти современные языки программирования для взаимодействия и взаимодействия с вашими REST API, такими как Javascript, Java, Python, Ruby и так далее.

2

Несколько строк GoLang могут легко создать HTTP-сервер. Использование платформы Echo поверх этого позволит быстро взаимодействовать с длительным процессом.

Оттуда PHP может отправлять ему запросы.

При портировании приложения веб-клиенты могут напрямую подключаться к серверу, используя CORS. Пример:
www.site.com получать контент от golang.site.com

Необязательный:
Веб-сервер GoLang имеет пакет CGI (FastCGI, предлагаемый другими), который вы можете использовать для запуска кода PHP из кода GoLang, но рутинная работа по преобразованию конфигурации Apache может сделать это непрактичным.

В любом случае у вас будет идиоматический сервер, выдающий молниеносные ответы.

0
По вопросам рекламы [email protected]