bliss on a NAS, versus bliss on a computer
As we've added more and more NAS, music server and embedded integrations I've begun to get more and more questions about where bliss should be run. Should it be run on your computer or on your NAS? As Paul Barrett asks:
I am a current bliss user.
I run it on my PC but my library is on a Synology DS216j which is a supported NAS for the bliss package.
An article on the pros and cons of using bliss on a NAS versus a PC would be appreciated. [...]
Paul goes on to say:
I think I can predict two main reasons:
- The ability to have auto-scans running to pick up any newly added music and "bliss it" without user intervention.
- To be able to offload this work from my PC to the NAS which might be helpful on mega large libraries where keeping the PC switched on while a scan completes is a nuisance.
There's definitely a convenience factor. If bliss is running on your NAS and your computer is switched off, and you happen to notice some piece of artwork or metadata that needs updating, you can easily dial up bliss and make the fix from your tablet or mobile. If you need to start your computer you probably won't do it.
Overall I'd say it's better to install bliss on your NAS but the decision as to which way to go probably depends on the ability of your NAS's hardware to deal with bliss.
In computing you tend to consider three facets: compute (how fast the CPU is), I/O (how fast data can be stored or transferred) and memory.
The NAS has an advantage with I/O, because bliss is co-located with the music collection. I/O will generally be a lot faster than installing on a computer and accessing the music across the network.
Compute and memory tend to be more constrained, and is where a workstation or laptop may win.
So it comes down to the economics of balancing the constraints of memory and CPU of the NAS versus the I/O benefits. In a more modern NAS with, say, 512MB RAM minimum it becomes more practical. With less than this it's a struggle, although bliss will work. Disabling rules tends to help here.
I made a change to bliss recently to use ¼ of system RAM, up to 512MB as a ceiling. Before it was constrained to 128MB. I think this will make operation of NASes with 1GB a lot faster.
The other thing to consider are other services; your NAS may also host a UPnP server, for example, which is serving your music. bliss and all the other services need to be served by the same hardware.
I'll be looking to implement some more performance improvements for resource-constrained devices, but please give me your feedback, because sometimes it identifies certain rules as being resource hogs!
Thanks to mikecogh for the image above.