Serverless computing, the latest cloud buzzword, describes the ability for cloud users to get the computing resources and capabilities they need without having to specify or reserve any server instances. Serverless architecture is gaining popularity due to its cost efficiency and ability to reduce management tasks.
Serverless computing -- also known as function as a service -- represents another way to think about and implement virtualization in the cloud. Amazon Web Services (AWS) pioneered serverless functions with its Lambda service starting in 2014. Now, serverless options are also available from Google, called Google Functions, and Microsoft Azure, called Azure Functions.
The advent of cloud-based email services, such as Gmail, as well as Google Apps and other file storage suites, eliminated much of the traditional work a server performed, said Mark Bradford, founder of Bradford Web, a consulting firm based in Greenfield, Wis.
"With that light of a task, the ROI of setting up and maintaining a traditional server-based environment is greatly diminished," Bradford said. The same logic applies in the cloud, and thinking in terms of servers appears to be an artifact of traditional data center thinking.
Serverless computing examples
Some enterprises are already embracing serverless functions. Laith Al-Saadoon, lead senior solutions architect at CorpInfo, a cloud consulting and services firm based in Santa Monica, Calif., said he recently helped an automotive pricing and information website adopt serverless computing for clickstream processing and storage in AWS. His team used AWS API Gateway, Kinesis Streams and Kinesis Firehouse, as well as AWS Lambda functions, to stream, process and store data in Amazon Simple Storage Service and Amazon Redshift.
Laith Al-Saadoonlead senior solutions architect, CorpInfo
"This provided an extremely flexible, low-cost environment," Al-Saadoon said.
That was a starting point, characterized by rapid prototyping and a quick move into production. From there, they were able to apply new processing logic in AWS Lambda and add entirely new functions that applied segmentation and notification logic for real-time action on data in the stream.
"This was all possible because of serverless," Al-Saadoon said. "Serverless computing, such as AWS Lambda and Kinesis, allowed the team to focus on functionality and features over provisioning virtual machines and operating systems."
Joseph Kordish, an operations engineer at FireEye Inc., a provider of network security technology based in Milpitas, Calif., has also been working with serverless computing at his company. FireEye was attracted to the serverless approach because it had already moved so many functions to AWS that there didn't seem to be a reason not to move remaining functions to the cloud, Kordish said.
Initially, FireEye was doing all the work on instances within AWS, performing jobs that ran Apache Storm, Kafka and Zookeeper. However, the costs of maintaining those services became tedious, as well as complex, thus increasing operational expenses, Kordish noted.
Are you up on the latest
cloud technology news?
From outages to new features, a lot has happened in the cloud market so far in 2016. Test yourself to see if you are up to date with this quiz.
In an effort to reduce costs, the company migrated those functions to Amazon Elastic MapReduce (EMR), which distributes tasks across a cluster of virtual servers. At that point, FireEye tried a serverless approach, putting a Lambda job that would perform the extract, transform and load function "in front" of the Amazon EMR. Eventually, the company's key analytics function became entirely serverless.
"We saw a massive reduction of costs associated with the analytics," Kordish said, explaining that serverless wasn't an initial goal or requirement; it's just how things evolved.
Other emerging use cases for serverless computing include image processing, batch processing, task management, workflows and notifications.
The bottom line is that when the use case is appropriate for serverless architecture, you can achieve a cost-efficient and reliable platform to run your software, with little concern for "undifferentiated infrastructure burdens," Al-Saadoon said.
"This can really free your teams and, therefore, the business to innovate and iterate at an unmatched rate, providing an edge on the competition," he said.
Serverless computing gains traction in public cloud
Compare Azure Function and AWS Lambda for serverless applications
Reduce IT overhead with AWS Lambda
Serverless computing causes cloud teams to evolve