Взаимодействие между внешним интерфейсом PHP и внутренним сервером .NET / Java через XML-RPC: рассмотрение производительности - PullRequest
0 голосов
/ 21 апреля 2009

Я реализовал решение, которое представляет собой фоновое приложение .NET на основе ASP.NET: поскольку команда, которую я собираюсь создать, должна состоять из меня и одного или двух работающих фронт-разработчиков в PHP.

Хорошим побочным эффектом этой архитектуры является то, что PHP - это быстрый серверный сценарий, требующий меньше ресурсов, чем ASP.NET.

Единственное решение, которое я нашел для разрешения взаимодействия двух уровней, - это XML-RPC, который является протоколом, поддерживаемым обеими системами (хотя серверная часть была реализована мной). Одной из проблем этого подхода является то, что XML-RPC не поддерживает какую-либо систему аутентификации и имеет некоторые недостатки в сериализации / десериализации между нотацией объекта и представлением XML.

У кого-нибудь есть соображения или альтернативное решение?

Ответы [ 2 ]

1 голос
/ 21 апреля 2009

Я бы согласился, что JSON может быть отличным подходом для передачи данных, но для перехода с PHP на .NET вы можете захотеть использовать xml только потому, что тогда вы можете использовать XML LINQ, что может упростить синтаксический анализ.

Затем вы можете обмениваться данными через http-соединения или веб-сервисы, в зависимости от того, каким образом данные передаются, но я ожидаю, что они будут передаваться из PHP -> .NET, поэтому вы можете поэкспериментировать с WCF для передачи данных с использованием REST архитектура, хотя PHP также может выполнять вызовы клиента веб-сервиса.

Если вы возвращаетесь из .NET с помощью JSON или используете ответ веб-службы, то у вас хорошая связь между двумя фреймворками.

1 голос
/ 21 апреля 2009

Вы можете поиграть с идеей использования JSON, если ваше приложение может это разрешить. JSON = Javascript Object Notation. Это очень легкий синтаксис для описания объектов. Я просто использовал его для передачи данных с php-сервера на клиентский JavaScript через запросы ajax в проекте, который я только что завершил. Это требует некоторого привыкания, однако вам может оказаться легче работать с ним, когда вы все это выясните.

...