В настоящее время я использую PHP для загрузки нескольких XML-файлов со всего Интернета (нелокальных) с использованием simplexml_load_file()
. Это, как вы можете себе представить, довольно неуклюжий процесс и значительно замедляет нагрузку (7 секунд для загрузки 7 файлов), и, возможно, может быть больше загружаемых файлов. Эти файлы не меняются часто, но изменения должны отображаться на странице сразу после их создания.Сравнение XML-документов для изменений в PHP
Одна из моих идей заключалась в том, чтобы кэшировать версию каждого фида и выход html, который я генерирую из этого фида в моей БД. Затем каждый раз, когда пользователь загружает страницу, каналы будут сравниваться; если они разные, я бы запустил свой существующий код, сгенерировал HTML, вывел его и сохранил в БД. Однако, если это то же самое, я могу просто вывести кэшированный HTML.
Мои две проблемы с этим являются:
безопасности: Если я храню копию файла XML, это могло представлять угрозу безопасности, видя, как я не контролирует содержимое этого файла?
Скорость: Основная цель здесь - увеличить скорость общей загрузки страницы. Описанный выше процесс увеличит скорость, или же он просто запустит сервер с большим количеством действий? Спасибо за вашу помощь!
Видит все те же каналы, или же каждый пользователь имеет различные каналы? –