【问题标题】:DataBase is locked in Django project数据库被锁定在 Django 项目中
【发布时间】:2017-04-01 15:08:42
【问题描述】:

我正在开发一个聊天机器人聊天页面,它使用 DB.sqlit3 作为知识库来回复用户的问题。此外,还有一个管理员聊天页面,供管理员添加新问题并通过聊天回复 DB.sqlit3 .所以,为此我有 2 个 Python 脚本(一个用于聊天机器人聊天,一个用于管理员聊天),每个脚本都有自己的 html 和 JS。

聊天机器人聊天页面工作正常,但有时当我运行管理员聊天页面并尝试将新数据(问题和重播)插入 DB.sqlit3 时,我得到:

The database is locked

谢谢,

PS: 我正在使用 Django 10,python3,sqlite3,web 派系服务器

【问题讨论】:

    标签: python django sqlite


    【解决方案1】:

    Sqlite 不用于生产。它使用单个全局数据库级锁。一次只有一个线程或进程可以访问它。这不是您在生产中想要的,绝对不是聊天服务器。查看 Redis 之类的键值存储进行聊天,并使用更好的数据库进行其他操作。

    【讨论】:

    • 谢谢,有人说切换到mysql会解决问题,因为它有更好的并发性。另外,你的意思是,我可以使用 Redis 进行对话,更新聊天机器人数据库,我可以使用另一个数据库
    • 数据库不是聊天的好工具。像 Reddis 这样的快速键值存储会更好。但是,如果您刚刚开始并正在尝试学习一些东西,您可以使用 db 来完成。
    猜你喜欢
    • 2015-05-11
    • 1970-01-01
    • 2022-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多