Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Azure service fabric

39 views

Published on

Azure service fabric

Published in: Software
  • Hi there! Get Your Professional Job-Winning Resume Here - Check our website! http://bit.ly/resumpro
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Azure service fabric

  1. 1. @himskim
  2. 2. Why, We are here
  3. 3. New PLATFORM is needed New ARCHITECTURE is needed CLOUD service is needed
  4. 4. Why do we need a new platform?
  5. 5. 하나.둘.셋 세고 있죠?  하나.둘.셋세고있죠?
  6. 6. 24 24
  7. 7. 노드 갯수 성능
  8. 8. Why Do we need a new architecture?
  9. 9. Why Do we need a new architecture?
  10. 10. Frontends StorageMiddle Tier • Stateless frontends • Stateless middle tier • Storage is the bottleneck • Latency • Throughput • Scalability • Horizontal calls are problematic • Data shipping (paradigm)
  11. 11. Frontends StorageMiddle Tier • Much better performance • Lost semantics of storage • Lost concurrency control • Horizontal calls are still problematic • Still data shipping (paradigm) Cache
  12. 12. 노드 갯수 속도 5 10 Non-linear Additional power does not scale well Speed-up can even fail
  13. 13. Why Do we need a cloud service?
  14. 14. 나도, 알려줘
  15. 15. 비슷해 보이는 녀석 if (microservice_architecture && actor_model && service_fabric) {
  16. 16. The microservices architecture
  17. 17. Componentization via Services Organized around Business Capabilities Decentralized Governance Decentralized Data Management Infrastructure Automation Design for failure Products not Projects Smart endpoints and dumb pipes Evolutionary Design
  18. 18. Monolithic application approach Microservices application approach • Multiple module in the same process • Module running in different process
  19. 19. • Single monolithic database • Tiers of specific technologies State in Monolithic approach State in Microservices approach • Graph of interconnected microservices • State typically scoped to the microservice • Variety of technologies used stateless services stateless services with separate stores stateful services stateless presentation services
  20. 20. • Scales by cloning the app on multiple servers/VMs/Containers Monolithic application approach Microservices application approach • A microservice application separates functionality into separate smaller services. • Scales out by deploying each service independently creating instances of these services across servers/VMs/containers • A monolith app contains domain specific functionality and is normally divided by functional layers such as web, business and data App 1 App 2App 1
  21. 21. • Stateless microservice • Stateful microservice
  22. 22. Microsoft Azure Service Fabric
  23. 23. Service FabricHigh Availability Hyper-Scale Hybrid Operations High Density Microservices Rolling Upgrades Stateful services Low Latency Fast startup & shutdown Container Orchestration & lifecycle management Replication & Failover Simple programming models Resource balancing Self-healingData Partitioning Automated Rollback Health Monitoring Placement Constraints Azure Private cloud Other clouds
  24. 24. Services built with Service Fabric
  25. 25. 300+ Service Fabric Preview Customers
  26. 26. Demo
  27. 27. Reliable Collections
  28. 28. • 상태가 있는 서비스를 손쉽게 만들 수 있음 • 클라우드 서비스에 적합하게 개선된 .NET Collection Collections • 단일 컴퓨터 • 단일 스레드 Concurrent Collections • 단일 컴퓨터 • 여러 스레드 Reliable Collections • 여러 컴퓨터 • 복제 (HA) • 영속적(신뢰할 수 있음) • 비동기 • 트랜젝션 지원
  29. 29. • 다수의 replica 사이에 신뢰할 수 있는 방법으로 데이터 복제 • Transaction을 통해 다수의 Collection에 대해 Atomic Operation 지원 • LINQ 지원 Reliable Collections IReliableQueue<T>IReliableDictionary<K,V>
  30. 30. Actor
  31. 31. Actor ASYNC ONLY STATE PERSISTENCE SINGLE THREAD EXECUTION
  32. 32. • Virtual
  33. 33. using (var fabricRuntime = FabricRuntime.Create()) { fabricRuntime.RegisterActor(typeof(HelloWorldActor)); public class HelloWorldActor : Actor, IHelloWorld { ... } public interface IHelloWorld : IActor { ... }
  34. 34. Demo
  35. 35. • Stateless service는 기존에 사용하던 ASP.NET, node.js, EXE 개발 기술을 이용하여 동일하게 개발 • 동시성 관리나 상태에 대한 트렌젝션 관리가 필요한 서비스들은 Stateful service로 개발 • Service와의 통신 기술은 무엇을 써도 무방 (Web API, WCF, [web]sockets, 등)
  36. 36. Azure Cloud Services (Web and Worker Roles) Azure Service Fabric (Stateless, stateful or Actor services) • VM 당 하나의 서비스 인스턴스 • Compute에 대한 사용 밀도가 낮음 • 배포와 업그레이드가 느림 • Scaling이나 복구 시간이 느림 • VM당 여러개의 microservice • Compute에 대한 사용 밀도가 높음 • 배포와 업그레이드가 빠름 • Scaling과 복구 시간이 빠름
  37. 37. Azure Other cloudsPrivate cloud Service Fabric Programming Models Service FabricScalability Availability Performance Lifecycle management Portability Monitoring
  38. 38. 발표자료 http://docs.com/himskim
  39. 39. Session Evaluations Visit http://aka.ms/cloud.seoul sign in to the Schedule Builder and select ‘My Evaluations’ to complete your Session Evaluations after each session. #MSCloudRoadshow

×