Java-teknologier
I dette undermodul skelner vi mellem de forskellige typer Java-strukturer, servere og platforme.
Forårsramme
Spring Framework er en programstruktur og inversion af objektbeholderen (IoC). Foråret er historisk set blevet brugt som supplement til Enterprise JavaBeans-modellen (EJB). Dens kernefunktionaliteter er:
- Injektion af afhængighed
- Aspektorienteret programmering
- Forretnings abstraktion
Fjederstart
Spring Boot kører oven på Spring Framework og har en meningsorienteret automatisk konfiguration. Spring Boot-programmer kører enkeltstående og passer perfekt til microservices.
Fjederdata
Spring Data forenkler dataadgang for relationsdatabaser og ikke-relationelle databaser, MapReduce-strukturer og cloudbaserede datatjenester.
Fjedersikkerhed
Spring Security er den de facto- standard for sikring af forårsbaserede programmer. Det tilbyder et højt niveau af godkendelse og adgangskontrol. Spring Security kan f.eks. integreres godt med Active Directory.
Spring Cloud
Spring Cloud bruges til distribuerede systemer. Spring Cloud leveres med tjenesteregistrering, konfigurationsstyring, overvågning og en god udvikleroplevelse.
Fjederbatch
Spring Batch er en letvægtsramme til robuste batchapplikationer, der er afgørende for den daglige drift.
MicroProfile og Jakarta EE
Du kan se på MicroProfile og Jakarta Enterprise Edition (EE) som en opfølgning på Java EE-specifikationerne med åben kildekode.
MicroProfile er et sæt specifikationer for microservice-arkitekturer. Det kalder sig et åbent forum for at optimere Enterprise Java til en microservices-arkitektur. MicroProfile har til formål at skabe innovation på tværs af flere implementeringer og samarbejde om fælles interesseområder.
Jakarta EE er et sæt specifikationer for bygning af virksomhedsprogrammer. Dens modulopbyggede struktur gør det muligt for udviklere at oprette effektive softwareløsninger. Du kan pakke Jakarta EE-programmer som enten EAR-filer eller WAR-filer.
Webprofil er en delmængde af Jakarta EE til back-end-tjenester med webfokus, men bare rolig! Du kan tilføje specifikke API'er for virksomhedsplatformen oven på den.
Programservere
Java EE-programmer skal installeres på Java EE-kompatible programservere (Weblogic, WebSphere, WildFly, GlassFish, Payara og andre).
Apache Tomcat er en HTTP-server og en Java Servlet-objektbeholder. Den implementerer specifikationerne Servlet, Java Server Pages (JSP), Java Expression Language og Java WebSocket.
Oracle Weblogic Server er en samlet platform, der kan udvides, til udvikling, udrulning og kørsel af virksomhedsprogrammer. Weblogic Server tilbyder en robust, moden implementering af Java EE og Jakarta EE.
Red Hat JBoss Enterprise Application Platform (JBoss EAP) leverer sikkerhed og ydeevne i virksomhedsklassen til både lokale og virtuelle implementeringer eller i private, offentlige eller hybride cloudmiljøer.
WildFly er upstream med åben kildekode for JBoss EAP. Dette communitydrevne udvalg er velegnet til udvikling og test.
IBM WebSphere Application Server (WAS) er et fleksibelt, sikkerhedsrigt Java-server runtime-miljø til virksomhedsprogrammer. Den fokuserer på høj pålidelighed. Det understøtter mikrotjenester og standardbaserede programmeringsmodeller. Du kan modernisere i dit eget tempo, få større synlighed på tværs af arbejdsbelastninger, analysere virksomhedsprogrammer og fremme din rejse til Kubernetes.
Open Liberty er den community-drevne version af WAS med åben kildekode.
Oracle GlassFish er referenceimplementering af mange Java EE-webstandarder (herunder Servlet og JSP).
Andre rammer for mikroserviceorienterede arkitekturer
Netty- er en ikke-blokerende I/O-klient-/serverstruktur (NIO). Det muliggør hurtig og nem udvikling af netværksprogrammer, f.eks. protokolservere og klienter. Det forenkler og strømliner netværksprogrammering betydeligt, f.eks. TCP- og UDP-sokkelservere. Netty er en asynkron, hændelsesdrevet netværksprogramstruktur til hurtig udvikling af vedligeholdbare protokolservere og klienter med høj ydeevne.
Quarkus er en Kubernetes-oprindelig Java-stak, der er skræddersyet til OpenJDK HotSpot og GraalVM. Quarkus er ved at få mere og mere momentum. Forresten er der mere ydeevnefokuserede strukturer som denne, f.eks. Vert.x, Helidon, Payara Micro og KumuluzEE.
Micronaut er en moderne, JVM-baseret, fuldstak struktur til bygning af modulære, let testbare microservice- og serveruafhængige programmer. Micronaut har en afhængighedsinjektion og aspektorienteret programmeringskørsel, der ikke bruger nogen refleksion, hvilket gør det nemmere for Micronaut-programmer at køre på GraalVM.