# An Experimental Performance Evaluation of Cloud-API-Based Applications
## 1 Introduction  
The advanced usability and popularity of cloud computing encourage developers to intensively investigate its environment. Evaluating the performance of several existing cloud platforms assists consumers' decisions regarding the optimal environment option [1]. Cloud computing has introduced scalable and elastic network resources that are offered as services through the Internet. The information, data, and shared resources are provided to the consumers upon request [2]. However, the performance evaluation of the applications uploaded to cloud computing platforms is considered highly complex. It is affected by the complexity of the infrastructure of the cloud environment where the applications are executed [3]. Application Programming Interfaces (APIs) represent a set of programming codes that permit and control the data transmission between different connected applications. Two main components are included in any API: technical specifications and the software interface. The technical specifications define the choices and rules of the data exchange among the connected applications. These specifications comprise the request for data delivery and the processing protocols. The software interface is written for the indicated specifications. When a certain application (i.e., requesting application) needs to access some operation or information from another application (i.e., providing application), it calls the corresponding API to determine how this operation or these data can be provided. The providing application, in turn, returns the requested operation or information directly to the requesting application. The API specifies the interface through which the requesting and providing applications can communicate. APIs provide several advantages to the software development field in terms of speeding up and simplifying the development process. Developers can add functionalities and operations from other existing providers to their proposed software. The APIs can also serve as a layer of abstraction between two systems, where the working and complex details of the finalsystem are hidden [4]. Today, there are many applications and APIs that different corporations provide over the Internet. The user can access these services and applications any time and any where. Therefore, the servers that offer these applications and services must handle a massive number of simultaneously received requests. Thus, enterprises have adopted this promising cloud computing technology since not all companies have the resources to create data centers or purchase many servers for these applications. The performance evaluation of different API-based applications uploaded to cloud platforms is an important issue. It assists in selecting the right and suitable platform to run newly developed services and applications. Several research studies have been conducted in this field considering different circumstances, cloud platforms, applications, and APIs. Here, we introduce another performance evaluation study that seeks to assess different cloud computing platforms for different API-based application categories. Amazon AWS EC2 and Microsoft Azure are considered the most commonly adopted cloud platforms [5]. We used these two platforms in our experiments since they are the top cloud service providers. Moreover, we selected web-APIs to test different mobile applications. Two taxonomies were selected and compared in this work: educational (i.e., Sebawayh) and professional (i.e., TaqManTek) services. Education and professional services have witnessed a high percentage of switching to the cloud environment recently. This is due to the COVID-19 lockdowns, with schools and universities running online classes, and likewise for several businesses' activities. An experimental comparison of the performance of the API-based applications under the Amazon AWS EC2 and Microsoft Azure platforms in terms of response time, latency, processing time, and throughput is presented in this work. These experiments were performed with several users.