GORAGOD.com

GORAGOD.com

freelance, web developer, web designer, hosting, domain name

การ Import Text file หลายหมื่น Record

การ Import Text file หลายหมื่น Record ด้วย PHP เรามีวิธีการจัดการอย่างไรครับ

ให้สามารถที่จะ Import ได้โดยไม่เกิดปัญหาครับ
03 มิ.ย. 2554 2 2,751

555+++



ตอบตรงๆ ก้เขียนให้ถูก...



จะทำงานมากหรือน้อยก็มีหลักการเดียวกันครับ ทำงานน้อย แล้วผิดก็มีค่าพอๆกันกับทำมากๆแล้วผิดครับ



ที่ผมอยากจะสื่อจริงๆก็คือจะทำงานมากหรือน้อยก็ใช้หลักการอย่างเดียวกันครับ ถ้าโค้ดทำงานได้ถูกต้อง จะกี่ล้าน record ก็ทำงานได้



ผมเดาว่าเจ้าของคำถามคงกังวลว่าทำงานนานๆจะเป็นอย่างไร คำตอบที่ผมเคยเจอคือ "รำคาญครับ" อะไรที่ต้องคอยนานๆให้ความรู้สึกไม่ดีกับคนทั้งนั้น ยกตัวอย่างเช่น การอัปโหลดไฟล์ขนาดใหญ่ รอไปเถอะเป็นนานสองนานกว่าจะอัปโหลดเสร็จ ซึ่งปัญหาที่แท้จริงไม่ได้อยู่ที่ script แต่อยู่ที่ผู้ใช้เองมากกว่า ซึ่งไม่ชอบรอ ทางออกทั่วๆไปก็คือ แสดงความคืบหน้าของงานให้รู้



การทำงานขนาดใหญ่นานๆโดยทั่วไป มี 2 ปัญหาหลักๆที่มักเจอ คือ

1. time out แก้ได้โดยการเพิ่ม set_time_limit(0); ที่ตอนต้นๆไฟล์

2. หน่วยความจำไม่พอ จริงๆ แก้ได้โดยการออกแบบที่ดี ใช้หน่วยความจำและ ทำลายอย่างเหมาะสมก็ช่วยได้ (แนะนำ) หรือแก้ที่ปลายเหตุ ด้วยการเพิ่มหน่วยความจำ ini_set('memory_limt', '1024M');



ที่เหลือส่วนใหญ่ก็จะเป็นปัญหาอันเกิดจากการรอคอยของผู้ใช้ละครับ ซึ่งค่อนข้างน่ากลัวกว่า เช่น การอัปโหลดไฟล์ขนาดใหญ่ รอนาน....จนไม่รู้ว่ามันทำงานหรือไม่ และเสี่ยงปิดหน้าเว็บไปในที่สุด ซึ่งอาจทำให้มีปัญหาได้ ทางออกของปัญหานี้โดยทั่วๆไปคือการจำกัดขนาดที่ยอมรับได้แค่ขนาดหนึ่งก็พอครับ 
#1

ขอบคุณมากๆครับ จะนำความรู้ที่ได้ไปใช้ในการทำงานครับผม
#2
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 64M
^