OpenWhisk Vies With AWS Lambda As Developer Service

IBM's OpenWhisk is a new event-driven service for hosting and running developer's microservices that's designed to compete with AWS Lambda.

8 IT Projects To Prioritize When Budget's Tight

(Click image for larger view and slideshow.)

IBM has launched OpenWhisk, an event-driven developer service, on its Bluemix cloud to aid in the creation of next-generation, microservice-based applications.

A small amount of a customer's application logic, often in JavaScript or Node.js, is stored on the OpenWhisk platform, which has been primed to receive notification of a software event in a mobile application, an external Web service, or another Bluemix service. The notification fires off a rule that acts as a trigger that activates the logic and responds to the event.

The logic runs only in response to the trigger, so the application runs for brief periods of time, with as many copies of the microservice running as needed to meet the demand set off by triggers. In other words, OpenWhisk will automatically scale up the service without the developer needing to worry about whether resources are adequate for it. These small services are frequently stored in Docker containers, where they can be quickly activated and deactivated.

The OpenWhisk service, announced as generally available on Feb. 22, is similar to Amazon Web Services' Lambda, which was launched 16 months ago. But OpenWhisk is coming into the world more fully baked. It works with three languages: Node.js, Apple's Swift, and Java. IBM said it will add more language support to OpenWhisk in the near future.

When it first arrived in November 2014, AWS Lambda worked with one: Node.js; now it works with Node.js plus Java and Python. OpenWhisk is also similar to Google's Cloud Functions, announced at the end of 2015. Microsoft's Azure has offered event-driven WebJobs since January 2014, said CTO Mark Russinovich.

IBM wasn't first to the party, but its OpenWhisk event-driven system is now open source code available on GitHub for free downloading and use on-premises, as well as in the cloud, said IBM's Angel Diaz, VP of cloud architecture and technology, in an interview.

AWS Lambda doesn't support Apple's Swift language, which gives IBM an opportunity to expand Bluemix OpenWhisk as a service for iPhone and iOS developers.

Diaz explained that OpenWhisk allows an application as set of services that can be easily revised. With monolithic and even modular applications, for the app to be changed, frequently the application has to be stopped, old code pared out, and new code phased in. With a service like OpenWhisk, microservices A, B, and C can be run as an application set. When C is outmoded, D can be composed and phased in without the application's operation ever being interrupted, Diaz explained.

(Image: Tommaso Colia/iStockphoto)

Likewise, the rules that trigger the run of a microservice are stored in OpenWhisk and don't need to be concentrated in a single rules engine. Rules triggering the application logic can be changed dynamically as well, without one set of rules being hard coded into the application, Diaz said.

In addition, a mobile application developer only needs to know Javascript, the closely related Node.js, or Swift to be able to compose services in the language of his choice. He doesn't need to know about scaling, security, or how to ensure continuous operation. Those infrastructure issues are the responsibility of OpenWhisk operations on the Bluemix cloud, Diaz said.

That's one reason why serverless applications, as they are sometimes called, represent "a leap forward" in what application developers can accomplish and how quickly they can get their code up and running, Diaz said. He expects "rule sets" that accomplish particular business goals to appear on OpenWhisk that can be used by microservices from different third parties.

Google Cloud Functions, AWS Lambda, Azure WebJobs, and OpenWhisk may represent the new face of platform-as-a-service. When development occurs in the cloud, it may follow the pattern of microservices triggered by rules, fired off by external events. Al Hilwa, IDC software development analyst, said these serverless applications are "an important new space in the PaaS world."

Because the application is fired up for a few seconds when needed instead of running continuously, the cloud charge is based on both the amount of time it runs and the number of requests coming to it. Such an approach is good for mobile apps, IoT data streams, big data processing, or analytics, Hilwa said in an interview. Hilwa got a look at OpenWhisk at IBM's InterConnect show in Las Vegas in early March.

"It's all made possible by container technology -- quick to start and quick to shut down," but different clouds may show different levels of performance. Such event-driven, asynchronous services "will prove an important competitive point for cloud services in the future," he said.

Charles Babcock is an editor-at-large for InformationWeek and author of Management Strategies for the Cloud Revolution, a McGraw-Hill book. He is the former editor-in-chief of Digital News, former software editor of Computerworld and former technology editor of Interactive ... View Full Bio

"Serverless" applications, as we all know, are not literally serverless. There's servers somewhere running its many parts. But the developer can concentrate on the client logic or business logic of the app and not worry about what the application needs when it's deployed to the server. The application scalability, security and performance have been abstracted out to the platform or cloud, which can provide them automatically..

Amazon Web Services should watch out for the fact that OpenWhisk is open source code. IBM has used open source code before to effectively undercut a proprietary competitor, and few of us believe Amazon is about to make the code behind AWS Lambda available for free download soon.

To learn more about what organizations are doing to tackle attacks and threats we surveyed a group of 300 IT and infosec professionals to find out what their biggest IT security challenges are and what they're doing to defend against today's threats. Download the report to see what they're saying.

Transformation is on every IT organization's to-do list, but effectively transforming IT means a major shift in technology as well as business models and culture. In this IT Trend Report, we examine some of the misconceptions of digital transformation and look at steps you can take to succeed technically and culturally.