하젤케스트 2

[Hazelcast]Java concurrent lock 구현하기

Hazelcast Lock 하젤케스트에서 사용하는 ILock은 java.util.concurrent.locks.Lock 의 상속구현체이다. 즉, 모든 클러스터에서 네트워크상에 이상이 없는한, lock이 잡힌 critical section은 한번에 한 쓰레드만 도는 것이 보증된다. Lock 구현은 매우 신경써서 하지 않으면 문제점이 바로 생겨날 가능성이 있으므로 주의하여 구현해야만 한다. Try-catch구문을 사용하여 Lock 사용하기 lock안쪽 구문은 반드시 try-catch 구문을 사용해야한다. 만약 critical section에서 에러가 났을때 unlock 가능하도록 도와주기 때문이다. 또한 lock구문에서 에러났을때 unlock되는 것을 막기 위해 lock method의 밖에도 try-catc..

IMDG 소개 및 하젤케스트 오픈소스 솔루션 소개

IMDG가 필요한 이유?일반적인 1 server, 1 application 구조에서는 memory상에 자신이 쓰고자 하는 자료구조(map, lock, list 등)를 올려두고 쓰면된다. 그림. 일반적인 1 server, 1application 구조 그러나.. 만약 *(many) server, *(many) application 구조에서 특정 자료구조(map, lock, list 등)를 공유해서 사용하고 싶다면 In-Memory Data Grid가 그 해법이다. 그 중에서 추천하는 것은 JVM위에서 돌아가는 Hazelcast를 강추한다. 그림. Hazelcast(IMDG)를 사용하여 자료구조를 공유하여 동시에 사용가능 IMDG란?IMDG : In memory data grid더 빠른 결과를 제공하기 위한 ..