เทคโนโลยี Java
ในหน่วยนี้ เราแยกความแตกต่างระหว่างเฟรมเวิร์ก Java, เซิร์ฟเวอร์ และแพลตฟอร์มชนิดต่าง ๆ
กรอบสปริง
Spring Framework เป็นเฟรมเวิร์กของแอปพลิเคชันและการผกผวนของคอนเทนเนอร์ตัวควบคุม (IoC) ในอดีตมีการใช้สปริงเพื่อเสริมแบบจําลอง JavaBeans (EJB) ขององค์กร ฟังก์ชันการทํางานหลักคือ:
- การฉีดขึ้นต่อกัน
- การเขียนโปรแกรมเชิงด้าน
- นามธรรมทางธุรกิจ
สปริงบูต
การบู๊ตสปริงทํางานที่ด้านบนของ Spring Framework และมีการกําหนดอัตโนมัติที่ได้รับการพิจารณาแล้ว โปรแกรมสปริงบูตทํางานแบบสแตนด์อโลนและเหมาะสําหรับ microservices
ข้อมูลสปริง
ข้อมูลฤดูใบไม้ผลิลดความซับซ้อนของการเข้าถึงข้อมูลสําหรับฐานข้อมูลเชิงสัมพันธ์และไม่สัมพันธ์ เฟรมเวิร์ก MapReduce และบริการข้อมูลบนระบบคลาวด์
ความปลอดภัยในฤดูใบไม้ผลิ
การรักษาความปลอดภัยของสปริงคือข้อเท็จจริง de มาตรฐานสําหรับการรักษาความปลอดภัยแอปพลิเคชันตามสปริง มีการรับรองความถูกต้องและการควบคุมการเข้าถึงระดับสูง ตัวอย่างเช่น Spring Security รวมกันได้ดีกับ Active Directory
สปริงคลาวด์
สปริงคลาวด์ใช้สําหรับระบบแบบกระจาย Spring Cloud มาพร้อมกับการค้นพบบริการ การจัดการการกําหนดค่า การตรวจสอบ และประสบการณ์ที่ดีของนักพัฒนา
ชุดสปริง
ชุดสปริงเป็นเฟรมเวิร์กน้ําหนักเบาสําหรับแอปพลิเคชันชุดที่มีเสถียรภาพซึ่งมีความสําคัญสําหรับการทํางานประจําวัน
MicroProfile และจาการ์ตา EE
คุณสามารถดูที่ MicroProfile และ Jakarta Enterprise Edition (EE) เป็นการติดตามข้อกําหนด Java EE แบบโอเพนซอร์ส
MicroProfile คือชุดของข้อกําหนดสําหรับสถาปัตยกรรม microservice ซึ่งเรียกตัวเองว่าฟอรั่มเปิด เพื่อปรับ Enterprise Java ให้เหมาะสมสําหรับสถาปัตยกรรม microservices MicroProfile มีจุดมุ่งหมายเพื่อพัฒนานวัตกรรมในการใช้งานหลายอย่างและทํางานร่วมกันในด้านที่น่าสนใจ
จาการ์ตา EE คือชุดข้อกําหนดสําหรับการสร้างแอปพลิเคชันขององค์กร โครงสร้างแบบแยกส่วนช่วยให้นักพัฒนาซอฟต์แวร์สามารถสร้างโซลูชันซอฟต์แวร์ที่มีประสิทธิภาพได้ คุณสามารถแพคเกจแอปพลิเคชันจาการ์ตา EE เป็นไฟล์ EAR หรือไฟล์ WAR
โปรไฟล์เว็บคือชุดย่อยของ Jakarta EE สําหรับบริการส่วนหลังที่มีการมุ่งเน้นที่เว็บ แต่ไม่ต้องกังวล! คุณสามารถเพิ่ม API เฉพาะของแพลตฟอร์มองค์กรด้านบน
เซิร์ฟเวอร์แอปพลิเคชัน
แอปพลิเคชัน Java EE ต้องถูกปรับใช้กับเซิร์ฟเวอร์แอปพลิเคชันที่เป็นไปตาม Java EE (Weblogic, WebSphere, WildFly, GlassFish, Payara และอื่น ๆ)
Apache Tomcat เป็นเซิร์ฟเวอร์ HTTP และคอนเทนเนอร์ Java Servlet ซึ่งใช้ข้อกําหนด Servlet, Java Server Pages (JSP), Java Expression Language และข้อกําหนด Java WebSocket
Oracle Weblogic Server เป็นแพลตฟอร์มแบบรวมและขยายได้สําหรับการพัฒนา การปรับใช้ และการเรียกใช้แอปพลิเคชันขององค์กร เซิร์ฟเวอร์เว็บล็อกมีการใช้งานอย่างมีประสิทธิภาพของ Java EE และ Jakarta EE
Red Hat JBoss Enterprise Application Platform (JBoss EAP) ให้การรักษาความปลอดภัยระดับองค์กรและประสิทธิภาพการทํางานสําหรับทั้งในองค์กรและการใช้งานเสมือนจริง หรือในระบบคลาวด์ส่วนตัว สาธารณะ หรือไฮบริด
WildFly เป็นอัพสตรีมโอเพนซอร์สสําหรับ JBoss EAP ความหลากหลายที่ขับเคลื่อนโดยชุมชนนี้เหมาะสําหรับการพัฒนาและทดสอบ
IBM WebSphere Application Server (WAS) เป็นสภาพแวดล้อมรันไทม์เซิร์ฟเวอร์ Java ที่ยืดหยุ่นและเต็มไปด้วยความปลอดภัยสําหรับแอปพลิเคชันขององค์กร มันมุ่งเน้นไปที่ความน่าเชื่อถือสูง สนับสนุนไมโครเซอร์วิซและแบบจําลองการเขียนโปรแกรมตามมาตรฐาน คุณสามารถปรับให้ทันสมัยในแบบที่คุณต้องการ มองเห็นได้มากขึ้นทั่วทั้งปริมาณงาน วิเคราะห์แอปพลิเคชันขององค์กร และพัฒนาเส้นทางของคุณไปยัง Kubernetes
Open Liberty เป็น WAS เวอร์ชันโอเพนซอร์สและขับเคลื่อนโดยชุมชน
Oracle GlassFish เป็นการดําเนินการอ้างอิงของมาตรฐานเว็บ Java EE จํานวนมาก (รวมถึง Servlet และ JSP)
เฟรมเวิร์กอื่น ๆ สําหรับสถาปัตยกรรมที่เน้น microservice
Netty เป็นเฟรมเวิร์กไคลเอ็นต์/เซิร์ฟเวอร์ I/O (NIO) แบบไม่บล็อก ทําให้การพัฒนาแอปพลิเคชันเครือข่ายเช่นเซิร์ฟเวอร์โพรโทคอลและไคลเอ็นต์ทําได้ง่ายและรวดเร็ว ทําให้ง่ายและปรับปรุงการเขียนโปรแกรมเครือข่ายเช่นเซิร์ฟเวอร์ซ็อกเก็ต TCP และ UDP Netty คือเฟรมเวิร์กแอปพลิเคชันแอปพลิเคชันเครือข่ายแบบอะซิงโครนัสที่ขับเคลื่อนด้วยเหตุการณ์สําหรับการพัฒนาที่รวดเร็วของเซิร์ฟเวอร์โพรโทคอลและไคลเอ็นต์ที่สามารถรักษาได้และมีประสิทธิภาพสูง
Quarkus เป็นสแต็ค Kubernetes-เนทีฟของ Java ที่ออกแบบมาสําหรับฮอตสปอต OpenJDK และ GraalVM ควอร์คัสได้รับแรงกระตุ้นมากขึ้นและมากขึ้น อย่างไรก็ตามมีเฟรมเวิร์กที่มุ่งเน้นประสิทธิภาพมากกว่าเช่นนี้เช่น Vert.x, Helidon, Payara Micro และ KumuluzEE
Micronaut เป็นเฟรมเวิร์กแบบเต็มรูปแบบที่ใช้ JVM สําหรับการสร้างไมโครเซอร์วิสแบบโมดูลาร์ที่สามารถทดสอบได้ง่ายและแอปพลิเคชันแบบไร้เซิร์ฟเวอร์ ไมโครนัทมีการฉีดขึ้นต่อกันและรันไทม์การเขียนโปรแกรมเชิงด้านที่ใช้การสะท้อนที่ไม่ใช้การสะท้อน ซึ่งทําให้แอปพลิเคชัน Micronaut ทํางานบน GraalVM ได้ง่ายขึ้น