Slide 1

Slide 1 text

Macoun ⌘

Slide 2

Slide 2 text

The Ultimate Parse Survival Guide Manuela Rink

Slide 3

Slide 3 text

iOS Developer / Architect Technical Evangelist Über mich

Slide 4

Slide 4 text

Kapitel 1
 Why a Survival Guide
 Parse dankt ab! Kapitel 3
 Off to new shores
 Portierung und Migration Kapitel 2
 We proudly present
 Die Alternativen Das Finale
 Taking over the world
 Dynamische Skalierung Ablauf Paaaarse! Parzzz! Parsee!

Slide 5

Slide 5 text

Kapitel 1 
 Why a Survival Guide
 Parse dankt ab!

Slide 6

Slide 6 text

Parse - Was ist es?
 (es leuchtet blau) •mBaaS •einfach und unkompliziert •One-Stop-Shop •(im Vergleich) kostengünstig

Slide 7

Slide 7 text

• Mobile SDKs • Registrierung und Login • (Offline) Daten-Synchronisierung • Push Notifications • Eigene API Endpunkte • User Verwaltung • Installationsmanagement • Tabellen & APIs (Cloud Code) • Cross Platform Push Notifications • Data Operation Hooks Parse - Was ist es?
 Funktionsumfang Client Server

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

kthxbye! Anfang Januar 2016 Mail von Parse

Slide 10

Slide 10 text

kthxbye! Anfang Januar 2016 Mail von Parse

Slide 11

Slide 11 text

kthxbye! “[…] difficult announcement to make […]”

Slide 12

Slide 12 text

kthxbye! “[…] difficult announcement to make […]”

Slide 13

Slide 13 text

kthxbye! “[…] Parse will be fully retired after a year-long period […]”

Slide 14

Slide 14 text

kthxbye! “[…] Parse will be fully retired after a year-long period […]”

Slide 15

Slide 15 text

kthxbye! “[…] releasing a database migration tool […]” “[…] releasing the open source Parse Server […]”

Slide 16

Slide 16 text

kthxbye! “[…] releasing a database migration tool […]” “[…] releasing the open source Parse Server […]”

Slide 17

Slide 17 text

kthxbye!

Slide 18

Slide 18 text

kthxbye!

Slide 19

Slide 19 text

Hier können wir nicht bleiben… Was nun?

Slide 20

Slide 20 text

Kapitel 2 
 We proudly present
 Die Alternativen

Slide 21

Slide 21 text

Parse Goes open source https://parseplatform.github.io/


Slide 22

Slide 22 text

• Teils Kombination von Services notwendig • Komplexe Konfiguration • Kostenintensiv bei produktiver Nutzung • Teils mangelhafte mobile SDKs Stabiles Business? Cumulus Batch Backendless Urban Airship AWS/Azure Firebase Azure AWS & &

Slide 23

Slide 23 text

seit 29. März 2016 “Parse Server 
 on managed Azure services” im Azure Marketplace • Parse Server 
 Implementierung speziell für Azure App Services • Azure Storage 
 File/Blob/Table/Queue Speicher • DocumentDB 
 NoSQL Datenbank • Azure Notification Hub 
 Push Notifications • Parse Dashboard 
 Daten/User/Installation/Push Verwaltung

Slide 24

Slide 24 text

… und mittlerweile funktioniert’s auch

Slide 25

Slide 25 text

Kapitel 3 
 Off to new shores
 Portierung und Migration

Slide 26

Slide 26 text

Schritt 1 Provisionierung 
 Solution Template aus Azure Marketplace

Slide 27

Slide 27 text

Schritt 2 Parse Server 
 Dashboard & Cloud Code

Slide 28

Slide 28 text

Schritt 3 Datenbank Migration
 Parse Classes nach Azure DocumentDB (MongoDB) migrieren Parse.com Dashboard

Slide 29

Slide 29 text

Schritt 3 Datenbank Migration
 Parse Classes nach Azure DocumentDB (MongoDB) migrieren Parse.com Dashboard

Slide 30

Slide 30 text

Schritt 3 Datenbank Migration
 Parse Classes nach Azure DocumentDB (MongoDB) migrieren Parse.com Dashboard

Slide 31

Slide 31 text

Schritt 3 Datenbank Migration
 Parse Classes nach Azure DocumentDB (MongoDB) migrieren Parse.com Dashboard Parse Server 
 Dashboard on Azure

Slide 32

Slide 32 text

Schritt 4 Manuelle Cloud Code Migration
 JS Code in Azure Parse Server Instanz kopieren Parse.com Cloud Code console Visual Studio Online - Monaco console

Slide 33

Slide 33 text

