맛만 보자 Finagle이란

Preview:

DESCRIPTION

맛만 보자 Finagle이란

Citation preview

맛만 보자 Finagle이란?Jeff Lee

변해가는 주변 환경

멀티코어

CPU 클럭 상승의 한계분산환경

ScaleUp의 한계

클라우드 컴퓨팅 활성화

현재 최선의 방법

Actor Model다른 액터에 한정된 개수의 메세지를 보낼 수 있다. 유한한 개수의 액터를 만들어 낼 수 있다. 다른 액터가 받을 메세지에 수반될 행동(behavior)을 지정 할 수 있다. 이런 일들이 동시적으로 진행되는데 있어 미리 정해진 순서는 없다.

- 칼 휴이트(1973)

Actor Model

현실에 액터(사람)를 상상하면 이해하기 편하다.- 사람은 생각을 공유 못하고 전자우편으로 소통한다.

- 액터는 이름, 행동, 의사소통으로 구성

Message passingNo shared memory

Actor Model

Twitter FinagleFinagle[finéigl] - 피네이글

extensible asynchronous (reactive) RPC for the JVM

uniform client and server APIs for several protocols

high performance and concurrency

written in Scala

Multiple protocolsHTTPMemcachedRedisProtobufThriftMySQLmDNS...

Twitter Finagle - 서비스 구조

Apache Thriftframework, for scalable cross-language services development

code generation engine

C++, Java, Python, PHP, Ruby, Erlang,Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml,Delphi …

Developed by Facebook, opensourced in April 2007

ping.thrift

scala server

scala server

scala client

scala client

참고자료.Finagle GitHubhttps://github.com/twitter/finagle

Finagle Guidehttp://twitter.github.io/finagle/guide/index.html

Scala School - 피네이글(Finagle) 소개https://twitter.github.io/scala_school/ko/finagle.html

SOA with Thrift and Finaglehttp://www.slideshare.net/bancek/soa-with-thrift-and-finagle

Recommended