Evite a corrupção do Python Shelve
Pergunta
Como devo impedir a corrupção em um arquivo shelve? A Shelve deve ser fechada a maior parte do tempo e depois aberta apenas quando preciso ler ou editar um valor?
Solução
Se a segurança de seus objetos persistentes é de grande importância em seu projeto, usando shelve
não é uma boa ideia. Nem os objetos de conservação e os escrevem manualmente em arquivos.
Considere que bancos de dados reais investem enormes recursos (capacidade cerebral e código) para serem seguros em caso de falhas. Portanto, mantenha seus dados em um banco de dados real. O mais simples seria sqlite
, como vem com Python. sqlite
é bastante seguro e tem muitas inteligências sobre manter seus dados em algum estado válido, mesmo em caso de falhas no sistema (como quando alguém viaja no cabo de alimentação do seu PC).