Set your busy timeout longer. Make sure you do not hold write transactions longer than you need to. (Only write in write transactions -- do not open them then go for a coffee break). Consider using WAL to permit simultaneous reading and writing (though you are still limited to one writer at a time).