Tutorial: Object as a Service (OaaS) Serverless Cloud Computing Paradigm
<|reference_start|>Tutorial: Object as a Service (OaaS) Serverless Cloud Computing Paradigm: While the first generation of cloud computing systems mitigated the job of system administrators, the next generation of cloud computing systems is emerging to mitigate the burden for cloud developers -- facilitating the development of cloud-native applications. This paradigm shift is primarily happening by offering higher-level serverless abstractions, such as Function as a Service (FaaS). Although FaaS has successfully abstracted developers from the cloud resource management details, it falls short in abstracting the management of both data (i.e., state) and the non-functional aspects, such as Quality of Service (QoS) requirements. The lack of such abstractions implies developer intervention and is counterproductive to the objective of mitigating the burden of cloud-native application development. To further streamline cloud-native application development, we present Object-as-a-Service (OaaS) -- a serverless paradigm that borrows the object-oriented programming concepts to encapsulate application logic and data in addition to non-functional requirements into a single deployment package, thereby streamlining provider-agnostic cloud-native application development. We realized the OaaS paradigm through the development of an open-source platform called Oparaca. In this tutorial, we will present the concept and design of the OaaS paradigm and its implementation -- the Oparaca platform. Then, we give a tutorial on developing and deploying the application on the Oparaca platform and discuss its benefits and its optimal configurations to avoid potential overheads.<|reference_end|>
@article{lertpongrujikorn2024tutorial:,
    title={Tutorial: Object as a Service (OaaS) Serverless Cloud Computing Paradigm},
    author={Pawissanutt Lertpongrujikorn, Mohsen Amini Salehi},
    journal={Proceedings of the 44th International Conference on Distributed
  Computing Systems Workshops (ICDCSW), Jersey City, New Jersey, July 2024},
    year={2024},
    archivePrefix={arXiv},
    eprint={2407.17391},
    primaryClass={cs.DC}
}