내 k8055 USB 인터페이스 보드에 간단한 웹 API를 제공하기 위해 Flask을 사용했습니다. 꽤 표준 getters와 퍼터, 그리고 플라스크 정말 내 인생을 훨씬 쉽게 만들었습니다.Python에서 Flask로 주기적 작업을 수행하는 방법
그러나 나는 유장이 발생할 때/근처에 상태 변경을 등록 할 수 있기를 원합니다.
예를 들어 보드에 버튼이 연결되어 있으면 특정 포트에 대해 API를 폴링 할 수 있습니다. 그러나 출력이 직접 출력을 반영하도록하려면 누군가가 API에 대해 이야기하고 있는지 여부에 관계없이 이렇게 할 수 있습니다.
while True:
board.read()
board.digital_outputs = board.digital_inputs
board.read()
time.sleep(1)
매초마다 출력이 입력과 일치하도록 업데이트됩니다.
플라스크에서 이런 종류의 작업을 수행 할 수있는 방법이 있습니까? 나는 Twisted에서 비슷한 일을했지만 Flask는이 특별한 애플리케이션이 아직 포기하기에는 너무 편리하다. ...
고마워.
감사합니다. gevent/greenlet 경로를 따라 갔지만 'main'스레드가 루핑 스레드에 응답하지 않는 것으로 나타났습니다. (위의 시간 대신 gevent.sleep 사용) 셀러리의 경우 확실하게 메시지 대기열 서버 구현은 과도합니다. 그래서 '단순한'(tm) 무엇인가? – Bolster