2014-11-14 14 views
13

Tôi hiểu rằng khung lô mùa xuân xử lý dữ liệu theo khối. Tuy nhiên, tôi đã nghĩ rằng khi các chức năng chunking cùng có thể được acheived thông qua java tại sao chúng ta cần phải đi cho khuôn khổ lô.Ưu điểm của lô mùa xuân

Thú vị khi tìm kiếm tôi đã xem một trong các blog here nơi cung cấp một số giải thích.

Có thể bất kỳ ai vui lòng cho tôi biết nếu có nhiều lý do hơn để đi vào khung lô hàng mùa xuân không?

+1

Bạn không nhận được khả năng khởi động lại, giám sát và toàn bộ cơ sở hạ tầng theo lô trong java. Ofcourse bạn có thể làm tất cả mọi thứ với java đơn giản nhưng bạn sẽ? –

+0

Tại sao trái đất lại đóng câu hỏi? @ M.Deinum Tất nhiên đó là ý kiến ​​dựa trên, nhưng tôi muốn nghe ý kiến ​​của mọi người để tạo nên tâm trí của riêng tôi! Chúng tôi chia sẻ kinh nghiệm của chúng tôi sau khi tất cả. Câu hỏi này có làm phiền bạn hay không ... –

Trả lời

40

Hãy để tôi thuật lại câu hỏi của bạn một chút và xem điều này có giải quyết được không.

Spring Batch cung cấp những gì tôi phải xử lý khi xây dựng một ứng dụng hàng loạt?

Hàng loạt mùa xuân được dùng làm cơ sở cho JSR-352 (đặc tả lô java) và vì đặc tả đó đã xuất hiện, có rất nhiều Spring Batch hiện có sẵn trong không gian java. Nói như vậy, vẫn có rất nhiều rằng mùa xuân hàng loạt cung cấp bên ngoài phạm vi của những gì cơ bản Java nào:

Trong vòng một "cơ bản" hàng loạt công việc

Trong phạm vi của một công việc thực thi đơn giản, Spring Hàng loạt cung cấp một tập hợp các tiện ích và triển khai đã được thử nghiệm trong tất cả các ngành dọc. Một số ví dụ là:

  • Hơn 17 ItemReader và 15 ItemWriter triển khai bao gồm các lựa chọn rộng lớn cho đầu vào và đầu ra (File, JDBC, NoSQL, JMS, vv). Tất cả những điều này cung cấp các tùy chọn I/O khai báo để bạn không phải viết và kiểm tra mã cho người đọc và nhà văn độc lập.
  • Một bộ sưu tập gồm Tasklet (tương đương với Spring Batch tương đương với JSR-352's Batchlet) các triển khai bao gồm các triển khai thực hiện lệnh shell và giao tiếp với Hadoop.
  • Khả năng dừng/bắt đầu/khởi động lại công việc và duy trì trạng thái giữa các lần thực thi.
  • Khả năng bỏ qua và thử lại các bản ghi khi chúng đang được xử lý.
  • Quản lý giao dịch. Spring Batch xử lý các giao dịch cho bạn.
  • Khả năng thông báo cho các hệ thống khác khi xảy ra lỗi qua tin nhắn bằng cách tích hợp Spring Integration.
  • Cấu hình dựa trên Java hoặc XML.
  • Tất cả các tính năng của Spring như DI, ​​AOP, testability, v.v.
  • Độc lập của nhà cung cấp - Bằng cách sử dụng Spring Batch, bạn sử dụng khung làm việc mã nguồn mở và không gắn với bất kỳ nhà cung cấp nào.

lợi thế bổ sung

Ngoài các ví dụ trên về những gì mùa xuân hàng loạt mang đến cho bảng, nó đi xa hơn nữa:

  • tùy chọn Khả năng mở rộng - Mùa xuân hàng loạt cung cấp một số tùy chọn khả năng mở rộng mà trong phạm vi một JVM đơn lẻ thông qua các luồng (bước đa luồng, phân vùng cục bộ và chia tách) thành khả năng mở rộng đa JVM (phân vùng từ xa và chunking từ xa).
  • Tích hợp với Spring Integration - Spring Integration cung cấp một số yếu tố hữu ích cho phép bạn xây dựng các ứng dụng hàng loạt mạnh mẽ để xử lý những thứ như thông báo lỗi, thư mục poling cho tệp, tệp FTP tự động, v.v.
  • Hỗ trợ dữ liệu lớn - Thông qua dự án Spring for Apache Hadoop, có một số phần mở rộng cho Spring Batch cho phép nó hoạt động tốt với Hadoop. Bạn có thể chạy công việc Spring Batch trên YARN, bạn có thể thực hiện các công việc Pig, Hive, MapReduce, etc.
  • Tích hợp với Spring XD - Spring XD cung cấp thời gian chạy được phân phối cho việc triển khai, quản lý và thực thi các tác vụ theo lô.

Cá nhân tôi xem xử lý theo lô làm mô hình lập trình và quên nó. Trong khi nó không phải là sexy, xử lý hàng loạt là một mô hình xử lý rất hữu ích và hữu ích hơn ở những nơi mà hầu hết mọi người nhận ra. Spring Batch cung cấp một môi trường làm cho việc phát triển các công việc hàng loạt mạnh mẽ dễ dàng nhất có thể.

+2

Quản trị hàng loạt Spring - Mặc dù không phải là một phần của khung công tác cốt lõi. Ứng dụng quản trị hàng loạt khá hữu ích và cung cấp giao diện người dùng cơ bản không chỉ cung cấp Chế độ xem vào Công việc của bạn mà còn cho phép bạn thực hiện các thao tác cơ bản như, bắt đầu, dừng, khởi động lại. Nó cũng có thể tăng cường ứng dụng này nhiều như bạn muốn. – Prakash

Các vấn đề liên quan