LowellObservatory / NightWatch

A system to display a set of important information at an observatory.
2 stars 0 forks source link

Backend Restructuring #38

Open astrobokonon opened 4 years ago

astrobokonon commented 4 years ago

As of right now (20200421) NightWatch works...but it's a fragile house of cards inside. Technically, when I fix issues #37 and issue #22, the backend will have met all of the initial goals I had when I started this. That's great! But...

I've had to do backflips and contortions to get the state checking working right, and while it's all functional, it's a bloody mess to maintain and change. The recent work on fixing empty queries is a good example of this.

As I work on other projects, I get more and more tempted by things like redis, which support TTLs/expiration dates on all data out of the box. I should have pushed to put that into the stack at the get-go, but here we are.

This issue will track the development of a soon-to-be created redis branch, which will either die on the vine or grow to consume the master branch when it's all done. I'm pretty sure it's the most sensible direction to go to greatly simplify the data-gathering aspect of the project, especially since I'm not keen to put in any websocket stuff to hook into the broker directly.