Likelihood to Recommend They're great to embed logic and code in a medium-small, cloud-native application, but they can become quite limiting for complex, enterprise applications.
Read full review IBM Cloud Functions [is] not the worse product on the IBM cloud. I decided to write this review as I thought it would be balanced. I would still use functions to set up a serverless architecture where execution time is pretty quick and the code is relatively simple. I wouldn't use IBM Cloud Functions for async calls obviously, as costs could be higher. The functions documentation is lacking in terms of CI/CD, and there are unexplainable errors occurring - like the network connection that I mentioned. So I wouldn't just rely on IBM Cloud Functions too much for the entire system, but make sure it's diversified.
Read full review Pros They natively integrate with many triggers from other Azure services, like Blob Storage or Event Grid, which is super handy when creating cloud-native applications on Azure (data wrangling pipelines, business process automation, data ingestion for IoT, ...) They natively support many common languages and frameworks, which makes them easily approachable by teams with a diverse background They are cheap solutions for low-usage or "seasonal" applications that exhibits a recurring usage/non-usage pattern (batch processing, montly reports, ...) Read full review Great substitute for a simple API calls to run non-complicated code. Easy way to run Python/Java/Javascript to get something done. File validation. Read full review Cons My biggest complaint is that they promote a development model that tightly couples the infrastructure with the app logic. This can be fine in many scenarios, but it can take some time to build the right abstractions if you want to decouple you application from this deployment model. This is true at least using .NET functions. In some points, they "leak" their abstraction and - from what I understood - they're actually based on the App Service/Web App "WebJob SDK" infrastructure. This makes sense, since they also share some legacy behavior from their ancestor. For larger projects, their mixing of logic, code and infrastructure can become difficult to manage. In these situations, good App Services or brand new Container Apps could be a better fit. Read full review Billing can be a hassle, not the most responsive customer service/support team Handles & executes most functionalities, but other platforms offer more scalability if you're seeking consistent and stable growth Read full review Alternatives Considered This is the most straightforward and easy-to-implement server less solution. App Service is great, but it's designed for websites, and it cannot scale automatically as easily as Azure Functions. Container Apps is a robust and scalable choice, but they need much more planning, development and general work to implement. Container Instances are the same as Container Apps, but they are extremely more limited in termos of capacity.
Kubernetes Service si the classic pod container on Azure, but it requires highly skilled professional, and there are not many scenario where it should be used, especially in smaller teams.
Read full review ICF is a lightweight service and does not require runtime configurations Scalable on demand and hence there is no need to pay for runtime costs Read full review Return on Investment They allowed me to create solutions with low TCO for the customer, which loves the result and the low price, that helped me create solutions for more clients in less time. You can save up to 100% of your compute bill, if you stay under a certain tenant conditions. Read full review It directly affected our expenses since we do not need to deploy and maintain a set of separate applications. It allowed us to pay for only the amount of time cloud functions run. It saved on maintenance and monitoring of the applications it replaced. Read full review ScreenShots