Привет! Я использую ColdFusion для вызова API last.fm, используя пакет cfc, полученный из здесь .
Меня беспокоит превышение лимита запросов, который составляет 5 запросов на исходящий IP-адрес в секунду, в среднем за 5 минут.
В пакете cfc есть центральный компонент, который вызывает все остальные компоненты, которые разбиты на такие разделы, как «Artist», «Track» и т. Д. Этот центральный компонент «lastFmApi.cfc». инициируется в моем приложении и сохраняется в течение срока службы приложения
// Application.cfc example
<cffunction name="onApplicationStart">
<cfset var apiKey = '[your api key here]' />
<cfset var apiSecret = '[your api secret here]' />
<cfset application.lastFm = CreateObject('component', 'org.FrankFusion.lastFm.lastFmApi').init(apiKey, apiSecret) />
</cffunction>
Теперь, если я хочу вызвать API через обработчик / контроллер, например, обработчик моего художника ... Я могу сделать это
<cffunction name="artistPage" cache="5 mins">
<cfset qAlbums = application.lastFm.user.getArtist(url.artistName) />
</cffunction>
Я немного запутался в кешировании, но кеширую каждый вызов API в этом обработчике в течение 5 минут, но имеет ли это какое-то значение, потому что каждый раз, когда кто-то попадает на страницу нового исполнителя, это все равно считается новым попаданием против API?
Хотите знать, как лучше справиться с этим
Спасибо