Page History
Tip |
---|
분산처리환경에서 단순화된 개발방법을 제시하는 AKKA 를 .net 을 문서화중에 있으며, 주로 C# 위주의 샘플코드로 진행이되나net에서 어떻게 활용을 할까? 고민하면서 akka.net 오픈진영 라이브러리를 학습하면서 문서화에 있습니다. 다음과 같은 컨셉순으로 정리하고 있습니다.
분산환경에서의 동시성 처리에대한 해결모델은 언어및 플랫폼에 종속적이지 않으며 AKKA는단지 몇가지 단순화된 라이브러리를 제공 해줄뿐 확장성+성능+안정성 모든 목표달성을 위해 직접 설계하고 작성해야 합니다분산환경에서의 동시성 처리에대한 해결모델은 오리지널 AKKA와 동일합니다. |
*ACTOR : 여러가지 개발 플래폼에서 도입 하기 시작하였으며, 분산 미들웨어에서 수많은 일을 하기위한, 능동적 메시지 객체
Akka
- Akka는 오픈 소스 툴킷으로 동시성과 분산 애플리케이션을 단순화하는 런타임이다.
- 동시성을 위한 여러 프로그래밍 모델을 지원하며, Erlang으로부터 영향을 받아 actor기반의 동시성이 두드러진다.
- Akka는 Java환경및 .net Framework에서 이용가능하며, Actor모델은 이제 대부분의 개발플래폼에서 라이브러리릍 통해 사용가능합니다.
AKKA에서 내세우는 강점
Tip | ||
---|---|---|
| ||
액터와 스트림을 사용하면 여러 서버에서 효율적으로 리소스를 사용하여 확장하고 확장하는 시스템을 구축 할 수 있는 개발 모델지원 |
Tip | ||
---|---|---|
| ||
장애가 발생할 경우,자가 치유되고 응답 성을 유지하는 시스템을 작성할 수 있는 개발 모델을 제시해줍니다. Resilient : 탄력적인 , 유연한 |
Tip | ||
---|---|---|
| ||
단일 기계에서 최대 초당 5 천만 메시지 처리 가능하며 메모리 힙 GB 당 250 만명의 액터생성가능합니다. |
Tip | |||||
---|---|---|---|---|---|
| |||||
단일 실패 지점이없는 분산 시스템. 로드 밸런싱 및 라우팅 노드. 클러스터 소싱을 사용한 이벤트 소싱 및 CQRS CRDT를 사용한 최종 일관성을위한 분산 데이터 프로그래밍 모델지원
|
Tip | |||||
---|---|---|---|---|---|
| |||||
성능에 있어서 역압력장치(backpressure) 사용으로, 비동기 비 차단 스트림을 모두 처리하려고함. 완전 비동기 및 스트리밍 HTTP 서버 및 클라이언트에서 마이크로 서비스를 구축하기위한 훌륭한 플랫폼을 제공합니다.
|
AKKA-Training에서 샘플코드 기능검증과 활용안을 준비중에있습니다.
키워드로 살펴본 AKKA가 가진 스택범위
Expand | ||
---|---|---|
| ||
|
Expand | ||
---|---|---|
| ||
|
Expand | ||
---|---|---|
| ||
|
Expand | ||
---|---|---|
| ||
|
Expand | ||
---|---|---|
| ||
|
Expand | ||
---|---|---|
| ||
액터모델을 도입한 개발 툴킷들 Akka : http://akka.io/ -Akka (Scala및 Java에서 사용가능) Akka.net : http://getakka.net/ ( JVM버젼을 닷넷 변환버젼) Erlang : http://erlang.org/doc/getting_started/conc_prog.html - Actor의 원조 Orleans : https://dotnet.github.io/orleans/ - MS에서도 Actor모델을 도입 TypeSafe CoduntR : https://www.lightbend.com/products/reactive-platform (종합선물 셋트로 몇가지 동일목표를 가진 플랫폼 파악가능) 그외 기타 정보 액터도입현황 : https://en.wikipedia.org/wiki/Actor_model#Actor_libraries_and_frameworks 국내도서 추천 : Akka 코딩 공작소 이곳 문서에서는 동시성처리에 대한 여러가지 내용을 참고하고있으며 주로 위 내용에 영향을 받아 정리중에 있습니다. |