By Jonas Bonér, Founder and CEO for Lightbend, Inc.
In 2021, edge computing came into its own, but 2022 is where it is expanding its reach into large-scale deployments across a myriad of industries. For software developers building applications for edge computing architectures, new complexities are coming to the forefront that will force developer teams to look at new approaches in order to leverage the inherent benefits of edge computing for mission-critical applications.
Some pieces of the foundation are already here. For example, we have excellent infrastructure nowadays, but that only solves half of the problem. As edge computing becomes a worldwide phenomenon, new abstraction layers will be required to be able to handle the sheer scale of tomorrow’s edge computing networks and the applications that will run on them. The serverless model, characterized by offerings like AWS Lambda, Cloudfare Workers and similar solutions from the other cloud providers, provides a general direction but it’s clear that, on its own, serverless programming is not the final answer. The industry needs a programming model and developer UX that takes full advantage of the new cloud and edge infrastructure, allowing us to build general-purpose applications without needless complexity.
Today: serverless and the edge
Before we turn to what this new model may look like, it’s worth examining the serverless model as it stands today to understand why this is attractive to edge developers. Serverless or Function-as-a-Service offerings solve the biggest challenge edge architectures present to developers — how to get their data from cloud-to-edge quickly and easily. As edge architectures expand to harness data from millions of complex devices — think automated vehicles — in distributed systems that could span vast geographic areas, having to account for this distribution is a nightmare for most developers.
The edge represents a whole new set of difficulties for developers building mission-critical applications at scale. Dev teams need to learn new frameworks, and tools, which takes time and inclination — most developers will want to stick with the skills they have now. And in the current war for developer talent, building new teams specializing in the edge is a challenge, to say the least.
Enter serverless. The best thing about deploying to a serverless environment is that you don’t have to worry about where your application (and the data it governs) runs or how it’s managed. It is not the developers’ concern. Serverless solutions are super exciting for the edge, since serverless offerings abstract most of the complexity away; as a developer, you just need to focus on the core business logic. It’s still early days, but the functionality is coming where the implementation will know where the activity is taking place geographically and it will be the platform’s responsibility to find out where that is and optimize performance.
Any potential negatives to this abstraction, which mostly consists of understanding a different way to build apps, are easily overlooked given the usefulness and time saved.
Next: Serverless and state at the edge
Serverless on its own isn’t enough, however. We will need to combine serverless offerings with distributed state at scale. Proven models for managing distributed state at scale combined with serverless is the answer that edge computing developers will turn to in 2022. The increasing complexity and global distribution of edge devices will essentially demand it. What if you only had to think about your business logic, public API, and how your domain data is structured, not worry about storing and managing it? What if you could become “databaseless” and forget about databases, storage APIs, OR-mapping, caches, and message brokers?
Services, powered with this “data plane” of application state — attached to and available throughout the network — can run anywhere in the world. From the public cloud to thousands of PoPs out at the edge of the network, in close physical approximation to its users, where the co-location of state, processing, and end-user, ensures ultra-low latency and high throughput — this is the future of serverless with the edge.
That said, serverless applications in an edge environment won’t just be about low latency but equally about high reliability and availability (particularly for AGVs, autonomous vehicles, and 24/7 industrial applications). Stateful edge computing means that we can build applications that can continue to function without disruption in the face of failure. These applications will be composed of multiple autonomous services all working independently with local data, where services can communicate with each other out at the edge directly, in a point-to-point fashion and not be dependent on an always-on connection back to the central cloud (so-called local-first cooperation). This allows for building extremely resilient systems, systems that must run 24/7 without stopping and that can adaptively detect, react to, and cope with failure of its parts; examples include emergency services, trading systems, manufacturing IIoT systems, and autonomous vehicles; the list is significant and growing.
As edge computing continues its march to global dominance, our approach to building applications will need to evolve with it. By leveraging innovative approaches such as distributed state at scale, we can ensure that our developer teams have the right solutions they need to leverage the skills they have today to build the mission-critical systems of tomorrow.
About the author
Jonas Bonér is CEO and co-founder of Lightbend, and the creator of the Akka event-driven middleware project. Previously he was a core technical contributor at Terracotta, working on core JVM-level clustering technology, and at BEA, as part of the JRockit JVM team. Jonas has also been an active contributor to open source projects, including the AspectWerkz Aspect-Oriented Programming (AOP) framework and the Eclipse AspectJ project. He is an amateur jazz musician, a passionate skier, and holds a Bachelor of Science from Mid Sweden University.
DISCLAIMER: Guest posts are submitted content. The views expressed in this post are that of the author, and don’t necessarily reflect the views of Edge Industry Review (EdgeIR.com).
application development | AWS | Cloudflare | database | DevOps | Lightbend | programming | serverless