2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend...

23
Parse.com MBaaS зйз пмбпрвдллыи backend? Sergey Sorokin Android developer Rosberry

Transcript of 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend...

Page 1: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Parse.com

MBaaS зйз пмбпрвдллыи backend?

Sergey SorokinAndroid developer

Rosberry

Page 2: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

MBaaS?

MBaaS - Mobile Backend as a service

• Backendless• Deployd• Firebase• Parse• etc.

Page 3: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Продукеия Parse.com

• Core• Push notifications• Analytics

Page 4: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Мобильные платформы

Page 5: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Push notifications and Analytics

Page 6: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core

Page 7: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core

Бажа галлыт:

• Class - рабйзуа ({"results":[{},{},{}]})• Object - жанзпь в рабйзуд

Пмйуфдлзд галлыт:

• Query - жаномп

Page 8: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Object

{

"objectId": "4K8Lt5MjWW“,

"createdAt": "2015-04-30T06:02:06.543Z",

"updatedAt": "2015-04-30T08:50:35.049Z",

"ACL": {}

}

Макпзкайьлыи оажкдо мбъдкра - 128 KBМакпзкайьлмд кмйзфдпрвм кйаппмв - 200

Page 9: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Object. Типы данных

• String• Number• Boolean• Array• Object• Date• ParseObject (PFObject)• ParseFile (PFFile)• ParseUser (PFUser)• ParseRelation (PFRelation)• Null

Page 10: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. User. Аутентификаеия

• Parse.com (email + наомйь)• Facebook• Twitter• Аурдлрзсзкаузя п зпнмйьжмвалздк

прмомллзт пдппзи (Google+, VK, LinkedIn etc)

Page 11: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. User class. User object

{

"username": “”, // Уникальное имя

"bcryptPassword": “”,

"email": “”, // Уникальный email

"emailVerified": “”,

"authData": “”, // Особые данные

"sessionToken": “”

}

Page 12: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. File object

Byte array

Parse server

File storage

Parse server

URL

File

Дм 10 Mb

Page 13: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. File object

{

"objectId": "lBF18m0FqR“,

"createdAt": "2015-05-06T08:50:35.049Z",

"updatedAt": "2015-05-06T08:50:35.049Z",

"imageFile": {

"__type": "File",

"name": “file_name.jpg",

"url": "http://files.parsetfss.com/generated_dir_name/file_name.jpg"

},

"user": {

"__type": "Pointer",

"className": "_User",

"objectId": "fm8ohfD0Tv"

}

}

Page 14: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Query

• Where (not) equal to• Where greater/less (or equal) than• Where (not) contained in• Order by ascending / descending• Count (рмйькм кмйзфдпрвм лаигдллыт мбъдкрмв)

Geo points• Where near (нм укмйфалзю 100 кзйь)• Where within kilometers/miles/geo box

Page 15: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Query. Огранижения

• Limit (нм укмйфалзю 100)• Skip (нм укмйфалзю 0)

Огоалзфдлзя• Макпзкайьлмд жлафдлзд limit - 1000• Макпзкайьлмд жлафдлзд skip - 10000• Заномп count - 160 / кзл гйя каегмгм

нозймедлзя

Page 16: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Cloud Code

JS

Page 17: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Cloud Code. Функеии

Parse.Cloud.define("averageStars", function(request, response) { var query = new Parse.Query("Review");

query.equalTo("movie", request.params.movie);

query.find({ // query.each()

success: function(results) {

var sum = 0;

for (var i = 0; i < results.length; ++i) {

sum += results[i].get("stars");

}

response.success(sum / results.length);

},

error: function() {

response.error("movie lookup failed");

}

});

});

Page 18: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Cloud Code. Функеии

• Mailgun• Mandrill• Moment• Parse Image• SendGrid• Stripe• Twilio• Underscore

Page 19: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Cloud Code. Триггеры

• beforeSave• afterSave• beforeDelete• afterDelete

Page 20: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Cloud Code. Огранижения

• Нд оабмрадр limit з skip• Водкя вынмйлдлзя сулкузз – какпзкук 15

пдкулг• Водкя вынмйлдлзя розггдоа – какпзкук 3

пдкулгы• Макпзкайьлмд кмйзфдпрвм мбъдкрмв,

кмрмомд кмедр бырь мбоабмралм в мглмк query – 500.000

Page 21: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Core. Background job

• Дмнупрзкмд водкя оабмры – гм 15 кзлур• Нд бмйьхд мнйафдллмгм кмйзфдпрва

background job мглмводкдллм (лзкакзт мфдодгди)

Page 22: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Эпилог

Оглмжлафлм га, дпйз:• Тмйькм аврмозжаузя з тоалдлзд лапромдк

нмйьжмвардйя (нйюп тоалдлзд лдбмйьхмгм кмйзфдпрва галлыт)

• Пух• Алайзрзка

Page 23: 2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса

Снапзбм жа влзкалзд!