Stiamo utilizzando il geocoding inverso in un webservice delle rotaie e abbiamo riscontrato problemi di quota durante l'utilizzo del geocoder inverso di Google tramite geokit. Stiamo anche implementando il servizio simple-geo e voglio essere in grado di tenere traccia di quante richieste al minuto/ora stiamo facendo.Il modo migliore per registrare le chiamate API, al minuto/ora
Qualche suggerimento per tenere traccia delle nostre chiamate di geocoding inverso?
Il nostro codice sarà simile al seguente. Faresti qualcuno di questi?
- Aggiungere un registratore e di processo personalizzato in background quotidiano
- Utilizzare un gioiello super-fantastico che io non so che fa quote e Valutazione facilmente
- inserire nel database di una chiamata e fanno domande lì .
Nota: non ho bisogno dei dati in tempo reale, voglio solo essere in grado di sapere in un periodo di un'ora, qual è la nostra solita e massima richiesta all'ora. (e richieste totali mensili)
def use_simplegeo(lat, lng)
SimpleGeo::Client.set_credentials(SIMPLE_GEO_OAUTHTOKEN, SIMPLE_GEO_OAUTHSECRET)
# maybe do logging/tracking here?
nearby_address = SimpleGeo::Client.get_nearby_address(lat, lng)
located_location = LocatedLocation.new
located_location.city = nearby_address[:place_name]
located_location.county = nearby_address[:county_name]
located_location.state = nearby_address[:state_code]
located_location.country = nearby_address[:country]
return located_location
end
Grazie!
Per quanto riguarda il javascript - mi piacerebbe , ma questa è un'API, quindi gli iPhone stanno inviando il loro lat/lng e non possono eseguire la codifica inversa. Dato che siamo su Heroku, non penso di poter fare il log del file system; quindi forse MongoDB potrebbe essere la strada da percorrere. –
Quindi è un'app per iPhone e non un browser che gira lì e suppongo che tu non controlli come vengono raccolte o inviate le informazioni lat/lng? E hai ragione riguardo al filesystem su Heroku.Ma potresti usare S3 e pagare solo per lo spazio di archiviazione (non la larghezza di banda) o utilizzare il componente aggiuntivo MongoHQ di recente avvio – bjg
Diritto su tutti gli account! Appoggiandosi ad un'implementazione MongoHQ ... Qualche idea sul raggruppamento per periodo? (ottenendo una richiesta al secondo)? vorresti semplicemente request.all.group_by il secondo/ora/qualunque? –