You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
모든 프로세스들이 공통적인 nodeList를 가지고 있어야 하기 때문에 항상 동기화가 맞아야 한다. 즉, 공용 자원이라는 뜻이다. 이를 관리하기 위해서,
첫 번째 방법으로 distributor가 가지고 있는것을 공통으로 가지고 있는 방법과
두 번째로 redis와 같은 메모리 db를 쓰는 방법이 있는 것 으로 보인다.
첫 번째 방법의 단점으로는, distributor 서비스가 죽어버리면, 그 이후로는 nodeList관리가 불가능해 진다는 점이 있으므로, 두 번째 방법이 더 올바른 방법이라 생각된다.
아니면.. 동기화 되지 않을 가능성을 배제하고, 모든 프로세스들이 각자 nodeList를 관리하는 방법도 있다.
distributor를 app list manager로, app list manager를 제외한 node들을 app이라고 부르겠습니다.
app list manager 프로세스가 예기치 않게 종료될 때 리스트도 같이 사라진다는 점은 확실히 단점이 맞는것 같습니다.
다만, redis 안에 단순히 app들의 정보를 담고 있을 것인지, 그렇다면 서로 요청을 보낼 때 tcpClient를 생성하고 보내야 하는데 이것이 오버헤드가 심하지 않을지 생각해 봐야할 것 같습니다.
완료조건
The text was updated successfully, but these errors were encountered: