Re:SQLite is not a toy database
by Thaxll on Thursday March 25, 2021 @11:14AM
(#26581269)
That's not the case no, you usually access your database with thread pool. Otherwise everyone would wait until the single connection is free. Once you have a bit more users that tries to write everything will fall appart.
[ Parent
| on HN ]
Re:SQLite is not a toy database
by mywittyname on Thursday March 25, 2021 @11:44AM
(#26581682)
One could implement a write queue and caching for the front end. That might sound like a lot of work to go through to avoid moving to a proper multi-user database. But given that writes are probably done through a handful of API endpoints, it's probably not really that much work to implement.
Re:SQLite is not a toy database
by OldHand2018 on Thursday March 25, 2021 @11:33AM
(#26581515)
Well, let me throw out a crazy idea:
Nobody said you have to use a single database/file. Obviously, you are going to want to spend a couple minutes thinking about referential integrity. But how often do you delete records in your web app?
UPDATE is also a write, and references crossing files sounds like a nightmare.
If your deployment environment has serious constraints, I'm sure you could make it work. The product you deliver would be SQLite + custom DBI layer to hide SQLite's limitations.
It would be a lot more work, and not be as robust or scalable, compared to a more traditional selection. But I can imagine cases where it would be appropriate.
Re:SQLite is not a toy database
by HelloNurse on Thursday March 25, 2021 @12:24PM
(#26582194)
A big database id not an issue. Contention requires a large number of writers, not a large amount of cold data.
As an IRC client with an SQLite backend: several hundred times per second.
Per user.
While reads are more like once every day per user.