소프트웨어 및 하드웨어 상호 작용으로 구성된 시스템을 개발했습니다. 기본적으로 트랜잭션 세부 정보가 PCI 장치에서 암호화 된 트랜잭션 시스템이 웹 기반 시스템으로 돌아와 DB에 저장되고 브라우저에서 javascript/extjs를 사용하여 표시됩니다.메시징 및 큐용 미들웨어 시스템에 대한 도움이 필요합니다
1. 사용자가 그리드 후 프레스 "인코딩"버튼을 ExtJS /의 JS을에서 트랜잭션을 선택
거래 인코딩 과정 PHP 곳을에 문자열을 보냅니다 : 나는이 작업을 수행하는 방법 지금은 다음 것은 형식이 지정되고 [incoming_request] 요청에 삽입됩니다. 이 단계에서 extjs taskmanager를 실행하여 결과에 대한 요청 [응답] 열의 간격 검사를 수행하고 "please wait ..."메시지를 표시합니다.
2. 요청 테이블에서 인코딩 할 트랜잭션을 모니터링하는 python 데몬 서비스를 만들었습니다. 그러면 python 데몬은 모든 요청 [incoming_request]을 가져온 다음 요청을 인코딩하고 결과를 요청 [응답] 테이블에 저장합니다.
3. extjs taskmanager는 트랜잭션에 대한 요청 [응답]을 선택하여 사용자에게 표시 한 다음 "please wait ..."메시지를 제거하고 taskmanager를 종료합니다.
제 질문은 다음과 같습니다. 타사 메시징 및 대기열 미들웨어 시스템을 사용하여이 암호화 프로세스를 수행하는 더 좋은 방법이 있습니까? 그렇다면 도움을주십시오.
감사합니다!
답장을 보내 주셔서 감사합니다. 코드가 올바르게 작동하는지 확인하기 위해 변경 작업을 수행 할 것입니다. 이 방법에 대한 예제를 알려 주실 수 있습니다. 1. PHP 블록을 작성하고 파이썬 데몬이 트랜잭션 처리를 마칠 때까지 기다리십시오. >>> 데몬은 기본적으로 결과 테이블로 내 요청 테이블을 업데이트합니다. – Chez
동일한 PHP 핸들러에서 요청을 삽입 한 후 대기열에 요청을 삽입하면 응답이 사용 가능할 때까지 (또는 시간 초과에 도달 할 때까지) 기다려야합니다. 기본적으로 루프에서 sleep (1)과 같은 무한 루프를 실행하고 응답의 사용 가능 여부를 확인하십시오. 이것은 본질적으로 응답이 가능할 때까지 PHP 요청을 "차단"합니다. 응용 프로그램의 규모에 따라 현재보다 많은 동시 세션을 지원하도록 웹 서버를 구성해야 할 수 있습니다. 우리는 10-20과 같이 100 명의 사용자를 말합니다. – m1tk4