Thesis Details

Asynchronous Task Processing in PCS Project

Bachelor's Thesis Student: Pospíšil Michal Academic Year: 2021/2022 Supervisor: Rogalewicz Adam, doc. Mgr., Ph.D.
Czech title
Asynchronní zpracování úloh v projektu PCS

The PCS project is a distributed application; therefore, many actions need a way to launch actions in remote application instances. The goal of this thesis is to implement a minimum viable solution for executing actions through a REST API that uses the asynchronous programming model. However, actions themselves are not implemented asynchronously and cannot be invoked directly from asynchronous code. The REST API is connected to an asynchronous scheduler that circumvents this limitation by launching actions in a process pool. The scheduler hides actions behind an abstraction layer of tasks that store information about their status and results. All the actions need to send real-time updates to the clients. This is made possible via a one-way communication channel from the actions to the scheduler that updates the tasks. The REST API provides methods for creating, getting results, and killing tasks. Clients can periodically check the task status and show these updates to the user. Clients can also choose to kill tasks that take too long to finish.


cluster, high-availability cluster, PCS, Pacemaker/Corosync Configuration System, asynchronous programming, AsyncIO, REST, REST API, Tornado

Degree Programme
defended, grade B
13 June 2022
Janoušek Vladimír, doc. Ing., Ph.D. (DITS FIT BUT), předseda
Burget Lukáš, doc. Ing., Ph.D. (DCGM FIT BUT), člen
Honzík Jan M., prof. Ing., CSc. (DIFS FIT BUT), člen
Mrázek Vojtěch, Ing., Ph.D. (DCSY FIT BUT), člen
Rozman Jaroslav, Ing., Ph.D. (DITS FIT BUT), člen
POSPÍŠIL, Michal. Asynchronous Task Processing in PCS Project. Brno, 2022. Bachelor's Thesis. Brno University of Technology, Faculty of Information Technology. 2022-06-13. Supervised by Rogalewicz Adam. Available from:
    author = "Michal Posp\'{i}\v{s}il",
    type = "Bachelor's thesis",
    title = "Asynchronous Task Processing in PCS Project",
    school = "Brno University of Technology, Faculty of Information Technology",
    year = 2022,
    location = "Brno, CZ",
    language = "english",
    url = ""
Back to top