Kalix - NoOps High-performance Microservices and APIs
Tuesday, 17 May 2022

What Kalix Platform-as-a-Service promises is massive - a way to write cloud applications based on Kubernetes under a unified API abstracting the lower layers away.

We know that Kubernetes is magic, but at the same time hard - hard to setup, hard to configure, hard to operate, hard to write applications on, and this difficulty is a reason of why many are reluctant to let go of their monolith for the microservices world:

“Complexity in the cloud ecosystem is slowing down engineering and development teams,” said Jonas Bonér, Lightbend’s founder and CEO. “Kubernetes does an excellent job managing, orchestrating, and ensuring availability and scalability of containers, but that’s only half the story.

”There needs to be an equal investment in the application layer to make it easier for the developer to build complete applications that take full advantage of all the excellent underlying cloud infrastructure we have at our disposal. Kalix is the solution to this critical issue.”

Under the current state of cloud infrastructure application developers are also burdened with managing

  • local and distributed application data with consistency and integrity

  • local and distributed workflow, communication, and coordination

  • client context and communication

  • Maintaining business rules and operational semantics of the application as a whole

  • Ensuring intelligent and adaptive co-location of data, compute, and end-user

  • Integration with other systems

In response to this Kalix combines an API-first, database-less programming model with a serverless runtime to let developers focus on their business.It allows them to create the data objects that make sense for their service without needing to know how that data needs to be persisted in the durable storage, while the services created under Kalix can contain both stateful and stateless components.

The main benefit here is zero-ops experience;no need to set up databases, configure service meshes or tune caching layers.Neither caring about the underlying infrastructure, including databases, message brokers, caches, service meshes, and API gateways. All functionality is provided out-of-the-box and transparent to the developer.

As such Kalix frees and enables developers to use the skills they already have to build mission-critical, stateful applications in a serverless architecture incorporating advanced data access patterns like Event Sourcing, CQRS, and CRDTs without having to learn how to implement them. All they need to build their stateful serverless service is choose a state model and let Kalix handle the data management; then use one of the available language SDKs, Java, Scala and JavaScript included.

 

 

At a glance,Kalix's features:

  • Multiple Database Types
    Pick between Key/Value, Event Sourcing
    and Conflict-Free Replicated Data Types
    (CRDTs). But no need for DB spin-up, SQL
    schema definitons or other DB management
    and maintenance.

  • No Infrastructure Required
    No need to setup databases, configure service
    meshes, tune caching layers. All provided
    out-of-the-box and transparent to the developer.

  • Open Communication Protocols
    HTTP/gRPC/Pubsub/Kafka for
    ingress/egress/inter-service communication
    and data exchange/message delivery. Eliminates
    cross-team confusion and frustration and allows for
    best tool for the job.

  • Dev Tools Integrations, including IDE,
    CI/CD and Logging
    Use favorite editors like Visual Studio Code for
    development and enhance devops processes
    with integrations into CI/CD pipelines

  • Security
    Data is encrypted at rest and in motion.
    Integrated auth support (JWT).

  • 0ms Cold Starts
    Either work with us for pre-provisioned capacity or
    use the default configuration and still get 0ms starts
    for your services.

Kalix is multiplatform and there are binaries for Windows,MacOS and Linux. Setup is easy, let's take on Linux for instance :

  • Download and install the latest version of kalix
    curl -sL https://docs.kalix.io/install-cli.sh | bash

  • Verify that the Kalix CLI has been installed successfully by running the following to list all available commands:
    kalix help

  • Register for a Kalix account
    kalix auth signup

Then pick your language of choice. From that point it's best to work with the publicly available samples which are plenty. Take Java for instance:

By signing up for a free trial you can start by initially investigating and trying it out for yourself to check whether it covers your needs, and later on under a Pay-as-you-go model scale as you see fit.

Kalix addresses a hot topic, hot because it hinders many from adopting the cloud infrastructure and it was about time that someone thought about it and moreover did something about it. Maybe the time has come to look at embracing the cloud from another angle, the Kalix angle?

 

More Information

Kalix.io 

JVM Sdk

Kalix documentation

 

Related Articles

The Cloud Native Application Architecture Nanodegree - Foundations

 

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Java Version 22 Released
04/04/2024

JDK 22 is not a Long Term Support release, but is one of the regular releases that are scheduled to arrive every six months. Still, it has got a lot to show for itself.



Quantum Computing Prize Awarded
05/04/2024

John Preskill, Professor of Theoretical Physics at the California Institute of Technology, is the eighth recipient of the John Stewart Bell Prize for Research on Fundamental Issues in Quantu [ ... ]


More News

raspberry pi books

 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Tuesday, 16 May 2023 )