What are the advantages and shortcomings of using a serverless architecture?