Closed MagicFab closed 4 years ago
Performance wise Raspberry Pi is probably going to serve hundred users easily. Anything more than that and it's probably better to go with the official server - not due to the performance issues, but you'll probably want to be close to upstream and possibly also have some official support.
We have some compatibility support reported here, but again it's mostly about binary format, the resources aren't really a concern. (Raspberry Pi Zero with 512MB RAM and very low power CPU is more than enough).
As for Sqlite vs MySQL vs PostgreSQL I don't think performance is really good reason to go with either of these, they are all going to be just fine with usual amount of users. There are good reasons to not use the default Sqlite - for example if you already have MySQL or PostgreSQL available for other service. When you already have some backup strategy in place and perhaps resiliency?
Anyway the point is that performance is never a factor in these decisions - especially considering the most typical deployments. About 50MB RAM and CPU for which we create an image is gonna be enough. If you're willing to self-compile for your architecture, anything desktop-like produced last 20 years is probably OK.
I think this can be closed? The linked wiki page seems to touch on that enough and anything small enough that would not have enough resources for bitwarden_rs is going to be pretty special setup anyways.
This Bitwarden implementation is specially useful as it requires less resources and doesn't have a dependency on proprietary Microsoft SQL server.
I'd like to suggest adding details on system resources required to run Bitwarden_RS as well a a high-level list of the backend technologies and architecture and how it affects performance and maintenance - for example why is SQLite the default and how / why would one want to migrate to MySQL.