|
<< Click to Display Table of Contents >> Navigation: ADDITIONAL > Connection Time Out |
เพื่อเป็นทางเลือกเพิ่มเติมสำหรับการติดต่อกับฐานข้อมูลของโปรแกรมโดยทั่วไป ซึ่งก่อนหน้านี้ทาง TASCO ERP จะกำหนดเป็นการตายตัวไว้ในโปรแกรม ทำให้ไม่เกิดความยืดหยุ่นต่อการใช้งานสำหรับลูกค้า
ลักษณะการติดต่อฐานข้อมูลมี 2 ลักษณะ (โปรแกรม TASCO ERP ใช้ฐานข้อมูล Microsoft SQL Server เวอร์ชั่น 2008R2 เป็นต้นไป)
1. แบบติดต่อฐานข้อมูลตลอดเวลา: เมื่อโปรแกรมติดต่อฐานข้อมูลแล้ว จะจองการติดต่อนั้นไว้ตลอดเวลา แม้ว่าขณะนั้นจะไม่ได้ใช้ฐานข้อมูลก็ตาม เช่นเปิดรายงาน แล้วตรวจสอบรายงานนั้น ก็จะยังติดต่อฐานข้อมูลอยู่เสมอ
2. แบบติดต่อฐานข้อมูลเมื่อมีความต้องการใช่: เมื่อโปรแกรมต้องการดึงข้อมูล, เพิ่มข้อมูล, แก้ไขข้อมูล หรือลบข้อมูล จึงติดต่อฐานข้อมูล และเมื่อกระทำการเรียบร้อยแล้ว จะปิดหรือยกเลิกการติดต่อฐานข้อมูลโดยทันที โดยข้อดีของการติดต่อฐานข้อมูลแบบวิธีนี้จะใช้ทรัพยากรที่น้อยกว่ามาก
หมายเหตุ:
•โปรแกรมจะใช้ข้อมูลจากฐานข้อมูล หรือกระทำการกับข้อมูลในฐานข้อมูล เมื่อต้องการดึงข้อมูล, เพิ่มข้อมูล, แก้ไขข้อมูล หรือลบข้อมูล
•โปรแกรม TASCO ERP จะใช้การติดต่อฐานข้อมูล “แบบติดต่อฐานข้อมูลเมื่อมีความต้องการใช้”
ทำความเข้าใจเกี่ยวกับ Connection Time Out หรือการตั้งเวลาของการติดต่อฐานข้อมูล ดังนี้
Connection Time Out เป็นการตั้งเวลาการติดต่อฐานข้อมูล เพื่อการใช้ข้อมูลจากฐานข้อมูล หรือกระทำการกับข้อมูลในฐานข้อมูล โดยหากการกระทำการนั้น ใช้เวลาเกินกว่าระยะเวลาเกิดกำหนด โปรแกรมจะถือว่าการทำงานในส่วนนั้นไม่สมบูรณ์ และจะถูกยกเลิกการกระทำการนั้นไปโดยปริยาย ซึ่งในช่วงการกระทำการนั้นอยู่ หากมีผู้ใช้รายอื่น มีการต้องการใช้งานด้วย ก็จะต้องรอให้ผู้ใช้รายการก่อนหน้าทำงานสิ้นสุดก่อน หรือถูกยกเลิกไปโดย Time Out ที่กำหนดไว้
กรณีที่ผู้ใช้ตั้งค่า Time Out ไว้สูง หาก Network มีปัญหา คือสามารถติดต่อฐานข้อมูลได้ แต่การรับส่งข้อมูลค่ำ และการตอบสนองช้า จะทำให้ผู้ใช้รายอื่น ต้องรอในระยะเวลานานมากยิ่งขึ้นเป็นเงาตามตัวไปด้วย และจะมีผลกระทบเป็นลูกโซ่ต่อการใช้ระบบในภาพรวม ทั้งที่ผู้ใช้ส่วนใหญ่ที่สามารถที่จะเข้าถึง และใช้งานฐานข้อมูลในระยะเวลาที่สั้นกว่า เนื่องจากการรับส่งข้อมูล และการตอบสนองที่เร็วกว่า
แนะนำ ตั้ง Time Out ไว้ที่ 600 วินาที หรือ 5 นาที หากมีการเกิด Time Out ให้ตรวจสอบระบบ Network ภายในก่อน โดยมีกรณีตัวอย่างจากประสบการณ์ของทีมงานเป็นกรณีสังเกตุ ดังนี้
•กรณีติดต่อผ่าน WIFI ซึ่งจุดที่ผู้ใช้อยู่อาจจะเป็นจุดอับสัญญาณ ทำให้การรับส่งข้อมูล หรือการตอบสนองที่ต่ำมาก ซึ่งโปรแกรมสามารถใช้งานได้ แต่ในประสิทธิภาพที่ต่ำ และตอบสนองช้าไปด้วย ซึ่งกรณีนี้จะทำให้ผู้ใช้รายอื่น รอคิวนานไปด้วย
•กรณีเปิดใช้งาน Router หรือ Switching Hub ตลอดเวลา ซึ่งอุปกรณ์เหล่านี้มีทั้ง Hardware และ Firmware ทำงานร่วมกัน การเปิดไว้ตลอดเวลาเกิดความร้อนสะสม ซึ่งอาจจะทำให้ Hardware ทำงานได้ไม่เต็มประสิทธิภาพ หรือกรณีที่เป็น Firmware อาจจะ Error ภายในได้เช่นกัน จำเป็นต้อง Reset หรือปิดการใช้งานชั่วคราว 5-10 นาที และเปิดขึ้นมาใหม่เพื่อให้ Hardware และ Firmware ได้ Reset ตนเองเพื่อทำงานใหม่ได้
หมายเหตุ (สำคัญมาก)
กรณีตั้ง Time Out ไว้ที่ 0 วินาที หมายถึงการที่ไม่ต้องตรวจสอบ Time Out เลย และโปรแกรมจะพยายามทำงานจนสิ้นสุดกระบวนการ หรือจะเกิด Error โดยโปรแกรมที่มีการตรวจสอบไว้ภายในแล้วด้วยส่วนหนึ่ง อีกทั้งไม่ควรตั้งไว้ที่ 0 วินาที
กรณีเมื่อใช้โปรแกรม TASCO ERP แล้วขึ้น Time Out
•กรณีที่เป็นการดูรายงาน: เนื่องจากมีการดึงข้อมูลจำนวนมาก อาจจะเกิดขึ้นได้ ซึ่งกรณีเหล่านี้ ทางผู้พัฒนาจะนำข้อมูลของลูกค้ามาตรวจสอบ และหาแนวทางในการปรับปรุงรายงานเพิ่มเติม เพื่อไม่ให้เกิด Time Out ในกรณีดังกล่าวได้
•กรณีที่เป็นการบันทึกข้อมูล: เนื่องจากการบันทึกข้อมูลของโปรแกรม TASCO ERP จะไม่มีการบันทึกข้อมูลจำนวนมากในครั้งเดียว ดังนั้นการเกิด Time Out จะเกิดขึ้นได้น้อยมาก ยกเว้นว่า อัตราการรับส่งข้อมูลระหว่าง Client – Server มีอัตราที่ต่ำ หรือมีการ Drop ของสัญญาณระหว่างการรับส่งข้อมูลอยู่ก็จะเกิด Time Out ได้
•กรณีเป็นการดึงข้อมูล: เนื่องจากหน้าจอของ TASCO ERP ใช้ Concept หน้าจอโปรแกรมแบบ Listing (หน้าแสดงรายการข้อมูล) & Info (หน้าบันทึกข้อมูล) โดยหน้าจอ Listing อาจจะเกิด Time Out ได้ เมื่อเลือกใช้ปุ่มคำสั่ง “Refresh” เนื่องจากเป็นการดึงข้อมูลแบบไม่มีเงื่อนไข จึงข้อมูลทั้งหมดของหน้าจอนั้น ที่เคยบันทึกไว้ทั้งหมดขึ้นมาแสดงในหน้าจอ Listing
หมายเหตุเกี่ยวกับฐานข้อมูล Microsoft SQL Server จะมี Properties ของตัวเองชื่อ “Remote query timeout”
•ฐานข้อมูล Microsoft SQL Server จะมี Properties ของตัวเองชื่อ “Remote query timeout” ซึ่งเงื่อนไขส่วนนี้จะไม่มีผลต่อโปรแกรมที่ติดต่อฐานข้อมูลโดย Database Engine อย่างเช่นโปรแกรม TASCO ERP ก็จะไม่สนใจในเงื่อนไขส่วนนี้