Я только что стал партнером SHOUTcast и получил мой DevID.Кэширование результатов API SHOUTcast
Я прочитал довольно много все здесь: SHOUTcast_Radio_Directory_API
и здесь: SHOUTcast_API_License_Agreement
И у меня есть сложный вопрос: я должен кэшировать результаты своих API вызовов?
Если решил кэш, я бы идти против того, что запрашивается в API SHOUTcast Каталога Радио:
Не кэшировать XML более чем на 1 день, как может идентификатор станции и изменится.
Если я ничего не кэшировать, я бы идти против SHOUTcast API лицензионного соглашения:
Пожалуйста, не забивают серверы. Мы запрашиваем разумное использование и рекомендуем использовать локальное кэширование.
Кроме того, предположим, что я решил убрать результаты. Поскольку эти результаты на 100% основаны на запросах пользователей, не было бы глупо кэшировать эти результаты, так как пользователи моего приложения, вероятно, каждый раз вводили разные запросы ????
Чтобы попытаться решить мою проблему, у меня возникла идея загрузить всю базу данных SHOUTcast один раз в день/неделю, а затем загрузить ее на свой сервер. Впоследствии мое приложение отправило бы все запросы на мой сервер и вообще не беспокоило бы серверы SHOUTcast.
Проблема с таким подходом заключается в том, что я не мог найти способ сразу загрузить всю базу данных SHOUTcast, как мы можем сделать с IceCast dir.xiph.org/yp.xml.
Что мне делать дальше ???? Как мне продолжить?
Я боюсь задеть лицензионное соглашение SHOUTcast API и получать мой Девид аннулирован:
Мы оставляем за собой право отменить доступ к DevIDs, которые злоупотребляют систему.
Создал ли кто-нибудь здесь приложение, которое подключается к каталогу SHOUTcast? Если да, то какой подход вы использовали, чтобы не быть запрещенным?
Я бы сказал, что это просто вопрос использования здравого смысла. Любой запрос, который может каждый раз возвращать разные данные (т. Е. Любую форму поиска), не имеет смысла кэшировать результаты. И наоборот: данные, которые вряд ли будут изменяться с каждым запросом (больше или «статические» данные), могут/должны быть кэшированы. Это, вероятно, стоит усилий, даже если это действует всего за 24 часа, так как это может сделать ваше приложение намного более отзывчивым (и, возможно, работать в (полу) автономном режиме). –