Cloud Native ComputingDevelopersDevOpsFeaturedOpen Source

Akka Serverless Helps Devs Build High-Performance, Business-Critical Systems

0

Lightbend, the company behind many popular open-source projects such as Akka, recently announced the release of Akka Serverless. It is a brand new developer platform that enables developers to build high-performance, business-critical applications using the serverless paradigm. Brad Murdoch, EVP (Strategy & Product) at Lightbend, joined us to discuss Akka Serverless and what specific problem it’s trying to solve.

Guest: Brad Murdoch
Company: Lightbend
Show: Let’s Talk

Video Transcript

Swapnil Bhartiya: Welcome to TFiR Newsroom! I’m your host, Swapnil Bhartiya and we have with us today once again, Brad Murdoch, VP of Strategy at Lightbend. Brad, it’s great to have you back on the show.
Brad Murdoch: It’s my pleasure to be here, as always Swapnil. Thanks for having me.

Swapnil Bhartiya: Last time, we talked about Lightbend so we have a very good understanding of what you folks do. But today, we are going to talk about Akka Serverless. So first, give us a brief kind of a quick overview about it.
Brad Murdoch: Swapnil, Akka Serverless is a brand new developer platform that enables developers to build high-performance, business-critical applications using the serverless paradigm. Today, many organizations are building systems using serverless with things like AWS Lambda making use of things like AWS Functions, Google Cloud Functions, but there are many limitations around building these high-performance systems that require low-latency, real-time performance when databases are involved. So Akka Serverless is designed to be a developer platform that makes it easy for any developer to use the serverless approach but build this class of high-performance, business-critical systems.

Swapnil Bhartiya: We have talked about earlier also that cloud-ative space, or you know, even the serverless space, is a very busy, very crowded space. So what are the specific needs or problems that Akka Serverless is trying to address?
Brad Murdoch: Great, great question! So Lightbend is the company behind Akka. And we have got great experience over the last decade of helping organizations and developers build high-performance, business-critical systems where we’re talking about large scale, all the ultimate in reliability, and most importantly, the types of performance that you need, if you are going to run your business on something that is extremely data centric. Now, that up until now has been the domain of a certain class of developers that have to be highly skilled. And what we are doing is effectively democratizing that to allow any developer that wants to be able to build back-end services and APIs to be able to do it in a way where they really don’t need to understand any of the complexities of distributed computing. And we also abstract away a lot of the other software infrastructure like databases, like message brokers, and so on. So it becomes basically just about building the business logic. But now you’re able to address this class of very scalable, highly performant systems.

Swapnil Bhartiya : Then you look at Akka Serverless. When we talk about serverless, the fact is that there is a server in serverless, right? What you’re trying to kind of make it abstract is sometimes management or managing all that unnecessary complexity and costs. So when you look at Akka Serverless, what are we looking at from these two, you know, ease of use and cost perspective?
Brad Murdoch: You’ve absolutely nailed it. So you know, the promise of serverless is not that there are no servers, it’s just that you, as a developer, do not need to know about those. And that is the case with Serverless, you certainly don’t need to know about anything related to the infrastructure. But we take it a lot farther: With Aka Serverless, you don’t only not have to worry about the infrastructure, we actually use Kubernetes. Under the covers, you don’t need to know anything about that. But you also don’t need to know anything about databases, you know, the data structures, the fact that distributed databases, it’s actually pretty complex, you don’t need to know anything about the schema, other than this is the data that I want to be able to operate on. And when my function runs at runtime, I want this data to be able to be available to me. And that’s what serverless does. That’s a big part of the magic of this new platform — the data is made available to the service to the API at runtime, without the developer having to know anything about databases, or caches, or message brokers or any of those things. So it’s another new level of abstraction for the developer to make their lives easier in building cloud-native systems.

Swapnil Bhartiya: Okay, so let’s just go a bit deeper there. Are you trying to eliminate the need for databases or once again, as we talked about, there’s a server and server list that there is a database, you’re just making it easy for developers not to have to worry about the complexity of databases.
Brad Murdoch: Exactly the same approach Swap now in that with serverless infrastructure. There are servers but it’s abstracted with Akka Serverless. There are servers. There’s Kubernetes that are databases. But they’re all abstracted from the developer. So yes, we use high-performance, distributed databases behind the scenes to actually persist the data. But then serverless manages that data and makes it available to the function that the developer is writing at runtime, on demand. So as the function needs the data, that data is delivered to the function, the developer does not need to know about the distributed database that’s actually operating behind the scenes.

