All-in-one serverless DevOps platform.
Full-stack visibility across the entire stack.
Detect and resolve incidents in record time.
Conform to industry best practices.
Function as a Service (FaaS) is a relatively new service of cloud computing. It provides a platform that helps users develop, manage, and run functionalities of their applications without the complexities of building the infrastructure and maintaining it which always follows launching an app. FaaS is a brand-new development in cloud computing and it was presented to the world in October 2014 by the hook.io website. Since then, numerous FaaS providers came along like AWS, Google Cloud, Microsoft Azure, IBM/Apache’s Open Whisk which is open source from 2016, and Oracle Cloud in 2017 also being open source.
Let’s quickly run through all the awesomeness and pain points of FaaS.
Top FaaS providers of today are offering the same services with some differences, and we will try and compare them in this section, so you can decide which one suits you better while considering the language support they offer, the 3rd party language support, the monitoring systems they use and their limits. At the end of the main differences section, you will find a separate part of pricing models for each provider.
AWS Lambda language support is vast. It supports several languages like Node.js, Java, C#, and Python. Language support with the 3rd party is Golang by using Node.js shim. Dashbird and Cloudwatch are AWS Lambda’s monitoring systems. There are some limitations in AWS Lambda that we will go through. Memory allocation range is min. 128 MB and max. 1536 MB. Ephemeral disk capacity is (“/tmp” space): 512 MB, while the maximum execution duration per request is 300 seconds.
Google Functions supports Node.js and doesn’t have any other language support as the others do. Google Functions comes with a Stackdriver monitoring system. It is limited to 1000 functions with a maximum function duration of 540 seconds. Function calls per second are 1 million per 100 seconds.
Microsoft Azure Functions supports even more languages like Node.js, C#, F#, Python, PHP, and Java. The 3rd party language support can run anything with batch files. Azure Application Insights is Azure’s monitoring system. Azure is limited to only ten concurrent executions per one function. There are no limits on the maximum execution time limit.
IBM Apache OpenWhisk Functions supports native languages like Node.js, Swift, Java, PHP, Go, and Python. You can use any other programming language (the 3rd party language) you need just by providing it to the Docker container. OpenWhisk uses Dashboard as a monitoring system. There are some limits in OpenWhisk. It is limited to package nesting which is not allowed meaning that the package can’t contain another package, but packages can include Actions and Feeds.
Prices between these FaaS providers we’ve previously mentioned are different from several different models you could choose from to pay for services provided to you. Depending on how you use it and how frequent, also as for how long, this section should offer you the best insight of which FaaS provider you should choose.
AWS Lambda’s pricing is set on $0.20 per million requests and $0.00001667 per GB-s (Gigabyte per second), considering that 1 million requests and 400.000 GB-s per month are for free. Depending on your needs, choosing AWS Lambda can be a good option.
Google Function’s pricing is set on three different models. The 1st one is $0.40 per million invocations, but consider that 2 million invocations are for free. The 2nd price model is $0.0000025 per GB-sec with 400,00 GB-sec per month that comes for free. It brings us to the 3rd price model which is $0.0000100/GHz-sec with 200,000 GHz-sec per month that also comes for free.
Microsoft Azure Function uses two different pricing models. The 1st one is $0.000016/GBs with 400,000 GBs per month that comes for free. The 2nd model is $0.20 per million executions, with 1 million executions per month for free.
IBM Apache OpenWhisk Function has the basic Cloud Function rate which is $0.000017 per second of execution, per GB of memory allocated.
The conclusion would be that FaaS is proposing a type of architecture that developers need to fit into. It’s a whole new way of building, managing, and deploying code. A brand-new way, similar to microservices, with many various benefits for both big and small applications. The most considerable advantage for architecture that is based on serverless is all around the developers’ availability or non-availability. Nowadays, it is quite hard to find a good developer and much harder to find good developers specified for a specific programming language. FaaS is quite flexible, and this brings us to its disadvantages regarding its productivity. Nevertheless, being short on developers is a far bigger problem.
You know our FaaS service of choice is AWS Lambda, but don’t let that cloud your judgment. Use whatever you feel is best for your use case!
We aim to improve Dashbird every day and user feedback is extremely important for that, so please let us know if you have any feedback about these improvements and new features! We would really appreciate it!
Today we are excited to announce scheduled searches – a new feature on Dashbird that allows you to track any log event across your stack, turn it into time-series metric and also configure alert notifications based on it.
One of the most vital aspects to monitor is the metrics. You should know how your cluster performs and if it can keep up with the traffic. Learn more about monitoring Amazon OpenSearch Service.
Dashbird recently added support for ELB, so now you can keep track of your load balancers in one central place. It comes with all the information you expect from AWS monitoring services and more!
Dashbird was born out of our own need for an enhanced serverless debugging and monitoring tool, and we take pride in being developers.
Dashbird gives us a simple and easy to use tool to have peace of mind and know that all of our Serverless functions are running correctly. We are instantly aware now if there’s a problem. We love the fact that we have enough information in the Slack notification itself to take appropriate action immediately and know exactly where the issue occurred.
Thanks to Dashbird the time to discover the occurrence of an issue reduced from 2-4 hours to a matter of seconds or minutes. It also means that hundreds of dollars are saved every month.
Great onboarding: it takes just a couple of minutes to connect an AWS account to an organization in Dashbird. The UI is clean and gives a good overview of what is happening with the Lambdas and API Gateways in the account.
I mean, it is just extremely time-saving. It’s so efficient! I don’t think it’s an exaggeration or dramatic to say that Dashbird has been a lifesaver for us.
Dashbird provides an easier interface to monitor and debug problems with our Lambdas. Relevant logs are simple to find and view. Dashbird’s support has been good, and they take product suggestions with grace.
Great UI. Easy to navigate through CloudWatch logs. Simple setup.
Dashbird helped us refine the size of our Lambdas, resulting in significantly reduced costs. We have Dashbird alert us in seconds via email when any of our functions behaves abnormally. Their app immediately makes the cause and severity of errors obvious.
End-to-end observability and real-time error tracking for AWS applications.