08. Step-6. Listen to changes in the cluster :: 2015/04/08 12:52

이전 단계에서 2개의 node에서 cluster 성공적으로 시작했다. 하지만, cluster 대한 lifecycle 2개의 node 동일한 operation 효과적으로 수행하도록 거의 제어하지 못했다. 이번 단계에서는 cluster events들에 대해서 들여다보고, cluster topology 변경될 , cluster events들이 예상대로 발생한 것인지를 어떻게 확신할 있도록 돕는지 알아볼 것이다. 특정 events listen하기 위하여 listener 생성하여 CacheManager 추가해야 한다. Infinispan listener 간단하게 @Listener annotation으로 구현할 있다. 알고 싶은 events 대해서 annotation 추가하면 notify 받을 있다. 예를 들면 다음과 같다.


@Listener

public class ClusterListener {

@ViewChanged

 public void viewChanged(ViewChangedEvent event) {

 }

 }



위의 예제에서는 cluster node 참여하거나 나갈 때마다 notify 받을 것이다. Event object 이전 topology 대한 상세한 정보와 새로운 topology 대한 상세 정보를 담고 있다. 우리의 WeatherApp에서는 2개의 CountdownLatch Instance 함께 topology 정보를 사용할 것이다. 하나는 초기 cluster를 구성하는 node의 개수가 때까지 기다리고, 다른 하나는 원래의 coordinator node cluster 나갔을 , node shutdown하도록 허용한다.


git checkout -f step-6

mvn clean package exec:exec # from terminal 1

mvn exec:exec # from terminal 2


이번에는 첫번째 시작한 노드는 job 수행하기 전에 두번째 node cluster 참여하기까지 기다릴 것이다. 다음 단계에서는 또다른 형태의 event Cache Events 대해서 살펴볼 것이다.

2015/04/08 12:52 2015/04/08 12:52
Trackback Address :: http://www.yongbi.net/trackback/673
[로그인][오픈아이디란?]
오픈아이디로만 댓글을 남길 수 있습니다
Name
Password
Homepage

Secret
< PREV |  1  |  ...  129  |  130  |  131  |  132  |  133  |  134  |  135  |  136  |  137  |  ...  566  |  NEXT >