🍋
Menu
General

Batch Processing

Batch Processing (การดำเนินการไฟล์จำนวนมาก)

เทคนิคการใช้การดำเนินการเดียวกันกับหลายไฟล์พร้อมกันหรือตามลำดับ แทนที่จะประมวลผลแต่ละไฟล์ทีละไฟล์ ช่วยประหยัดเวลาอย่างมากสำหรับงานที่ซ้ำกัน

รายละเอียดทางเทคนิค

ในเครื่องมือบนเบราว์เซอร์ batch processing มักใช้ File API ของ JavaScript เพื่ออ่านหลายไฟล์ผ่าน drag-and-drop หรือ file picker ประมวลผลแต่ละไฟล์ผ่าน Web Worker เพื่อไม่ให้บล็อก UI thread และรวมผลลัพธ์สำหรับดาวน์โหลด (มักเป็น ZIP โดยใช้ JSZip) Batch processing ฝั่งเซิร์ฟเวอร์ใช้ job queue (Celery, RQ) พร้อมขีดจำกัดการทำงานพร้อมกันที่กำหนดได้เพื่อป้องกันการใช้ทรัพยากรหมด ข้อพิจารณาสำคัญรวมถึงการรายงานความคืบหน้า การจัดการความล้มเหลวบางส่วน และการจัดการหน่วยความจำสำหรับชุดไฟล์ขนาดใหญ่

ตัวอย่าง

```javascript
// Batch process files with progress tracking
async function batchProcess(files, processFn) {
  const results = [];
  for (let i = 0; i < files.length; i++) {
    const result = await processFn(files[i]);
    results.push(result);
    updateProgress((i + 1) / files.length * 100);
  }
  return results;
}
```

คำศัพท์ที่เกี่ยวข้อง