วันอังคารที่ 27 ธันวาคม พ.ศ. 2554

การแก้ปัญหาระบบช้า part.1

การ solving หรือ solution ที่เป็นเทคนิคสำคัญในการแก้ปัญหาระบบช้า เพื่อให้ตอบสนอง การใช้งานอย่างมีประสิทธิภาพ
คือการทำ System Design ซึ่งจะเป็นการออกแบบระบบที่มีประสิทธิภาพ แม่นยำ ถูกต้อง ง่ายต่อการใช้งาน และ ง่ายต่อการบริหารจัดการ
หรือแก้ไขระบบในภายหลัง
ถ้าต้องการให้ระบบที่ implement ทำงานมีประสิทธิภาพ มีกระบวนการ Design ดังนี้
1. pattern และ style การ coding
เช่น การเเบ่ง class หรือแบ่งงานที่ทำหน้าที่ต่างๆ ในรูปของ MVC เช่น Model ,View ,Controller หรือ Layer Access Database
2. Database Design
การจัดการเกี่ยวกับ Database มีผลต่อการใช้งานของ User เมื่อมีข้อมูลเยอะ ดังนั้นการเขียน SQL ในรูปของ Stroreprocedure หรือ PL/SQL เพื่อโยนความรับผิดชอบในการ
อ่าน,เขียน,ลบ,ค้นหา ให้ Database Server รับผิดชอบแต่เพียงผู้เดียว (ขึ้นอยู่กับ ยี่ห้อ Database)
ดังนั้นจะเห็นว่า code หรือตัวภาษาจะเป็นสือการในการ Input,Output ข้อมูล เท่านั้นเอง ซึ่งการทำงานก็จะเร็วขึ้นและมีประสิทธิภาพ ลด traffic และ Over head ระหว่าง
WebServer กับ Database Server แต่ถ้ามีข้อมูลเยอะๆ มีเทคนิคในการแก้ปัญหาอย่างไร? วิธีหนึ่งที่เห็นในการแก้ปัญหาคือการ ลมข้อมูลใน record ที่ไม่ใช้งานหรือข้อมูลที่เก่า
การทำเช่นนี้ก็ต้องทำการ table ที่เป็น transaction เพราะจะทำให้ระบบทำงานได้ดีขึ้น แต่ถ้าเป็นระบบที่มีการ Design ดีๆ ก็จะมีการ ย้ายข้อมูลที่เป็น transaction ไปไว้ใน table backup
ดังนั้นการทำงานของระบบก็จะมีประสิทธิภาพ ได้ดีขึ้น ซึ่งการจะทำอย่างนี้ก็ต้องมีการ Filter หรือ select และต้อง Difine ว่าจะทำอย่างไร เวลาเท่าไร เช่นเลือก table transaction ที่มีการใช้งานมาที่สุด
มา ย้ายไปที่ tabale back up โดยมีการย้ายทุกๆ 1 เดือน หรือ 3 เดือนขึ้นอยู่กับความสำคัญของข้อมูล เป็นต้น ซึ่งทั้งนี้ทั้งนั้นก็ขึ้นอยู่กับ การใช้งาน ข้อมูล ความต้องการ และ ความเหมาะสมกับระบบ
นั้นๆด้วย
3. System Design
การออกแบบระบบ ที่ดีเมื่อเริ่มการการ code cleaning,Database design บางครั้งก็ต้องทำการ tuning system เพื่อให้เหมาะสมกับระบบและการใช้งาน
4. Hardware
แน่นอนครับ hardware เป็นสิ่งที่ควรปรับปรุงให้เหมาะสมกับ software