Xin chào mọi người, thời gian gần đây em có tìm hiểu về Spring Batch.Em có vài câu hỏi muốn hỏi là:

Điểm mạnh và nổi bật nhất của Spring Batch có phải là chỉ để tối ưu hiệu năng khi import 1 số lượng cực lớn data của 1 resource (file,…) vào đích (DB,…) không ạ? Ngoài ra thì người ra dùng Batch Processing để làm những gì nữa ạ?Mong anh Dũng và mọi người cho em xin lộ trình các kiến thức cần học khi tìm hiểu sâu về Spring Batch với ạ.Em đã có biết cơ bản về Job, Step, Processer, Writer, Reader.

Bạn đang xem: Spring batch là gì

Em cám ơn rất nhiều!


*

1. Spring Batch không liên quan gì đến hiệu năng em ạ. Nó chỉ đơn giản là 1 thư viện hỗ trợ việc lập lịch và xây dựng các chuỗi hành động khi đến thời điểm mà batch chạy mà thôi.2. Các thành phần cơ bản của spring batch cũng chỉ có vậy, em nắm chắc là được em ạ.



Dạ em cám ơn anh đã trả lời em ạ.Nhưng em có một thắc mắc muốn hỏi anh là các chức năng của Spring Batch thì theo em thấy thì Spring Boot cũng có thể làm được.Nên em nghĩ chắc vì 1 lí do nào đó cao siêu ( ban đầu em nghĩ là xử lí theo batch thì sẽ tối ưu hiệu năng hơn) thì Spring Batch mới xuất hiện.Nhưng theo anh nói việc sử dụng Spring Batch ko giúp việc tối ưu hiệu năng vậy anh cho em hỏi là tại sao người ta lại ra đời Spring Batch vậy anh trong khi Spring Boot cũng có thể làm được ạ?


*

Cái này anh cũng không rõ em ạ. Anh thấy nó cấu hình tiện hơn đó, kiểu chạy cái này xong đến cái này, tái sử dụng đc 1 ít cấu hình, nhưng anh cũng chẳng dùng bao giờ.


*


Dạ theo hiểu là Batch Processing là xử lý theo mẻ, tức là mỗi lần connect database ta sẽ insert, update, delete một nhóm bản ghi. Việc xử lý theo mẻ như vậy giúp ta tiết kiệm thời gian (tăng hiệu năng) trong mỗi lần kết nối tới database.


Batch dùng khi lượng data phải di chuyển lớn ko thể kết thúc trong vài s như lướt web. Ví dụ ngân hàng hết mỗi ngày phải chạy batch để validate lại data của ngày hôm đó, các trang thương mại kiểu amazon hết ngày cũng phải chạy batch để tổng hợp báo cáo cho lãnh đạo. Batch rất quan trọng hầu như hệ thống lớn nào cũng có.

Spring batch là 1 library tích hợp với spring nên nó sẽ có các chứng năng của spring plus theo các tính năng hỗ trợ batch. Ví dụ Spring batch có chunk em insert 1 triệu bản ghi em có thể set chunk là 100k thế cứ đọc 100k là vào db, sáng ra xem log thấy batch chết ở 700k thì chạy tiếp chỗ còn lại thui.

Master thì chạy test debug xem cách các Java champion viết thư viện :v. Đùa thui làm 1 2 lần là quen thui.

Xem thêm: Xét Nghiệm Rbc Đánh Giá Chỉ Số Rbc Bình Thường Là Bao Nhiêu?


Google
" data-plugin="nsl" data-action="connect" data-provider="google" data-popupwidth="600" data-popupheight="600">

.net coreabstract classanalyticsandroidansibleanti-floodingapiasyncasyncawaitatomicbooleanbackendbackend nestjsbash scriptbatchbeanbig projectbindingbitcoinblockchainblogbritishbufferedbuildbundlec#cachecachingcallbackcareercareer pathcastcentoschatcloudcloud reliabilitycommitcompanycontent-dispositioncontractcorscosmoscssdatabasedatasourcedatastructuredecentralized exchangedeep learningdesign-patterndevopsdexdistraction programingdockerdownloaddraw.iodu họceclipeditoremployeeenglisherc20erc721ethethereumethereum loginexyfoxezyfoxezyfox-bootezyfox-serverezyfoxserverezyhttpfacebookfeflutterfreetankfrenchfront-endfrontendfullstackfulltextsearchfuturegamegame-boxgame-roomgame-servergetgitgogolanggooglegrapqlgrpchazelcasthibernatehibernateconfightmlhttphttpsindexingintellijinterfaceinterviewioipfsisolateissueitjavajavacorejava corejavascriptjava springjavawjava webjobjpajsjsonjsp & servletjvmjwtkafkakeep promisekerberoskotlinlanguagelanguaguelibraryload-balancingloglog4jlog4j-coreloginmachine learningmathmavenmergemessagingmetamaskmicroservicemodelmsgpackmultithreadmultithreadingmysqlnnamingnaming conventionnetcorenettynftnft gamenionodejsnon-blocking ioopensourceoptimizeormpaginationpanicpgpoolphỏng vấnpointerpreprogrammingpromisepush message androidpythonpython unicodequestionrabbitmqreactivereactjsreactjs downloadrecyclerviewredisrequestresourcerestroadmapropsstenropstenrustrxjavaschedulesearchsecurityservershift jissingletonsjisslacksmart contractsocketsoft deletesosanhspringspring-jpaspring aopspringbootspring bootspring data jpaspring redisspringsecuritysqlsql serversseherphangout.comstoragestreamsystem environment variablesthreadthreadjavathymeleaftotptracking locationunit testunityupload filevectorviewvolatilevuevue cliweb3web3 clientwebpackwebsocketwindows 11winformsworkzookeeper
Stack Ask is where Developers Ask & Answers. It will help you resolve any questions and connect you with other people.