Postgres 를 Pub/Sub Server 로 이용하기
(layerci.com)DB에 Job들을 SQL로 정의해서 넣고, 트리거를 이용해서 리슨하는 채널에 알리는 방식.
서비스에서 이미 Postgres 를 사용중이라면, Kafka 나 RabbitMQ 같은 별도서버나 클라우드가 제공하는 서비스를 사용하기 전에 간단히 현재의 DB를 사용해서 PubSub을 사용가능 하다는 것.
- Postgres 자체가 초당 만개 이상의 인서트동작을 수행가능하기에 퍼포먼스도 뛰어난 Job 서버로 동작 가능.
- 모든 잡들을 SQL로 검색 가능 => graphql 이나 Protobuf 를 생성하는 것도 쉬움
- 채널에 Listen 만 하면 되기 때문에 여러개의 워쳐도 상관없음
- Postgres 는 이미 다양한 개발언어를 지원