2017-10-26 3 views
-2

Django에서 실행되는 백엔드 서버에 반응 구성 요소의 상태를 바인딩하고 싶습니다. 내가 달성하고자하는 것은 끊임없이 구성 요소의 상태를 업데이 트하는 아약스 호출이지만, 매 2 초마다 지속적으로 API 호출을하면 응용 프로그램의 성능에 영향을 미칠 수 있으므로 더 나은 것을 찾고 있습니다. 같은 것을 달성하는 방법.어떻게 반응 구성 요소를 데이터베이스 상태에 바인딩합니까?

+0

프론트 엔드를 업데이트 할 때 DB를 업데이트 하시겠습니까? 또는 다른 사용자가 DB를 변경할 때 한 사용자의 프론트 엔드를 업데이트 할 우려가 있습니까? –

+0

후자는 내가 말할 것입니다. –

답변

0

두 가지 가능한 솔루션 인 폴링과 웹 소켓이 있습니다. 폴링은 변경 사항을 묻는 지정된 간격으로 전화를 걸기를 의미합니다. 그건 쉽지만, 당신이 말했듯이, 비효율적 일 수 있습니다. 웹 소켓은 서버가 무언가가 바뀔 때 브라우저에 푸시 알림을 보내는 것을 포함합니다.

This site은 원하는대로 웹 소켓을 사용하는 방법을 소개합니다. 구현하는 것이 더 낫지 만 더 복잡합니다.

트래픽에 대한 판단을해야합니다. 트래픽이 모든 사용자로부터 5 초마다 폴링 호출을 처리 할 수 ​​있다면 훨씬 쉬운 방법입니다. 그렇지 않다면 웹 소켓입니다.

+0

스케일링 사실을 잊지 마시기 바랍니다. 폴링하는 사용자가 1000 명이면 응용 프로그램을 쉽게 종료 할 수 있습니다. – Waize

+0

감사합니다. 아직까지 다른 방법을 찾지 못했기 때문에 웹 소켓을 계속 사용하겠습니다. –

관련 문제