Schritt 5 Push Notifications Notification Hub: Konfiguration und Testing

Slide 34

Slide 34 text

Schritt 5 Push Notifications Notification Hub: Konfiguration und Testing

Slide 35

Slide 35 text

Schritt 5 Push Notifications Notification Hub: Konfiguration und Testing NUR Zertifikat als .p12 MIT Passwort exportieren KEINEN Key hinzufügen

Slide 36

Slide 36 text

Zwischenstopp Was fehlt noch? Provisionierung von Server und Diensten DB Migration JavaScript Cloud Code Migration Tweaks in Clientcode … und im Servercode Push Notification Konfiguration

Slide 37

Slide 37 text

Schritt 6 Clientseitige Codeanpassungen
 Version 1.8.4 Version 1.14.2 Init gegen parse.com Init gegen Azure Parse Server Konkrete Implementierung

Slide 38

Slide 38 text

Schritt 7.1 Serverseitige Codeanpassungen


Slide 39

Slide 39 text

Schritt 7.1 Serverseitige Codeanpassungen


Slide 40

Slide 40 text

Schritt 7.2 Serverseitige Codeanpassungen


Slide 41

Slide 41 text

Schritt 7.2 Serverseitige Codeanpassungen


Slide 42

Slide 42 text

Zwischenstopp Was fehlt noch? Provisionierung von Server und Diensten DB Migration JavaScript Cloud Code Migration Push Notification Konfiguration Tweaks in Clientcode Tweaks in Servercode

Slide 43

Slide 43 text

Zwischenstopp Was fehlt noch? Provisionierung von Server und Diensten DB Migration JavaScript Cloud Code Migration Push Notification Konfiguration Tweaks in Clientcode Tweaks in Servercode Migration auf Azure DONE!

Slide 44

Slide 44 text

Y A X B Azure Dive In Demo

Slide 45

Slide 45 text

Das Finale 
 Taking over the world
 Dynamische Skalierung

Slide 46

Slide 46 text

Was geht? • Gratis bis Epic Premium • jederzeit anpassbar • Kostenkontrolle

Slide 47

Slide 47 text

Skalierung F1 B1 S2 P3 S2 S2 S2 S2 S2 S2 S2 S2 S2 Azure Scale-Up Azure Scale-Out

Slide 48

Slide 48 text

Skalierung
 scale-up • breite Variation an Maschinen • Pay-as-you-go • dynamisch änderbar • per Klick im Portal • automatisiert über Custom-Scripts)


Slide 49

Slide 49 text

Skalierung
 scale-out • Je nach Plan Instanzen duplizierbar
 Basic = 3 bis Premium = 20 Instanzen • Pay-as-you-go • dynamisch änderbar • per Klick im Portal • automatisiert über Custom-Scripts)


Slide 50

Slide 50 text

Das Wort zum Schluss

Slide 51

Slide 51 text

Geschafft! Dienste in Azure provisioniert Parse Server aufgesetzt DB und CloudCode nach Azure migriert Push Notifications konfiguriert Anpassungen in Client- und Servercode

Slide 52

Slide 52 text

Aber! Kosten im Auge behalten Dienste selbst verwalten Zustand und Wartung der Parse SDKs

Slide 53

Slide 53 text

Fragen?

Slide 54

Slide 54 text

Merci! sagt Manu Rink Technical Evangelist [email protected] @codeprincess

Slide 55

Slide 55 text

Das Notwendige Quellenverzeichnis 
 Zombie Icons
 Icon made by Freepik from www.flaticon.com http://creativecommons.org/licenses/by/3.0 Free Badge Icons made by Roundicons from www.flaticon.com http://creativecommons.org/licenses/by/3.0 Parse Logo von parse.com Parse & Microsoft Azure Logo von Microsoft Illustrationen (bunt) von Microsoft Screenshots von Azure & jeglichem Code Manuela Rink Implementierungscode Manuela Rink App Store Logos Herzrasen: https://itunes.apple.com/de/app/fussball-live-ticker-herzrasen/id529120477?l=en&mt=8 Fleek: https://itunes.apple.com/de/app/fleek-social-fashion-shopping/id1065471885?l=en&mt=8 iX: https://itunes.apple.com/de/app/ix-magazin/id413624041?l=en&mt=8 Mac&i: https://itunes.apple.com/de/app/mac-i/id424199222?l=en&mt=8 c’t: https://itunes.apple.com/de/app/ct-magazin/id380266921?l=en&mt=8 7TV: https://itunes.apple.com/de/app/7tv-mediathek-tv-livestream/id826510222?l=en&mt=8

Slide 56

Slide 56 text

Macoun ⌘