Closed petarov closed 7 years ago
Дали колона source не трябва да е integer и да пишем кодовете(100,200..)
Добър въпрос. Май ще е по-добре така наистина. Ще обръщаме индексите в имена директно в бекенда.
Така или иначе данните са преходни, т.е., като ги изпратим трябва да изтрием SQL row-a за всички успешно изпратени съобщения, но с Integer-ите изглежда ще е по-пригледно.
Добре, ще го промяна да е Integer, ако решим после нещо друго ще го сменим
В момента имаме система за репроти, пакет -
net.vexelon.currencybg.srv.reports
, която главната нишка ползва, за да изпраща известия при грешки настъпили при теглене на валути от източниците. Репоритете обаче се пращат мигновено след края на поредния цикъл в главната нишкаHeartbeat.java
.Идята тук е, наместо да се пращат в края на цикъла на heartbeat-a, да се акумулират, например в базата от данни, и да се изпращат веднъж на конфигурируем интервал (примерно 30 мин. по подразбиране). Това може да стане чрез още 1 background нишка, която тегли текущите репорти от базата и ги праща.
Tasks:
reporter.type
- (telegram|sparkpost)Reports (id, createdon (DATE), message (TEXT))
MySQLDataSource.java
Heartbeat.java
да записва в базата -> в пакетremote
->RemoteHeartbeat.java
ReporterHeartbeat.java
в пакетreporter
и настройка в BootstrapOptional
telegram.*
илиsparkpost.*
->reporter.telegram.*
иreporter.sparkpost.*
.