a previous post, I talked about the LoVoN project, an SMS-gateway running on a Raspberry Pi with an USB-modem. But than it seemed our build would be to heavy for the raspberry Pi. Well, all that is over now. We were able to make LoVoN work on the rapsberry pi, as it was meant to.If you want to find out more about the project itself, visit it's project page at bitbucket.
When we first started out with LoVoN we decided to use an object database (db4o) instead of a relation database. It seemed like a good idea at the time, removing a lot of the complexities that come with maintaining a relational database and the idea of “not having to deal with the object-relational impedance mismatch” we soon discovered it introduced a whole new set of issues.
Most importantly memory management. We’re not sure whether that’s because we do not fully understand how to use object databases or because object databases are simply not suited for the problem we’re trying solve but given the extreme memory leaks and performance issues we experienced we decided not to stick around and find out. Instead we simply implemented LoVoN with SQLite as the backend. As a result we’re no longer experiencing memory leaks, queries are a lot faster and LoVoN runs on the RaspberryPI without any issues.