Microservices versus serverless functions