mxcube / HardwareObjects

**DEPRECATED**: MXCuBE Hardware Objects (now part of HardwareRepository)
1 stars 11 forks source link

Moving redis from mxcube3/routes to the hwobj level #165

Closed IvarsKarpics closed 7 years ago

IvarsKarpics commented 7 years ago

Hi,

I was wondering if it could be possible to move the redis part from https://github.com/mxcube/mxcube3/blob/master/mxcube3/routes/qutils.py to the hardware object level. For example create a new hardware object called Redis which could cope with saving/loading queue? I was thinking to use Redis also for Qt version to store the queue. Writing files each moment is not so fancy. Maybe this is a topic to be discussed during the meeting.

mguijarr commented 7 years ago

In mxcube 3, redis is used for keeping track of the "user session", i.e. to keep information about who is/was logged in. At some point it also contained the queue, but I think it is no more the case. It is not clear whether we should persist the queue even if server is restarted or not ; for more information about this you can have a look at this.

I would say, use redis if you want most of the time it is really beneficial (I love redis ! This is one of the few software projects you can use that gives you immediate benefit without being in your way) ; but I do not think there is a need for a redis hardware object.

In the case of saving/loading the queue, in MXCuBE 2, I would better bet on buttons to do it on user demand, either if it is saved in a file or in redis. If you think it is useful to do it automatically, then I would add some code that calls redis but I would not do a specific redis hardware object...

Of course we can talk about that during our meeting :)