Organization of serverless computing for multi-platworm clients

Authors

  • Vitalii Pavelko
  • Oleg Volkovskyy

DOI:

https://doi.org/10.34185/1562-9945-5-124-2019-04

Keywords:

безсерверні системи обчислень, синхронізація сесій різноплатформних пристроїв, знімки стану об'єкта

Abstract

Growing of interest to serverless have leaded to extending ability of serverless. But development of this software has many problems such as:
- there are not ability to autorun extended functional because application should be implemented according to serverless architecture;
- serverless doesn’t have API for efficient sync;
- serverless doesn’t have global trigger for saving history of object changes.
The main goal of this article is resolving of Parse Server issue with autorun of new functional.
The systemic and analytic methods were used during researching.
This article proposes the sync efficient algorithms for multi-platform devices and the principles of saving changes of object states related to systems which was implemented as serverless solution via BaaS model. Patterns such as decorator, strategy, event-sourcing, builder, factory were used for resolving this task. Also, prototype-oriented principle was used. Parse Server was used as BaaS provider. These algorithms were implemented: ChangeLogSpy – for saving objects snapshots without adding additional logic for the object class; SyncProvider – implementation of efficient session synchronization for multiplatform clients; GetAllResultsForQuery - implementation of algorithm for async fetching all query results.

References

Ryan Linn, Athlas Guides: Sync Efficient [Електронний ресурс]. Режим доступу: https://atlasguides.com/parse-sync-efficient/

Parse Cloud Code Simple [Електронний ресурс]. Режим доступу: https://www.back4app.com/

Parse Cloud Code Hell [Електронний ресурс]. Режим доступу: https://www.eidel.io/2015/11/24/parse-com-cloud-code-hell/

Parse Platform. Docs - [Електронний ресурс]. Режим доступу: https://docs.parseplatform.org/cloudcode/guide/

Published

2019-11-25