2017-01-23 2 views
0

하나의 Laravel 응용 프로그램에서 다른 Laravel 응용 프로그램에서 트리거 된 이벤트를 수신 할 수 있습니까?두 Laravel 응용 프로그램 간의 이벤트 공유

기존 웹 앱을 보완 할 수있는 REST API를 구축했습니다. 동일한 데이터베이스를 사용하지만 별도의 응용 프로그램으로 구축했으며 캐시 된 결과를 지우는 특정 이벤트가 있습니다. 현재 이벤트는 두 응용 프로그램간에 공유되지 않으므로 데이터베이스를 업데이트 했음에도 불구하고 캐시 된 결과가 표시됩니다. 한 앱이 다른 앱에 의해 시작된 이벤트를 시작하는 방법이 있습니까? 나는이 문서에 대해 아무 것도 발견하지 못했다.

답변

1

Redis은 어떤 응용 프로그램이 듣고 있는지에 대해 완전히 독립적입니다. broadcast driverredis으로 설정하고 둘 다 동일한 Redis 인스턴스를 사용하는 한 다른 애플리케이션에서 이벤트를 호출 할 수 있습니다. 그런 다음 상대방은 해당 이벤트를 수신 할 수 있습니다. 그러나 주목할 점은 Laravel이 리스너를 처리하는 방법은 특정 클래스에 바인딩하는 것입니다. 따라서 클래스가 존재하는지 확인해야만 클래스를위한 리스너를 정의 할 수 있습니다.

+0

불행히도 API가 통합 된 레거시 앱은 레디 스가 아니라 푸셔를 사용하고 있으며 변경하기위한 범위가 없습니다. 아마도 API가 트리거하는 webhook을 만드는 데 의존해야 할 것이라고 생각합니다. 어쨌든, 대단히 감사합니다. –