일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 주키퍼
- Actor
- 플레이프레임워크
- 블록체인
- akka 강좌
- 파이썬 머신러닝
- 스칼라 강좌
- 스칼라 동시성
- 하이브리드앱
- 파이썬 데이터분석
- play2 강좌
- hyperledger fabric
- 하이퍼레저 패브릭
- 스위프트
- 그라파나
- 이더리움
- 안드로이드 웹뷰
- 스칼라
- play 강좌
- 파이썬 동시성
- Adapter 패턴
- Play2
- CORDA
- 엔터프라이즈 블록체인
- Akka
- Hyperledger fabric gossip protocol
- Golang
- Play2 로 웹 개발
- 파이썬
- 파이썬 강좌
- Today
- Total
HAMA 블로그
Vert.x 와 Akka 의 차이 ?? 본문
Vert.x 와 Akka 는 아주 비슷한 점이 많다. 액터/리액티브 모델이란 점에서 둘은 앞으로 계속 동반자이자 경쟁자로
살아 갈 것으로 보인다. 따라서 둘을 비교 해봐야 겠는데 아직 내가 그럴 경험은 없으니 남의 시야를 통해 살펴본다.
먼저 스택 오버플로우에서 Vert.x vs Akka 로 검색해보니 다음과 같은 글이 나온다.
http://stackoverflow.com/questions/21481238/difference-in-message-passing-model-of-akka-and-vert-x
정리하면
외견적인 모습으로 둘은 매우 비슷하긴한데 비록 내 개인적인 생각일지 몰라도 Vert.x 는 Akka 보다는
더 메세지큐 미들웨어들과 개념이 비슷한거 같다. Vert.x 의 topology 는 좀 더 평면적인데 Verticle 은
다른 Verticle 과 메세지를 공유하고 응답을 받어. 대신 Akka 는 좀 더 tree 와 비슷하지.
Vert.x 는 대중적인 여러 언어들사이에서 더 나은 상호운용성을 가질수있는데 , 이것은 나한테 매우
중요한 선택포인트야. 니가 메세지큐 시스템들과 함께 액터를 같이 사용할 필요가 있을때 그리고
좀더 복잡성을 다룰필요가있을때 Vert.x 는 그것을 좀더 간단하고 우아하게 다를수있게 한다.
그래서 답은 흠흠 어느게 더 낫냐? 그건 그때 그때 달라요 이다.
Vert.x 가 더 완전한 솔루션이라는걸 고려해야해. tcp, http server, routing, websocket 같은거
지원하니깐 저런건 꽤나 놀랍지 암튼 졸라 full stack 이야. api 도 매우 깔끔하지. 만약 네가 akka 를
선택한다면 넌 play, xitrum o spray 같은 framework 가 필요할것야, 개인적으로 난 별로지만 ~
또한 기억해둘건 vert.x 는 꽉 막힌 플랫폼이 아니란거야, 넌 vert.x 를 akka 또는 kafak 를 같이 쓸수 있
어. 예를 들어, 오버헤드없이 시스템의 부분들을 분리하는 방법을 Verticle 을 이용해 꽤나 간단하게
만들지. 살랴살랴~
뭐 별로 큰 도움이 될거 같진 않은 글이다 ;;
잡스런 기능들이 필요하면 Vert.x / 순수한 Actor 로서의 기능이 필요하면 Akka ??
근데 Akka 도 잡스러운(?) 기능이 점점 많아지고 있습니다. akka.io 에 가보면 많은 내용을 볼 수 있겠다.
Akka 도 액터간 통신도 가능하지만 TCP와 HTTP 를 지원하니 그 자체 만으로 웹서비스를 제공 할 수 있지만
Akka 기반의 웹프레임워크인 플레이2를 사용하는 편인거 같다. Vert.x는 그에 비해 그 자체만으로 웹서비스 풀스택을
구현하는게 좀 더 편한듯..
다음은 인포큐에서 진행한 Vert.x 의 창조자의 인터뷰에서 발췌한 글을 살펴보자. 원문은 요기
인포큐 : 스칼라와 아카에 대한 생각은 어떤가요?
팀폭스: 스칼라의 파워에 대해서 존경하고 매우 좋아합니다. 스칼라를 만들어 가는 사람들에 대해서도 마찬가지구요. 나에게 스칼라의 주요 문제는 너무 어렵다는것입니다. 많은 것들을 배우고 익숙해져야 하는데 자바같은 메인스트림이 결코 될 수 없을 거에요. 뭐 그렇지만 님들이 엄청 똑똑한 팀을 가지고 있고 스칼라를 잘 다룰 수 있다면 스칼라는 매우 좋은 선택이 될 거라고 봅니다.
아카는 뛰어난 시스템입니다. 이것도 내가 매우 존중하고 있어요. 어떤 부분에서는 둘이 매우 비슷합니다. Vert.x 는 "액터 같은" 접근법을 동시성에 있어서 가지고 있죠. 우리도 데이터를공유하는 변경 가능성에 대해 피하려고 하고 있어요. 상태변경이 없는 순수성을 지향하죠. 새로운 리액티브 스트림 "표준" 을 이용하는데 Vert.x와 Akka는 상부 상조 할 것입니다. 양쪽 모두 동일한 Zeitgeist (시대정신) 을 가지고 있어요. 어떤 맥락에서는~
나는 이 둘이 둘 중하나만 택해야 한다고 보지 않습니다. 서로 같이 사용할 수 있을거에요.
꽤 괜찮은 탄력성 좋은 리액티브의 길로 가는 길에서 이 둘은 좋은 길동무가 될 것입니다.
역시나 뭐 별거 없네요 ㅎㅎ
'Vert.x' 카테고리의 다른 글
Vert.x 컴포넌트들의 이해 (0) | 2015.05.19 |
---|---|
Vert.x 의 Hazelcast 사용이유 (0) | 2015.05.19 |
Vert.x 의 Thread Pool & 이벤트루프 인사이드 (0) | 2015.05.19 |
Vert.x + playframework = playVertX (0) | 2015.05.16 |
Vert.x (mod-socket-io) & Socket.io 를 이용한 PUSH (0) | 2015.05.07 |