26
Poštar zvoni dvaput – dostava podataka u Azureu Luka Lovošević, Antonio Faletar

(ATD10) Postar zvoni dvaput - dostava podataka u Azureu

Embed Size (px)

Citation preview

Poštar zvoni dvaput – dostava podataka u Azureu

Luka Lovošević, Antonio Faletar

Razmjena podataka u AzureuKako efikasno komunicirati između aplikacija i sustava

Enterprise Application Integration

Skalabilno

Fleksibilno i jednostavno za korištenje

Asinkrono

Loosely coupled

Cross platform

Azure Queue StorageRed (iako ne garantira FIFO), poruke imaju TTL

Dodar za velike količine (malih) podataka

REST-based, cross platform pristup

Sve akcije se logiraju

Tradicionalno se koristi za komunikaciju između web i worker rola

Asinkrono izvođenje zadataka (backlog), workflow, itd.

Povoljan

Arhitektura

6

DEMOAzure Queue

Storage

Azure Service Bus

Sabirnica za razmjenu podataka i komunikaciju putem poruka

Queues za asinkronu komunikaciju – transakcije, unlimited TTL, …

Topics / subscriptions za notifikacije na evente

Relay za on-premise pristup (dvosmjerno)

Event hubs

HTTPS/AMQP (binary) podrška – dostupno za puno platformi

Kompatibilno sa Windows Server Service Bus

ArhitekturaQueueing

PubSub

Kompozicije

Halo – procesiranje statistika

Halo Gateway Role Halo Backend Role

XBox

XBox

XBox

XBox

Xbox Live

Devices

Game Stats

Devices

Leaderboard

Service Bus Queues

XBOX One – NFL / ESPN

Service Bus Topics

Analytics

Dashboards

Xbox Backend (Linux – Storm)

Xbox Backend Role (HDInsight)

Xbox Backend Role

Xbox Backend Role (Az Table)

11

DEMOAzure Service

Bus

Azure Notification HubsPush notifikacije

Jednostavno za postaviti, ne treba voditi računa o prijavljenim uređajima

Cross platform – Windows Phone, iOS, Android, Kindle…, .NET, Java, PHP, Node, …

Tagovi i templates – nije sve za svakoga

Skalabilno (milijuni uređaja), multicast, unicast, scheduled notifikacije

Telemetrija i API

Scenariji – breaking news, update, posebne ponude, sastanci, promjene rezervacija, bankarstvo, …

ArhitekturaJednokratni setup1. Kreiranje Notification Huba

Registracija2. Klijentska aplikacija dobiva handle od

PNS-a

3. Klijentska aplikacija se registrira sa handleom kod Notification Huba

Slanje notifikacije4. Back-end šalje poruku na Notification

Hub

5. Notification Hub šalje poruku do svakog PNS-a

APNsWNS

Notification Hub

App back-end

iOS app Windows app

MPNS

GCM

ADM

Tagovi

Tagovi za filtriranje sadržaja1. Klijentska aplikacija može registrirati skup tagova

2. Tagovi su stringovi

3. Back-end može targetirati klijente koji „slušaju” na isti tag

Mogu se koristiti zaStvaranje interesnih grupa, npr.:

- Pratiti band: tag “followband:Beatles”

- Pratiti korisnika: tag “followuser:Alice”

Tagirati uređaj za specifičnog korisnika

(npr. preko user ID-a)

Notification Hub

App back-end

Tag:”Beatles”Tag:”Wailers”

Tag:”Beatles”

15

DEMOAzure Notification

Hubs

Azure Event HubsInternet of Things scenarij (Halo, smart devices, …)

Milijuni evenata u sekundi, GB po sekundi, paralelizam, security

Publish-Subscribe pattern

Buffer prema subscriberima, retention policy do 30 dana

HTTPS/AMQP podrška – dostupno za .NET, C, Javu, Python, Ruby, …

Masivno procesiranje evenata – integracija sa Apache Storm i Azure Stream Analytics

Paas – Pay as you go model

Arhitektura

Izvori Cloud usluge

Storage & Analytics

Custom Code & 3rd Party Services

Web/Mobile User Interfaces

Integration Services

Event Hub

SkalabilnoManagedInteroperabilnoSigurno

Arhitektura

Izvori podataka

Azure Event Hub

> 1M izvora> 1GB/sec propusnost

Do 32 particije ili više na zahtjev

Part

icije

Direct

PartitionKeyHash

Consumer

Group(s)

Receivers

Event Processor Host

IEventProcessor

19

DEMOAzure Event

Hubs

Azure BizTalk ServicesBizTalk 2013 kao PaaS

Managed, ne treba ga administrirati, SLA

Bridge-based

Adapteri za HTTP, HTTPS, FTP, REST, WCF, Service Bus, SAP, Oracle EBS, SQL Server, …

Hybrid konekcije (free) – npr. za povezivanje Azure Web Sites ili Mobile Services sa lokalnim SQL Serverom

B2B komunikacija, EDIFACT, TPM

Internet of Things

Arhitektura

Applications ServersMainframe Databases

Microsoft Azure

Partners

SaaSapps

BizTalk Services

Osnovni konceptiBridgesTPM

Visual

Studio

PowerShell

Portal

Artifacts

Transforms

Schemas

Assemblies

Partnership

Profiles

Agreements

Partners Certificates

Xml One-Way

EDI X12

Pass-Through

Monitoring Store

Config Store

Tracking Store

Xml Request

Osnovni koncepti

Bridge – jedinica za procesiranje poruka: Izvori: Od kuda poruka dolazi

Pipeline: Procesira poruku [Flat file, XML, Pass-through] (Validate, Enrich, Transform, Route)

Odredišta: Gdje se poruka treba poslati

Osnovna jedinica za integraciju

Bridge

Pipeline

V E T R

Poruke

Izvori

FTP/S

HTTP

SFTP

Odredišta

Service Bus

Web Service

FTP/S

HTTP

Blob

SFTP

24

DEMOAzure BizTalk

Services

Za kraj…

Ima toga još – Azure SQL, IaaS virtualke (BizTalk, SQL Server Broker, itd.), Azure File Service, Azure Data Factory (za ETL), …

Puno opcija

Vagati između kompleksnosti, cijene i lakoće održavanja

Pitanja?

© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.