From a6369c79e375a6449283696183480a0544e2c212 Mon Sep 17 00:00:00 2001 From: Elizabeth Byerly Date: Mon, 20 May 2019 16:03:31 -0400 Subject: [PATCH 1/2] Currency service injects additional latency on predictable schedule --- src/currencyservice/server.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/currencyservice/server.js b/src/currencyservice/server.js index d3e9ad1..1669cd9 100644 --- a/src/currencyservice/server.js +++ b/src/currencyservice/server.js @@ -71,7 +71,13 @@ function _loadProto (path) { */ function _getCurrencyData (callback) { const data = require('./data/currency_conversion.json'); - callback(data); + // Currency conversion API slows down during peak hours. + let delay = 0; + const hour = new Date().getHours(); + if (hour > 8 && hour < 17) { + delay = 100; // add 100ms slowdown + } + setTimeout(callback(data), delay); } /** From a9f4759f419c6ad50d613dd73e5b02feda5f0efe Mon Sep 17 00:00:00 2001 From: Elizabeth Byerly Date: Mon, 20 May 2019 16:07:39 -0400 Subject: [PATCH 2/2] setTimeout takes function --- src/currencyservice/server.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/currencyservice/server.js b/src/currencyservice/server.js index 1669cd9..ed6b099 100644 --- a/src/currencyservice/server.js +++ b/src/currencyservice/server.js @@ -77,7 +77,7 @@ function _getCurrencyData (callback) { if (hour > 8 && hour < 17) { delay = 100; // add 100ms slowdown } - setTimeout(callback(data), delay); + setTimeout(() => callback(data), delay); } /**