geolocation api rate-limit: commented debug messages

This commit is contained in:
sedum
2023-01-19 12:20:52 +01:00
parent cc4bb69667
commit c50d369de9

View File

@@ -32,16 +32,15 @@ const geocodingController = {
let dprev = d let dprev = d
d = dprev + 1000 + h d = dprev + 1000 + h
console.log('a: ' + a) // console.log('a: ' + a)
console.log('dprev: ' + dprev) // console.log('dprev: ' + dprev)
console.log('d: ' + d) // console.log('d: ' + d)
// if the same request was already cached skip the delay mechanism // if the same request was already cached skip the delay mechanism
if (cache.get(providerCommonName + '_' + req.params.place_details)) { if (cache.get(providerCommonName + '_' + req.params.place_details)) {
if (a < d) { if (a < d) {
log.warn('More than 1 request per second to geocoding api. This from ' + req.ip + ' . The response data is served from memory-cache') log.warn('More than 1 request per second to geocoding api. This from ' + req.ip + ' . The response data is served from memory-cache.')
} }
console.log('yet cached')
// reset departure time because there is no need to ask provider // reset departure time because there is no need to ask provider
d = dprev d = dprev
return next() return next()
@@ -49,15 +48,15 @@ const geocodingController = {
if (d === 0 || a > d) { if (d === 0 || a > d) {
// no-queue or old-queue // no-queue or old-queue
console.log('No queue or Old queue') // console.log('No queue or Old queue')
// arrival time + 10ms estimated computing time // arrival time + 10ms estimated computing time
d = a + 10 d = a + 10
next() next()
} else { } else {
// fresh queue // fresh queue
console.log('Fresh queue') // console.log('Fresh queue')
let wait = d - a let wait = d - a
console.log('Waiting '+ wait) // console.log('Waiting '+ wait)
log.warn('More than 1 request per second to geocoding api. This from ' + req.ip + ' . Applying ToS padding before asking to provider. The response data is now cached.') log.warn('More than 1 request per second to geocoding api. This from ' + req.ip + ' . Applying ToS padding before asking to provider. The response data is now cached.')
setTimeout(() => { setTimeout(() => {
@@ -80,14 +79,14 @@ const geocodingController = {
const ret = await cache.get(providerCommonName + '_' + details) const ret = await cache.get(providerCommonName + '_' + details)
return ret return ret
} else { } else {
console.log('Not in cache') // console.log('Not in cache')
return return
} }
}, },
async queryProvider(req, res, details, provider) { async queryProvider(req, res, details, provider) {
let RTTstart = Date.now() let RTTstart = Date.now()
console.log('Asking Provider: ' + RTTstart) // console.log('Asking Provider: ' + RTTstart)
const ret = await axios.get(`${provider.endpoint(req, res)}`, { const ret = await axios.get(`${provider.endpoint(req, res)}`, {
params: provider.getParams(req, res), params: provider.getParams(req, res),
@@ -96,16 +95,16 @@ const geocodingController = {
if (ret) { if (ret) {
let RTTend = Date.now() let RTTend = Date.now()
console.log('Asking Provider: ' + RTTend) // console.log('Asking Provider: ' + RTTend)
// Save the hit time (aka Latency) // Save the hit time (aka Latency)
console.log('Saving latency h: ' + h) // console.log('Saving latency h: ' + h)
h = (RTTend - RTTstart) / 2 h = (RTTend - RTTstart) / 2
} }
// Cache the response data // Cache the response data
cache.put(provider.commonName + '_' + details, ret.data, 1000 * 60 * 60 * 24); cache.put(provider.commonName + '_' + details, ret.data, 1000 * 60 * 60 * 24);
console.log(cache.keys()) // console.log(cache.keys())
console.log(cache.exportJson()) // console.log(cache.exportJson())
return ret.data return ret.data
}, },