Java-technológiák

Befejeződött

Ebben a leckében megkülönböztetjük a Java-keretrendszerek, -kiszolgálók és -platformok különböző típusait.

Spring Framework

A Spring Framework egy alkalmazás-keretrendszer és vezérlésinverzió (IoC) konténer. A Springt korábban az Enterprise JavaBeans (EJB) modell kiegészítésére használták. Alapvető funkciói a következők:

  • Függőséginjektálás
  • Aspektusorientált programozás
  • Üzleti absztrakció

Spring Boot

A Spring Boot a Spring Framework tetején fut, és véleményezett automatikus konfigurációval rendelkezik. A Spring Boot-alkalmazások önállóan futnak, és tökéletesen megfelelnek a mikroszolgáltatásoknak.

Spring Data

A Spring Data leegyszerűsíti a relációs és nem kapcsolódó adatbázisokhoz, a MapReduce-keretrendszerekhez és a felhőalapú adatszolgáltatásokhoz való adathozzáférést.

Spring Security

A Spring Security a Spring-alapú alkalmazások védelmének de facto szabványa. Magas szintű hitelesítést és hozzáférés-vezérlést biztosít. A Spring Security például jól integrálható az Active Directoryval.

Spring Cloud

A Spring Cloud elosztott rendszerekhez használható. A Spring Cloud szolgáltatásfelderítést, konfigurációkezelést, monitorozást és jó fejlesztői élményt nyújt.

Spring Batch

A Spring Batch egy könnyű keretrendszer robusztus kötegelt alkalmazásokhoz, amelyek létfontosságúak a napi műveletekhez.

MicroProfile és Jakarta EE

A Java EE specifikációinak nyílt forráskódú követéseként a MicroProfile és a Jakarta Enterprise Edition (EE) tekinthető meg.

A MicroProfile a mikroszolgáltatási architektúrák specifikációinak készlete. Nyílt fórumnak nevezi magát az Enterprise Java mikroszolgáltatás-architektúrához való optimalizálásához. A MicroProfile célja, hogy több implementációban is innovációt valósítson meg, és közösen működjön együtt a közös érdeklődési körökben.

A Jakarta EE a nagyvállalati alkalmazások készítésére vonatkozó specifikációk készlete. Modularizált struktúrája lehetővé teszi a fejlesztők számára, hogy hatékony szoftvermegoldásokat hozzanak létre. A Jakarta EE-alkalmazásokat EAR- vagy WAR-fájlokként is csomagolhatja.

A webprofil a Jakarta EE egy részhalmaza, amely webes fókuszú háttérszolgáltatásokhoz készült, de ne aggódjon! A nagyvállalati platform adott API-jait is hozzáadhatja hozzá.

Alkalmazáskiszolgálók

A Java EE-alkalmazásokat Java EE-kompatibilis alkalmazáskiszolgálókon (Weblogic, WebSphere, WildFly, GlassFish, Payara és mások) kell üzembe helyezni.

  • Az Apache Tomcat egy HTTP-kiszolgáló és egy Java Servlet-tároló. Implementálja a Servlet, a Java Server Pages (JSP), a Java Expression Language és a Java WebSocket specifikációit.

  • Az Oracle Weblogic Server egy egységes és bővíthető platform nagyvállalati alkalmazások fejlesztéséhez, üzembe helyezéséhez és futtatásához. A Weblogic Server a Java EE és a Jakarta EE robusztus, kiforrott implementációját kínálja.

  • A Red Hat JBoss Enterprise Application Platform (JBoss EAP) nagyvállalati szintű biztonságot és teljesítményt nyújt mind a helyszíni, mind a virtuális implementációkhoz, illetve privát, nyilvános vagy hibrid felhőkhöz.

  • A WildFly a JBoss EAP nyílt forráskódú felsőbb rétege. Ez a közösségvezérelt fajta kiválóan alkalmas fejlesztésre és tesztelésre.

  • Az IBM WebSphere Application Server (WAS) egy rugalmas, biztonsági szempontból gazdag Java-kiszolgálói futtatókörnyezet nagyvállalati alkalmazások számára. A nagy megbízhatóságra összpontosít. Támogatja a mikroszolgáltatásokat és a szabványokon alapuló programozási modelleket. A saját tempójában modernizálhat, nagyobb láthatóságot érhet el a számítási feladatok között, elemezheti a vállalati alkalmazásokat, és előreléphet a Kubernetes felé vezető úton.

  • Az Open Liberty a WAS közösségvezérelt, nyílt forráskódú verziója.

  • Az Oracle GlassFish számos Java EE webes szabvány (beleértve a Servletet és a JSP-t) referencia-implementációja.

Mikroszolgáltatás-orientált architektúrák egyéb keretrendszerei

  • A Netty egy nem blokkoló I/O -ügyfél-/kiszolgáló-keretrendszer. Lehetővé teszi a hálózati alkalmazások, például a protokollkiszolgálók és az ügyfelek gyors és egyszerű fejlesztését. Jelentősen leegyszerűsíti és racionalizálja a hálózati programozást, például a TCP- és UDP-socket szervereket. A Netty egy aszinkron, eseményvezérelt hálózati alkalmazás-keretrendszer a karbantartható, nagy teljesítményű protokollkiszolgálók és -ügyfelek gyors fejlesztéséhez.

  • A Quarkus egy Kubernetes-natív Java-verem, amely az OpenJDK HotSpothoz és a GraalVM-hez készült. Quarkus egyre nagyobb lendületet kap. A teljesítményközpontúbb keretrendszerek egyébként ilyenek, például a Vert.x, a Helidon, a Payara Micro és a KumuluzEE.

  • A Micronaut egy modern, JVM-alapú, teljes veremű keretrendszer moduláris, könnyen tesztelhető mikroszolgáltatások és kiszolgáló nélküli alkalmazások létrehozásához. A Micronaut tartalmaz egy függőséginjektálást és egy aspektusorientált programozási futtatókörnyezetet, amely nem használ tükröződést, ami megkönnyíti a Micronaut-alkalmazások számára a GraalVM-en való futtatást.