python - django 聊天机器人网站中从 Sqlite3 到 Mysql

标签 python mysql django sqlite

i'ev 在 Web 派系服务器上使用 Django 和 python3 开发了一个聊天机器人 Web 应用程序。基本上,聊天机器人作为客户服务器与商店的用户进行交互。它使用 REST API 来 POST 用户输入,使用 GET 来显示聊天机器人输出,并使用 python 文件来处理输入并查找输出。

聊天如何进行:

<强>1。 chatboy.js:它首先在 API 中 POST 用户输入,然后运行 ​​python 文件 chabot.py。

<强>2。 chabot.py:连接到Django后端db.sqlite3和conversation.sqlite3的python文件。因此它从db.sqlite3中选择用户输入,然后在conversation.sqlite3中选择匹配的输出。最后该文件将更新 db.sqlite3 中的聊天机器人输出。

<强>3。 chatboy.js:将获取最后的聊天机器人输出并显示它。

在开发阶段,当我在本地服务器中测试应用程序时,一切正常,但问题出现了,我们在互联网上部署了 Django 项目。大多数情况下,停止申请表工作的主要错误是:

    The database is locked

我做了很多研究并发现:

  1. sqlite3 不适用于生产,仅适用于小型或独立应用程序。

  2. sqlite3 存在多线程问题。

  3. 不适合实时聊天应用程序。

一些建议说要么

  1. 将所有 sqlite3 切换到 Mysql(但如何?以及如何更改 python 文件中的 sql 查询以适应 Mysql)
  2. 使用像Reddis这样的快速键值存储(这是否意味着将其作为我的项目的后端数据库或突出conversation.sqlite3?)

请帮助我,因为这非常令人沮丧,我很长时间以来都遇到此错误,但我找不到问题的解决方案。

谢谢,

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

最佳答案

您只需更新设置文件即可将数据库设置从 sqlite3 更改为 mysql 或 postgresql。但在此之前,您需要在 Webfaction 控制面板中创建一个数据库(更多信息 here )。

关于python - django 聊天机器人网站中从 Sqlite3 到 Mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43311210/

相关文章:

python - (A, B) 和 (C,) 之间的 Minkowski 距离

javascript - 在 python selenium 中使用 JS 脚本向下滚动

php - 使用 PHP 循环更新整个列的 SQL 连接语句

javascript - Django - 将变量传递给同一脚本标签内的javascript文件

javascript - 如何从网站获取 : js, css、图像等所有文件并保存以供离线使用?

python - 有没有办法使 dis.dis() 递归打印代码对象?

mysql - 带 Cast 或 Convert 的 SQLWhere 子句不起作用

java - 尝试使用 Tomcat 启动 Liferay 我得到这个 Java ConnectException : Connection Refused. 有什么建议吗?

Django 私有(private)项目 Git Repo - 开源 App Repo

django - 我可以在 Django Rest Framework 中使用带空格的字段名称吗?