Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- CORDA
- 파이썬 데이터분석
- 파이썬 머신러닝
- 스칼라 강좌
- 안드로이드 웹뷰
- Play2 로 웹 개발
- Golang
- play 강좌
- 스위프트
- akka 강좌
- play2 강좌
- 스칼라
- 하이브리드앱
- Actor
- 파이썬 동시성
- 플레이프레임워크
- 블록체인
- 스칼라 동시성
- Hyperledger fabric gossip protocol
- 주키퍼
- Adapter 패턴
- 이더리움
- 하이퍼레저 패브릭
- 파이썬
- 엔터프라이즈 블록체인
- Play2
- 그라파나
- Akka
- 파이썬 강좌
- hyperledger fabric
Archives
- Today
- Total
HAMA 블로그
Vert.x 의 Thread Pool & 이벤트루프 인사이드 본문
쓰레드풀
Vert.x 는 세가지 타입의 쓰레드 풀을 가진다.
- Acceptor: 보통 Socket 통신에 사용되는 그 accept 쓰레드. 하나의 쓰레드가 하나의 포트에 대하여 생성된다.
- Event Loops : Run루프와 같은데 CPU 코어개수와 같게 생성. 이벤트가 발생했을때, 상응하는 핸들러가 실행된다. 실행시 수행되어지면 , 이벤트루프는 다른 이벤트를 빠르게 읽는것을 되풀이한다.
- Background : 이벤트루프가 핸들러를 실행하거나 추가적인 쓰레드가 요구되어질때 사용된다.
사용자는 vertx.backgroundPoolSize 나 환경설정으로 쓰레드의 갯수를 설정할수있다.디폴트는 20
너무많은 쓰레드는 컨텍스트스위칭을 발생하므로 조심해야한다.
이벤트 루프틑 디테일하게 보면 그것은 Netty NioWorker 를 사용하는데 모든 핸들러들은 이벤트루프
위에 실행하는 Verticles 에 의해 구체화된다. 각각의 Verticles 객체는 그것의 특별한 NioWorker 를 가지고있다. 그래서 Verticle 객체는 항상 특정쓰레드위에서 실행된다는걸 보장한다. 그러므로 Verticles 은 쓰레드 세이프하게 쓰여질수있다.
http://www.cubrid.org/blog/dev-platform/understanding-vertx-architecture-part-2/
'Vert.x' 카테고리의 다른 글
Vert.x 컴포넌트들의 이해 (0) | 2015.05.19 |
---|---|
Vert.x 의 Hazelcast 사용이유 (0) | 2015.05.19 |
Vert.x + playframework = playVertX (0) | 2015.05.16 |
Vert.x 와 Akka 의 차이 ?? (0) | 2015.05.16 |
Vert.x (mod-socket-io) & Socket.io 를 이용한 PUSH (0) | 2015.05.07 |
Comments