  Microservice architecture is the common choice for developing cloud
applications these days since each individual microservice can be independently
modified, replaced, and scaled. As a result, application development and
operating cloud infrastructure were bundled together into what is now commonly
called DevOps. However, with the increasing popularity of the serverless
computing paradigm and its several advantages such as no infrastructure
management, a pay-per-use billing policy, and on-demand fine-grained
autoscaling, there is a growing interest in utilizing FaaS and serverless CaaS
technologies for refactoring microservices-based applications. Towards this, we
migrate a complex IoT platform application onto OpenWhisk (OW) and Google Cloud
Run (GCR). We comprehensively evaluate the performance of the different
deployment strategies, i.e., Google Kubernetes Engine (GKE)-Standard, OW, and
GCR for the IoT platform using different load testing scenarios. Results from
our experiments show that while GKE standard performs best for most scenarios,
GCR is always cheaper wrt costs.
