2017-04-09 1 views
0

i'ev는 웹 팩션 서버에서 Django와 python3을 사용하여 chatbot 웹 응용 프로그램을 개발했습니다. 기본적으로 chatbot은 상점의 사용자와 고객 서버로 상호 작용합니다. REST API를 사용하여 사용자 입력을 게시하고 GET을 사용하여 chatbot 출력 및 python 파일을 표시하여 입력을 처리하고 출력을 찾습니다.에서 django chatbot 웹 사이트

채팅 작동 방법 :

1. chatboy.js : 먼저 다음 API에 사용자 입력을 POST 파이썬 파일 chabot.py을 실행합니다.

2. chabot.py : Django 백엔드 db.sqlite3 및 conversation.sqlite3에 연결하는 파이썬 파일. 따라서 db.sqlite3에서 사용자 입력을 선택한 다음 conversation.sqlite3에서 일치하는 출력을 선택하십시오. 마지막으로 파일은 db.sqlite3의 chatbot 출력을 갱신합니다.

3. chatboy.js :은 마지막 chatbot 출력을 가져 와서 표시합니다.

개발 단계에서 로컬 서버의 응용 프로그램을 테스트 할 때 모든 것이 잘 작동하지만 문제가 발생하여 인터넷에 장고 프로젝트를 배포했습니다. 대부분 응용 프로그램 폼 작업을 중지 주요 ERORR은 다음과 같습니다

The database is locked 

나는 많은 연구를하고 있음을 발견 :

  1. sqlite3를 생산을위한 단지 작은 또는 독립 실행 형 응용 프로그램이 아닙니다.

  2. sqlite3에 다중 스레드 문제가 있습니다.

  3. 실시간 채팅 응용 프로그램에 적합하지 않습니다.

일부 제안 중 하나

  1. 는 MySQL로 모든 sqlite3를 전환 (하지만 어떻게? 내가 MySQL을 맞게 파이썬 파일에서 SQL 쿼리를 변경하는 방법)
  2. 이 빠른 키를 사용했다 Reddis와 같은 값 저장소 (백엔드 DB 형식으로 내 프로젝트를 만들거나 대화를 닫는 것을 의미합니까?)

매우 실망스럽고 오래 동안이 오류가 있었기 때문에 도와주세요. 시간과 내가 찾을 수 없습니다 및 문제에 대한 해결책.

PS 감사합니다 : 내가 장고 10 사용하고, python3, sqlite3를, 웹 진영 서버

+0

장고를 사용하고 있다면 쿼리를 변경할 필요가 없습니다. ORM의 가장 큰 장점 중 하나는 데이터베이스에 무관심하다는 것입니다. –

+0

@DanielRoseman이 답장을 보내 주셔서 감사합니다. 그래서 mysql 데이터베이스 폼 sqlite를 바꾸는 것이 가장 좋습니다? – user7649420

답변

0
에만 sqlite3를에서 MySQL의 또는 PostgreSQL을에 설정 데이터베이스를 변경하려면 설정 파일을 업데이트해야

. 하지만 그렇게하기 전에 Webfaction Control Panel에 데이터베이스를 만들어야합니다 (추가 정보 here).