본문 바로가기

반응형

event driven

(2)
Leader/Follower pattern 얼마전에 libevent가 threadsafe 하지 않다는 글을 대충 번역 해서 올렸더니, 지인이 leader/follower pattern이라는 것을 소개 해줬다. 인터넷 검색 결과 ACE framework에서 사용 되는 서버패턴의 일종이라는데 아직 구현을 해보지 않아서 성능이 얼마나 나올는지는 장담하지 못한다. 내가 구현 하려고 했던 형식은 이벤트(accept/read ..etc)를 감시하는 thread가 하나 있고, 이벤트가 발생하면 event queue에 그 이벤트들을 집어 넣는다. 그럼 event queue 반대편의 worker thread들이 그 이벤트에 맞는 핸들링을 하는 구조 였는데 오버헤드가 많아서 실질적으로 사용하기는 다소 무리가 있는 형식이었다. 그에 반에 leader/follower..
libevent and multithread /** libevet를 멀티 쓰레드 환경에서 사용코자 했는데, 이것이 생각 처럼 동작 하지 않았다. connection이 하나만 들어 왔을 때는 정상동작 했지만, 둘 이 상이되면서 부터는 event_dispatch() 에서 1을 리턴(set 되어 있는 이벤트 가 없다라는 의미)하면서 계속 종료 되었다. 혹시나 싶어 libevent의 멀티 쓰레드 환경에 대해 찾아 보니 아래와 같은 글이 있어 짧은 영어 실력이나마 번역을 해 보았다. 혹시나 누군가가 잘 못된 내용을 진실로 받아 들이고 그걸 다른 사람에게 진실인양 전파 한다면 세상에 잘못된 지식들이 판치게 되고, 지식을 추구하 는 사람들에게 있어 그것만큼 나쁜 일이 없다. 아래의 글 중 잘 못된 내용이 있다면 언제든지 kukuta@gmail.com으로 알 려..

반응형