From 9503f02f92d62232d0dde4023ba3e8532c9ddea2 Mon Sep 17 00:00:00 2001 From: ened Date: Wed, 14 Jun 2023 23:56:39 +0900 Subject: [PATCH] Limit 10 tps for "now all" command --- KissMeBatch/README.md | 2 +- KissMeConsole/Sources/KissConsole+Candle.swift | 4 ++++ KissMeConsole/Sources/KissConsole+Price.swift | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/KissMeBatch/README.md b/KissMeBatch/README.md index c2c62e1..478100c 100644 --- a/KissMeBatch/README.md +++ b/KissMeBatch/README.md @@ -2,7 +2,7 @@ KissMeBatch 는 command line batch 작업을 위해서 특별하게 구현된 도구입니다. -KISS 의 REST API 가 30 tps 로 제한이 있기 때문에, 동시에 여러 process 에서 batch 작업을 수행하다가, tps 제한에 걸려서 API 호출이 실패하는 것을 막기 위함입니다. +KISS 의 REST API 가 **20 tps** 로 제한이 있기 때문에, 동시에 여러 process 에서 batch 작업을 수행하다가, tps 제한에 걸려서 API 호출이 실패하는 것을 막기 위함입니다. ## Features diff --git a/KissMeConsole/Sources/KissConsole+Candle.swift b/KissMeConsole/Sources/KissConsole+Candle.swift index 60d4c74..3fb0b70 100644 --- a/KissMeConsole/Sources/KissConsole+Candle.swift +++ b/KissMeConsole/Sources/KissConsole+Candle.swift @@ -12,6 +12,10 @@ import KissMe /// Limit to request a candle query let PreferredCandleTPS: UInt64 = 19 +/// Limit to request a current price query +let PreferredNowTPS: UInt64 = 10 + +/// Limit to request a short query let PreferredShortsTPS: UInt64 = 5 /// How many seconds does 1 day have? diff --git a/KissMeConsole/Sources/KissConsole+Price.swift b/KissMeConsole/Sources/KissConsole+Price.swift index 25a45a0..67f7059 100644 --- a/KissMeConsole/Sources/KissConsole+Price.swift +++ b/KissMeConsole/Sources/KissConsole+Price.swift @@ -33,7 +33,7 @@ extension KissConsole { let fileUrl = KissConsole.productPriceUrl(productNo: productNo) try [price].writeCsv(toFile: fileUrl, appendable: true, localized: localized) - try await Task.sleep(nanoseconds: 1_000_000_000 / PreferredCandleTPS) + try await Task.sleep(nanoseconds: 1_000_000_000 / PreferredNowTPS) } catch { print(error) return false