As the serverless computing market grows, consumers continuously see more upgrades included in their favorite platforms. IBM’s Bluemix OpenWhisk, a serverless, open-source cloud platform, recently added many new features to assist its users.
This platform is event-driven and can respond to events at any scale. Although the service is relatively new, it’s drawn a large following due to its openness. Let's take a closer look at some of its new and already established features.
What is OpenWhisk?
In the words of IBM, OpenWhisk “provides a distributed compute service to execute application logic in response to events.” OpenWhisk’s architecture is created to assist independent actions through abstraction. With a focus on these distinct actions, teams have more liberty to work on specific sections of code simultaneously.
OpenWhisk is aimed at streamlining the development process, with a serverless architecture that runs automatically, but only when necessary. Users are able to quickly create and modify scalable action sequences.
Along with the on-demand aspect of OpenWhisk, users pay only for the capacity that they actually use, rather than a pre-allocated amount. According to IBM, the price goes up only if you construct more OpenWhisk-intensive solutions. Additionally, you’ll have to pay more if the existing solutions have to scale up.
Another positive aspect of OpenWhisk is the fact that it’s an open ecosystem, so anyone is able to contribute to the code and add to an existing repository. Additionally, OpenWhisk users have full access to Watson APIs. This means that within the event-trigger-action workflow, it’s possible to use “cognitive analysis of application data inherent to your workflows,” IBM says.
Binding events and triggers to actions, OpenWhisk is typically invoked by mobile applications using API calls via the mobile SDK. Additionally, events are created by Watson or a Bluemix service that OpenWhisk responds to.
After an action is invoked, a container is created by OpenWhisk. This container runs the “action in a runtime appropriate to the programming language used” or runs “custom-coded actions packaged in a Docker container,” depending on the user’s preference.
This means that you don’t have to have any fears of vendor lock-in when using OpenWhisk, feeling completely free to run your actions in Docker containers, as well as to reuse legacy code in your OpenWhisk actions.
OpenWhisk also gives users the ability to connect services built by different teams because building sequences of OpenWhisk actions is language-independent. Simply use OpenWhisk’s dashboard summary to monitor performance and health.
Because of OpenWhisk’s popularity, IBM has released new features that assist developers in debugging their code, integrating more easily and tightly with third-party tools, and adopting more programming languages.
IBM’s goal is to give its users an open, nonproprietary engine. According to IBM, “By building OpenWhisk with open standards from the ground up and rooting its code in active developer communities, such as Apache, IBM looks to grow the range of capabilities developers can instantly access.”
This update brings more ease to interacting with the large number of applications able to be used with OpenWhisk. According to Bill Karpovich, general manager for IBM Cloud, developers want both cloud efficiency and choice.
“Since we’ve built OpenWhisk with open standards,” he explains, “it’s able to not only help resolve many problems associated with server management but also gives developers the flexibility to pull in outside tools and data to run code wherever they choose.”
In addition to increasing integration possibilities, IBM has also announced integration with MessageHub. MessageHub is based on Apache Kafka and is a scalable, distributed real-time messaging engine that is available as a fully managed Bluemix service. It’s a “high throughput message bus in the cloud” for build outs of data pipelines and streaming apps.
Java, Node v6, Python, and Swift v3 are now supported runtimes on OpenWhisk, opening the possibilities of wider use even more. Also, IBM has added instant debugging features for Node.js, Python, and Swift actions.
The update also includes a new extension for Visual Studio Code, also known as VS Code. This is a lightweight editor for Mac OS X, Linux, and Windows with over two million users. Some features for VS Code include:
- IntelliSense, providing “smart completions based on variable types, function definitions, and imported modules”
- The ability to debug code directly from the editor by launching or attaching breakpoints, call stacks, and an interactive console to your running apps
- Git commands built in, giving you the ability to review diffs, stage files, and make commits directly from the editor. Users can push and pull from any hosted Git service
- Extensions for customizable features, such as adding languages, themes, or debuggers
According to IBM, Bluemix is one of the largest open, public cloud deployments on the market. In fact, IBM recently announced that companies from various industries, including one of the world’s top banks, Santander Group, are designing and testing new apps with Bluemix OpenWhisk.
Santander Group, which has 12,500 branches throughout its 10 core markets in Europe and the Americas, prefers OpenWhisk for its digital banking, citing claims of increased speed and optimization.
As most developers know today, serverless infrastructure, along with microservices and containers, allows users to more deeply transform the way they build apps. In fact, IBM has stated that OpenWhisk is specifically designed to make the traditional cloud infrastructure disappear. Instead, they want developers to be able to focus only on the code, not configuring servers.
Luis Enriquez, head of platform engineering and architecture at Santander Group, expresses this same sentiment, noting that “OpenWhisk provides the instant infrastructure we need for intense tasks and unexpected peaks in workload, and is a key building block as we move to a real-time and event-driven architecture.”
Many businesses, both small and large, are beginning to switch to the use of serverless architecture to assist in rolling out advanced, cloud-based data analytics with automatic scaling, an open ecosystem, and flexible programming, without having to worry about infrastructure concerns. With its new features, OpenWhisk is in position to take advantage of this growing trend.