Должен ли XML использоваться на стороне сервера, а JSON на стороне клиента? - PullRequest
0 голосов
/ 13 мая 2010

В качестве личного проекта я создаю приложение для чата AJAX, использующее XML в качестве хранилища на стороне сервера и JSON для обработки на стороне клиента.

Вот как это работает:

  1. AJAX-запрос отправляется в PHP с помощью GET (сообщения чата / логины / выходы из системы)
  2. PHP извлекает / изменяет файл XML на сервере
  3. PHP кодирует XML в JSON и отправляет обратно ответ JSON
  4. Javascript обрабатывает информацию JSON (сообщения чата / логины / выходы из системы)

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

Это был плохой выбор дизайна? В этом случае нормально ли переключаться между XML и JSON или есть лучший способ?

EDIT:

Два механизма предотвращают большую нагрузку на сервер при получении информации с сервера:

  1. Каждому сообщению / имени входа / выхода назначается «идентификатор события», поэтому все, что отправляется обратно пользователю, - это события, которые его клиент еще не обработал.
  2. Когда файл XML становится слишком большим, создается новый.

Ответы [ 2 ]

4 голосов
/ 13 мая 2010

Насколько мне известно, JSON всегда является хорошим выбором для асинхронного. передача данных, потому что она не такая раздутая, как XML. Я бы выбрал последнее, только если я хочу, чтобы данные были удобочитаемыми, например, файлы конфигурации.

--- Отредактировано: И помните: сериализация / десериализация XML - это проблема производительности, которая не особенно удобна для сохранения данных веб-приложений с высокочастотным доступом, хотя, как уже упоминалось, использование XML в качестве файлов конфигурации является лучшей практикой imo.

2 голосов
/ 13 мая 2010

И XML, и JSON хороши для взаимодействия между приложениями. В Javascript JSON гораздо проще, чем XML, поэтому я рекомендую это.

Что касается хранилища ... оба ужасны как большие хранилища данных, я боюсь. MySQL работал бы лучше, чем редактирование файла, но это все еще не подходящее решение для чата, особенно если вы находитесь на общем хосте. Возможно, вы захотите взглянуть на SQLite, возможно, создавая один файл на комнату чата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...