Spring Batch - ภาพรวม

Batch processingเป็นโหมดการประมวลผลที่เกี่ยวข้องกับการดำเนินการชุดของงานอัตโนมัติที่ซับซ้อนโดยไม่ต้องโต้ตอบกับผู้ใช้ กระบวนการชุดจัดการข้อมูลจำนวนมากและดำเนินการเป็นเวลานาน

แอปพลิเคชันระดับองค์กรจำนวนมากจำเป็นต้องประมวลผลข้อมูลจำนวนมากเพื่อดำเนินการที่เกี่ยวข้องกับ -

  • เหตุการณ์ตามเวลาเช่นการคำนวณเป็นระยะ

  • แอปพลิเคชันเป็นระยะที่ประมวลผลซ้ำ ๆ บนชุดข้อมูลขนาดใหญ่

  • แอปพลิเคชันที่เกี่ยวข้องกับการประมวลผลและการตรวจสอบความถูกต้องของข้อมูลที่มีอยู่ในลักษณะธุรกรรม

ดังนั้นการประมวลผลแบบชุดจึงใช้ในแอปพลิเคชันระดับองค์กรเพื่อทำธุรกรรมดังกล่าว

Spring Batch คืออะไร

ชุดสปริงคือ lightweight framework ซึ่งใช้ในการพัฒนา Batch Applications ที่ใช้ใน Enterprise Applications

นอกเหนือจากการประมวลผลจำนวนมากแล้วเฟรมเวิร์กนี้ยังมีฟังก์ชันสำหรับ -

  • รวมถึงการบันทึกและการติดตาม
  • การจัดการธุรกรรม
  • สถิติการประมวลผลงาน
  • เริ่มงานใหม่
  • การข้ามและการจัดการทรัพยากร

คุณยังสามารถปรับขนาดแอปพลิเคชันชุดสปริงโดยใช้เทคนิคการแบ่งส่วน

คุณสมบัติของ Spring Batch

คุณสมบัติเด่นของ Spring Batch -

  • Flexibility- การใช้งาน Spring Batch มีความยืดหยุ่น คุณเพียงแค่ต้องเปลี่ยนไฟล์ XML เพื่อแก้ไขลำดับการประมวลผลในแอปพลิเคชัน

  • Maintainability- การใช้งาน Spring Batch นั้นดูแลรักษาง่าย งาน Spring Batch ประกอบด้วยขั้นตอนและแต่ละขั้นตอนสามารถแยกออกทดสอบและอัปเดตได้โดยไม่ส่งผลกระทบต่อขั้นตอนอื่น ๆ

  • Scalability- ใช้เทคนิคการแบ่งส่วนคุณสามารถปรับขนาดแอปพลิเคชัน Spring Batch เทคนิคเหล่านี้ช่วยให้คุณ -

    • ดำเนินการตามขั้นตอนของงานควบคู่กันไป

    • ดำเนินการเธรดเดี่ยวแบบขนาน

  • Reliability - ในกรณีที่เกิดความล้มเหลวคุณสามารถเริ่มงานใหม่จากจุดที่หยุดทำงานได้โดยการแยกขั้นตอน

  • Support for multiple file formats - Spring Batch ให้การสนับสนุนสำหรับผู้อ่านและนักเขียนจำนวนมากเช่น XML, Flat file, CSV, MYSQL, Hibernate, JDBC, Mongo, Neo4j และอื่น ๆ

  • Multiple ways to launch a job - คุณสามารถเปิดงาน Spring Batch โดยใช้เว็บแอปพลิเคชันโปรแกรม Java Command Line และอื่น ๆ

นอกเหนือจากนี้แอปพลิเคชัน Spring Batch ยังรองรับ -

  • ลองใหม่โดยอัตโนมัติหลังจากความล้มเหลว

  • สถานะการติดตามและสถิติระหว่างการดำเนินการแบทช์และหลังจากเสร็จสิ้นการประมวลผลชุดงาน

  • เพื่อเรียกใช้งานพร้อมกัน

  • บริการต่างๆเช่นการบันทึกการจัดการทรัพยากรการข้ามและการเริ่มต้นการประมวลผลใหม่