특정 시간대에 사용자가 특정 순서로 페이지 집합을 탐색 할 때마다이를 감지 할 수 있어야하는 Java 기반 웹 서버 모니터 응용 프로그램을 작성하고 있습니다. 이를 위해 Esper library을 사용하고 있습니다. 쿼리의 최상의 공식화에 대해 몇 가지 의문을 품고 있습니다.EPL을 사용하여 이벤트 시퀀스 추적
먼저 웹 서버에 도달하는 HTTP 요청의 모든 정보를 저장하는 데 사용되는 '액세스'개체를 선언했습니다. 서버에 새로운 요청이 발행 될 때마다 새로운 Access 객체가 인스턴스화되어 EPL 처리 코어로 이벤트로 전송됩니다.
페이지 A, 페이지 B, 페이지 C를 탐색하는 모든 사용자를 추적한다고 가정합니다.이 경우를 처리하는 최적의 방법은 무엇입니까? 다음 예제와 같이 전환 할 때마다 하나씩 여러 개의 조인을 수행해야합니까?
select * from Access(request='GET /A HTTP/1.1').win:time(30 sec) as a1,
Access(request='GET /B HTTP/1.1').win:time(30 sec) as a2,
Access(request='GET /C HTTP/1.1').win:time(30 sec) as a3
where a1.IP=a2.IP AND a2.IP=a3.IP
감사합니다. – Umberto