4 things cloud-native Java must provide

4 things cloud-native Java must provide

Java is still the pervasive development language among enterprise developers, even though it is not developers' preferred cloud-native runtime and is falling behind other languages, according to GitHub's Octoverse.

Because of Java and Enterprise Java's history, an application built on a traditional Java stack, even if it is optimized for cloud-native environments, requires more memory and takes longer to start than applications built on other popular languages. With modern platforms like Kubernetes, Istio, and Knative, the need to have smaller runtimes that can scale up, down, and even down to zero is becoming more and more important. So, what should cloud-native Java look like in order to enable people to develop, build, run, debug, and deploy in an immutable infrastructure without a steep learning curve? How easily can developers evolve cloud-native Java for serverless applications on demand?

New cloud-native Java runtimes need to provide the following four major benefits for developers to build cloud-native, microservices, and serverless Java applications:

  • Increase development productivity: Developers want zero-configuration, live coding, and easy injection of extensions for implementing cloud-native applications.
  • Enable reactive programming: Developers must be able to use EventBus or Vert.x to implement reactive applications as well as traditional imperative applications.
  • Optimize serverless: Developers will evolve existing microservices to serverless applications when the cloud-native Java runtimes provide super-fast starting times and very small memory footprints.
  • Adopt common open-source projects and tools: Developers need to integrate with standard open-source projects and tools such as Kubernetes, Vert.x, RESTEasy, Kafka, Jaeger, Prometheus, Infinispan, and more.

Keeping these criteria in mind, the cloud-native architecture considerations for Java are clear. We need to design for running containerized applications on DevOps and cloud-native platforms at scale and speed. This will enable developers to build cloud-native Java applications based on architectures such as high-performing cache, event-driven/reactive, and serverless on immutable infrastructures like Kubernetes with all of the expected benefits. The outcome will be effective in enabling developers to use the power and history of Java in a very new environment.

This article is published originally by myself at https://opensource.com/article/20/1/cloud-native-java.

要查看或添加评论,请登录

Daniel Oh的更多文章

  • Combine GraphQL with Java to build a flexible and modern API

    Combine GraphQL with Java to build a flexible and modern API

    In the past few years, developers have used RESTful web services over HTTP(s) to expose business functions using an…

  • What makes Java open source?

    What makes Java open source?

    If you're using Java to write business applications, you may know that Java Standard Edition (SE) is not open source…

  • 5 open source IDE tools for Java

    5 open source IDE tools for Java

    Java frameworks make life easier for programmers by streamlining their work. These frameworks were designed and…

  • Set up Vim as your Rust IDE

    Set up Vim as your Rust IDE

    The Rust programming language is designed to implement systems programming with safe concurrency and high memory…

  • How to install Java on a Mac

    How to install Java on a Mac

    In late May, Java celebrated its 25th anniversary, and to commemorate the occasion, developers around the world used…

  • Developing Java in Quarkus, an open source IDE

    Developing Java in Quarkus, an open source IDE

    In the previous articles, you learned about 6 requirements of cloud-native software and 4 things cloud-native Java must…

  • 6 requirements of cloud-native software

    6 requirements of cloud-native software

    For many years, monolithic applications were the standard enterprise architecture for achieving business requirements…

  • 3 types of metric dashboards for DevOps teams

    3 types of metric dashboards for DevOps teams

    Metrics dashboards enable DevOps teams to monitor the entire DevOps platform so they can respond to issues in…

  • Certifications for DevOps engineers

    Certifications for DevOps engineers

    DevOps teams appreciate using DevOps processes, especially in multi- and hybrid cloud infrastructures, for many…

  • 5 reasons to use Kubernetes

    5 reasons to use Kubernetes

    Kubernetes is the de facto open source container orchestration tool for enterprises. It provides application…

社区洞察

其他会员也浏览了