Amazon
Serverless computing allowsyou to build and run
applications and services without thinking about servers.
Serverless applications don't require you to provision,
scale, and manage any servers. You can build them for
nearly any type of application or backend service, and
everything required to run and scale your application
with high availability is handled for you.
Microsoft
With serverless computing, developers rely on cloud-
based servers, infrastructure, and operating systems. The
fact is, even though it’s called serverless, servers are still
involved. But, as a fully managed service, the setup,
capacity planning, and server management are invisible
to you because they’re handled by the cloud provider. In
a traditional environment, developers must provision and
configure servers, install operating systems, and
continually manage the infrastructure. With a serverless
architecture, you’re free to create, manage, and deploy
apps that scale on demand—without worrying about
infrastructure.
Google
Serverless lets you write and deploy code without the
hassle of managing the underlying infrastructure. It
enhances developer productivity by helping focus on
what matters the most — building great applications and
abstracting away the rest. Zero server management, no
upfront provisioning, auto-scaling to meet traffic
demands, and paying only for the resources used are just
some of the benefits of serverless computing.
Wikipedia
Serverless computing is a cloud-computing execution
model in which the cloud provider acts as the server,
dynamically managing the allocation of machine
resources. Pricing is based on the actual amount of
resources consumed by an application, rather than on
pre-purchased units of capacity. It is a form of utility
computing.
Serverless 컴퓨팅 정의
4.
Serverless의 의미
• Serverless컴퓨팅의 개념
• 애플리케이션을 단일 기능(Function)의 클러스터로 분리하여
• 자동으로 관리되는 컴퓨팅 리소스 상에서 On-Demand로 실행하는 것
• Microservices의 확장
• Serverless는 사실 서버가 없지 않다 ☺
• 실제로는 워크로드를 처리하기 위해 서버가 필요
• 사용자가 서버를 관리, 유지보수, 프로비저닝 할 필요가 없다는 의미
• 클라우드 공급자가 모든 인프라를 관리해준다
• Serverless는 새로운 것이 아니다
• Public 하이퍼스케일 클라우드가 등장하면서 인기를 급 끌어 올렸다
Azure SignalR 서비스의차별점
• 성능(Performance)
• 확장성(Scalability)
• 다양한 백플레인(예: SQL Server, Redis Cache)까지 자동 확장
• 필요한 만큼 Unit만 추가하면 된다
• 현재 Standard 기준 100,000 Connection 지원
• 가용성(Availability)
• 99.9% Service-Level Agreement
• 그 밖에
• 웹 애플리케이션 개발은 필수조건이 아니다
• 서버리스 컴퓨팅 활용 가능
• WebSocket 연결의 부하 분산도 알아서 척척
29.
Flight Map: RealtimeMonitoring Dashboard
https://github.com/aspnet/AzureSignalR-samples/tree/master/samples/FlightMap
http://flightmap-demo1.azurewebsites.net/#
비행 지도 : 실시간 모니터링 대시보드
30.
Azure SignalR Service
여러분의앱과 리얼타임 통신을 수행할 수 있게 지원하는 관리되는 서비스
Client
Client
Client
Client
App
Server
Azure SignalR
Service
SignalR
SignalR
SignalR
SignalR
SignalR
SignalR
SignalR
SignalR
SignalR
SignalR
Send message
Store messages
Real-timemessages
Send messages
데모 시나리오
Serverless
Web Pages
Serverless
Backend
Serverless
Realtime
Messaging
Database for
Serverless
Almost
Azure SignalR ServiceSDK
<PackageReference Include="Microsoft.Azure.SignalR"
Version="1.0.0" />
ASP.NET Core 2.x based
.NET and JS
(Preview) Java client
그 밖에 다른 플랫폼도 추가될 예정
39.
마무리
• Azure는 훌륭한Serverless 포트폴리오를 제공한다
• 이제 동접 약 10만 정도의 Realtime Web은 이다
• 서버리스 아키텍처는 혼자서 고민하기에는 쉽지 않다