Привет, я использую ColdFusion для вызова api last.fm, используя пакет cfc, полученный из здесь.
Я обеспокоен превышением лимита запросов, который составляет 5 запросов на исходящий IP-адрес в секунду, в среднем за 5-минутный период.
В пакете cfc есть центральный компонент, который вызывает все остальные компоненты, которые разделены на разделы, такие как «исполнитель», «трек» и т. Д. Этот центральный компонент «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 ?
Хотите знать, как лучше с этим справиться
Спасибо