Swapnil Bhartiya: If you look at the one thing and the serverless space, there are a lot of big players also, of course, Amazon Lambda, they kind of pioneered this whole idea as well. How do you use tack against Amazon Lambda? Do you look at them as a competitor, or do you compliment them
Brad Murdoch: So first off, I mean, Amazon, in particular, AWS has done an amazing job with Lambda. And effectively, if a developer that is using Lambda is able to get the results that they want from Lambda, that’s fantastic. And they should continue to use Lambda. And same thing with  your functions, Google Cloud Functions, and so on. But today, serverless is primarily about stateless operations, the functions that are running in today’s serverless infrastructure are almost all stateless. And that’s great for a certain class of applications. But when you start talking about modern cloud-native data-centric applications, like IoT platforms, or telemedicine or real time, financial services, or streaming media, you know that those types of applications cannot really run in a stateless mode. And therefore, you need to start adding state. And when you start adding state, that means you need to deal with the database and the latency that comes with accessing that database, and the complexity of the architecture with a distributed database. And so we see if you’re usingLambda today, and it’s working for you, that’s fantastic. But our goal is to bring the rest of the developers that are currently not able to use the serverless paradigm; because they require state at scale with performance, we’re now making serverless available to that whole developer community.

Swapnil Bhartiya: But it’s interesting about Open Source. And you know, like Ben, you folks do Open Source a lot. Open Source does solve the problem, but what it does is the real challenge. You can download it, you can get started. But then what about managing it? What about updating it? What about the features that you need, plus, it takes a ton of effort to keep an open-source code base running. So offering it as a service also makes it more accessible, you innovate, also democratize that open Source technology. So can you talk about this aspect because you mentioned it? And that’s what I wanted to go a bit deeper when you talk about making it easier for developers to leverage these technologies.
Brad Murdoch: Sure. So serverless is built on open source, the framework is completely open source; we’re also leveraging another open source project called CloudState. But the way that we handle data is light bend is going to manage it. Okay. So Aka Serverless is a managed service. Meaning that once again, the developer does not need to worry about any of the operations, we are actually going to be running the service. But going back to your point, which is a great one about the investment that’s required, you know, we have very talented engineers that have built this product and build all of our products. And you know, they have bills to pay, they have mortgages, and we need to have a business model that supports that. And what we believe is that cloud services and the ability to offer a managed service like this provides an opportunity to monetize the very significant investment that we’re making in our Open Source technologies. Now, of course, the open source will always be available for any developer to work on directly should they wish to do that. But with this model of having managed services that are based on open source technology, there are going to be proprietary elements that we need with respect to security and management and things but when it comes to actually providing a guarantee that’s what we expect to deliver with Akka Serverless over time i— a full managed service including all the SLA s that you would expect.

Swapnil Bhartiya: I also want to understand a bit about managed services because many services are playing a very good role, especially in the cloud at this pace. Most of these technologies are not only complicated themselves, but you need so many components to build the holy standard to get complicated very quickly. And then you can run into a lot of trouble. So many services are playing a very critical role in helping companies accelerate their digital transformation or cloud-native journey. Now, I want to understand from you, what does the model look like — a fee structure or usage structure? Can you talk about that aspect of Akka Serverless?
Brad Murdoch: Sure. So this is a developer platform, and it’s going to be licensed in exactly the same way that you would expect that any kind of serverless offering to be, which is done on a pay as you go basis. And the charges are going to be directly related to usage. So CPU data network, the major components that you would expect, the model is going to be based on that. So when we’re talking about the potential for, you know, cost savings relative to the way of doing things today, we see a very, very significant, almost an order of magnitude reduction in the cost required to build some of these business-critical systems. From our standpoint, you know, we are going to be leveraging the cloud vendors’ initial releases on Google Cloud Platform. And so we are running on Google Cloud Platform, we’re making use of your Google Kubernetes engine under the covers. But once again, the developer doesn’t need to know anything about that; we expect to go to multiple, multiple multi cloud over time. But our initial releases are on Google Cloud. So we pick up a lot of the investment that the cloud provider has made in their infrastructure, and then we build our managed service on top of that.

Swapnil Bhartiya: And that was going to be your next question, because he talked about multi-cloud hybrid cloud, even edge is there. So that Akka Server less (it doesn’t matter where a customer is running their workload), it does support the multi-cloud hybrid cloud strategy story?
Brad Murdoch: Yes, it’s been designed to be multi cloud and hybrid cloud. Today, as I said, our initial open beta that we’re announcing this week, is on Google Cloud. But the platform itself has been designed to be multi-cloud hybrid cloud, in the hybrid environment, we would leverage Kay native, in order to assist with the hybrid deployments. And obviously, with other major clouds, we reduce their Kubernetes services.

Swapnil Bhartiya: if I’m not wrong, Akka Serverless kind of supports multiple programming languages. Can you give me some examples? What languages do you support?
Brad Murdoch: Sure, well, we have been running a private beta since February of this year. And the biggest demand has been for support for JavaScript and TypeScript. As well as Java and with Java, also the spring framework, so we support those, but we’ve, the platform itself has been designed to be fully polyglot. So effectively, any language we have people in our private beta using Python, we have people using go. We even have one organization that’s using C# (C-Sharp). So we’ve got .NET developers on the platform. So really, effectively, any programming language we are, we’re very excited about the opportunity to really expand the universe of developers that we can address with Akka Serverless.

Swapnil Bhartiya: Brad, Thank you so much for once again taking time out and talking about not only Akka Serverless, but we have to be even deeper in the serverless space itself. So thanks for those insights and I would love to have you back on the show.
Brad Murdoch: Thank you. Thank you. I’ve thoroughly enjoyed it. Look forward to the next appearance.