นอกเรื่อง - Real Time WebSite
กระทู้เก่าบอร์ด อ.Yeadram

 1,739   2
URL.หัวข้อ / URL
นอกเรื่อง - Real Time WebSite

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




หัวข้อศึกษา "ถ้าผมมีเว็บเป็นของตัวเอง ผมสามารถให้เว็บของผม แสดงข้อมูลเป็นแบบ real time ได้หรือไม่ อย่างไร"
- บนเว็บมีฐานข้อมูลของมันเอง แสดงผลผ่านหน้าเว็บโดยดึงข้อมูลจาก db ตัวนั้นเลย
   ถ้าข้อมูลมันอัพเดตตลอด มันก็แสดงผล real time ได้แน่ล่ะครับ แต่ผู้ที่จะทำการอัพเดตข้อมูล ควรจะทำอย่างไร หรือทำด้วยวิธีอะไร มีหลักการพิจารณาทางเลือกอย่างไรได้บ้าง
ลองอ่านความเห็นของผมดูครับ
( * กรุณาอย่านำไปใช้อ้างอิงใดๆ เพราะเป็นความเห็นที่ได้จากการสังเกตและทดลองด้วยประสบการณ์ของผมเองทั้งสิ้น ไม่มีหลักวิชาใดๆ สถาบันใดๆ หรือผู้รู้ใดๆ รองรับถึงความเป็นมาตรฐานนะครับ)



- การบันทึก อัพเดตข้อมูล แบ่งแนวทางเป็น
1 เขียนเว็บเพจเพื่อรองรับการทำงานดังกล่าว
   - ต้องต่อเน็ตตลอดเวลา ต้องติดต่อได้ทั้งทางโฮสต์ (ตัวรันสคริปต์เว็บเพจ) ทั้งทางเซิรฟเวอร์ (ตัวรันดาต้าเบส) ในเวลาเดียวกัน ถ้าการเชื่อมต่ออย่างใดอย่างหนึ่งหลุด การทำงานก็มีปัญหา
          (* ผู้ให้บริการส่วนใหญ่ใช้ HDD เดียวกัน CPU เดียวกัน บนเครื่องฝั่งเซิร์ฟเวอร์ จึงไม่ค่อยมีปัญหา แต่ผู้ให้บริการบางที่
                  จะจัดสองอย่างนี้ไว้คนละ HDD หรือคนละเครื่องเลย เพื่อความสะดวกในการจัดการของเขาเอง)
   - บันทึกหรือแก้ไขได้ทีละเรคคอร์ด
   - ทุกๆ คำสั่งจะมีการประมวลผล ฝั่ง server จะต้องต่อเน็ตตลอดเวลา ถ้าเน็ตหลุด ไฟดับ server ล่ม อย่างน้อยๆ เรคคอร์ดนั้นเสียหาย
อย่างมากขึ้น เสียหายทั้งตาราง อย่างมากสุดๆ เสียหายทั้ง ดาต้าเบส
2 เขียนโปรแกรมให้รันทางฝั่ง client กรอกผ่านโปรแกรมของเรา แต่ให้บันทึกลงฐานข้อมูลบนโฮสต์ทันที
   2.1 การบันทึกแบบทีละคำสั่ง ใช้คำสั่ง คอนเน็คทุกครั้งที่บันทึกสั่งรัน SQL ทุกๆ จังหวะ
        - ข้อดี Real Time แบบข้อมูลต่อข้อมูล ทันทีที่คีย์คะแนน 400 เลข 400 สามารถแสดงผลหน้าเว็บทันที
        - ข้อเสียเหมือนข้อ 1 และช้า เพราะต้องตัดและเชื่อมต่อ การคอนเน็คบ่อยๆ
   2.2 การลิงค์ตารางจากฐานข้อมูลลงมา สั่งคอนเน็คเมื่อเริ่มโปรแกรม สั่งตัดการคอนเน็คเมื่อปิดโปรแกรม
        - ข้อดีเหมือนข้อ 1
        - และไม่ต้องร้องขอการเชื่อมต่อไปที่โฮสต์บ่อยๆ ทำให้โฮสต์ไม่ทำงานหนัก
        - อาจมีการ lock record ที่เรากำลังทำงาน ทำให้สคริปต์ทางเว็บ อาจเข้าไม่ถึงข้อมูลนั้นๆ ได้ จึงไม่สามารถนำข้อมูลไปแสดงผลหน้าเว็บได้ในบางจังหวะ
        - โปรแกรมที่ทำงานฝั่ง client อาจกระตุก (ช้า อืด) บ้าง ในบางจังหวะ เพราะอาจมีการ รีเฟรช ตารางลิงค์เหล่านั้น
3 จัดเตรียมข้อมูล ในทางฝั่ง client ให้เรียบร้อยก่อนแล้ว ค่อยส่งเข้าไป ฐานข้อมูลบนโฮสต์
    3.1 การส่งเข้าไปเฉพาะข้อมูล
        3.1.1 ใช้เมนูการ import - export ของแต่ละโปรแกรม
               (* เหมาะสำหรับกรณี ข้อมูลทาง Client และทาง host อยู่ในรูปแบบเดียวกัน หรือในฐานข้อมูลชนิดเดียวกัน เช่น บนโฮสต์ใช้ MS SQL ข้อมูลที่เตรียมไว้ก็อยู่ใน ฐานข้อมูล MS SQL เช่นกัน)
        3.1.2 การเรียงข้อมูลให้ออกมาเป็นประโยคคำสั่ง SQL แล้วเอาไปให้ สคริปต์บนโฮสต์ รัน
               (* ใช้ในกรณี ที่ข้อมูลทาง host กับทาง client อยู่ในรูปแบบคนละรูปแบบ จึงต้องใช้ SQL Statement เข้ามาเป็นตัวกลาง เช่น บนโฮสต์เก็บข้อมูลด้วย MySQL แต่ข้อมูลที่เตรียมไว้ เป็น text หรือ csv)
    3.2 การส่งเข้าไปใหม่หมด รวมทั้งโครงสร้าง เช่นการใช้ Access (mdb ทั้งก้อนเลย) อัพก้อนใหม่ไปวางทับก้อนเก่า ง่ายดี

    - จะอัพเดตได้ Real Time แค่ไหนขึ้นอยู่กับเรา ผู้ทำงานฝั่ง client ว่าจะทยอยส่งข้อมูลถี่แค่ไหน
    - ใช้เวลาอัพเดตที่แน่นอน เป็นช่วงเวลา ทำให้วางแผนได้คร่าวๆ ว่าช่วงไหนเหมาะกับการส่งข้อมูล ลดโอกาสความเสี่ยงที่ข้อมูลจะเสียหายระหว่างทาง ซึ่งอาจจะเกิดขึ้นได้กรณี เน็ตหลุด ไฟดับ host ล่ม
    - มีเวลาที่จะตรวจสอบข้อมูลให้ถี่ถ้วนก่อนจะเอาข้อมูลไปประจาน (เอ้ย โชว์ หน้าเว็บให้คนทั้งโลกได้มีโอกาสเห็น)
    - การจัดเตรียมข้อมูล สามารถให้ผู้อื่นช่วยจัดเตรียมได้ โดยที่คนผู้นั้นไม่จำเป็นต้องรู้ ข้อมูลการล็อกอิน หรือข้อมูลการเชื่อมต่อบนโฮสต์ของเรา
    - การจัดเตรียมข้อมูล สามารถเขียนเป็นโปรแกรม แบบ ออฟไลน์ เพื่อให้ผู้ที่ช่วยจัดเตรียม ได้ทำงานอย่างสะดวก (มีฟอร์ม มีฟีเจอร์ที่สะดวกใช้)

------------------- yeadram @ thai-access.com ------------------

2 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R07013
ตอนนี้ผมไม่ัรู้เรื่องของดาต้าเบส และการเชื่อมต่อให้เป็นเรียลทาม

ผมต้องเริ่งยังไรคับเพราะตอนนี้ผมกำลังทำโปรเจคนี้ที่จะแสดงข้อมูลอากาศ

ของเราแสดงผ่านหน้าเว็บตลอดเวลาครับ

ช่วยแนะนำหน่อยนะคับ
2 @R07014
ยาวครับ อิอิ

อันดับแรก คำถามวัดความเข้าใจเรื่อง ดาต้าเบส
    1 ข้อมูลอากาศของคุณจัดเก็บไว้ในรูปแบบใด (นั่นคือฐานข้อมูลของคุณ หรือ back-end)
     2 ปกติแล้วคุณดูข้อมูลของคุณเองได้อย่างไร (สิ่งที่ช่วยนำข้อมูลมาแสดงนั่นแหละเรียกว่า front-end)
     3 เวลาคุณต้องการปรับเปลี่ยน เพิ่มเติม แก้ไข ลบ ล้างข้อมูลของคุณ คุณทำได้อย่างไร ด้วยอะไร (อันนี้ก็เป็นการจัดการผ่าน front-end)

อันดับสอง คำถามวัดความรู้ ความเข้าใจเรื่อง website
   1 คุณมีเว็บไซต์เป็นของตัวเองหรือยัง เว็บไซต์ของคุณตั้งอยู่ที่ใด ของคุณเอง ของหน่วยงานคุณ หรือเช่า
   2 host ของคุณรองรับสคริปต์ภาษาใดบ้าง
   3 คุณเคยแสดงข้อมูลอื่นๆ หรือผลงานอื่นๆ ที่ไม่เกี่ยวข้องกับ ดาต้าเบส ผ่านเว็บไซต์ของคุณบ้างหรือยัง
   4 เครื่องที่ติดตั้ง host ของคุณ มีโปรแกรมฐานข้อมูลแล้วหรือยัง หรือสามารถรองรับฐานข้อมูลชนิดใดได้บ้าง
   5 ฐานข้อมูลบนโฮสต์ของคุณมีไว้แล้วหรือยัง เป็นฐานข้อมูลชนิดใด คุณเคยเข้าไปจัดการกับมันแล้วหรือยัง คุณใช้มันเป็นหรือไม่ คล่องเพียงใด คุณมีสิทธิ์ขั้นใดในการจัดการกับมัน
   6 คุณรู้จักกับสคริปต์ภาษา html หรือไม่ เคยเขียนบ้างหรือเปล่า ใช้เครื่องมือใดช่วยเขียน
   7 คุณรู้จักสคริปต์ภาษาอื่นนอกเหนือจาก html หรือไม่ เช่น java, c++.net, asp, asp.net, php ฯลฯ คุณเคยเขียนบ้างหรือไม่ ใช้เครื่องมือใดช่วยเขียน

อันดับสาม คำถามวัดความเข้าใจเรื่องการเขียนโปรแกรม
    1 คุณเคยเขียนโปรแกรมอะไรบ้างแล้วหรือไม่
    2 โปรแกรมที่คุณเคยเขียนเกี่ยวข้องกับฐานข้อมูลหรือไม่
    3 ภาษาใด ที่คุณเคยใช้เขียนโปรแกรม
    4 โปรแกรมที่คุณเคยเขียน ใช้งานผ่านเน็ตเวิร์คได้หรือไม่
    
อันดับสี่ คำถามวัดความพร้อมก่อนเริ่มต้น
     1 งานของคุณเป็นงานที่ต้องทำคนเดียวหรือเป็นกลุ่ม หากจะติดตั้งดัดแปลงโปรแกรมใดๆ เช่น ตั้งค่าต่างๆ ของ host, ตั้งค่าต่างๆ ของฐานข้อมูล คุณสามารถทำได้ด้วยตัวเองหรือต้องติดต่อผ่านคนอื่น หรือหน่วยงานอื่นหรือไม่
     2 งานของคุณเป็นงานฝึกหัดเพื่อหาความรู้ หรืองานที่ต้องทำจริงๆ เพื่อหน้าที่การงาน
     3 คุณมีเวลาจำกัด ในการลงมือทำหรือไม่


เพราะคุณถามมาน้อย แล้วลงท้ายด้วยการขอคำแนะนำ ดังนั้น จึงไม่สามารถรู้ได้ว่า คุณมีพื้นฐานมากน้อยเพียงใด คำแนะนำในระดับใดจึงจะเหมาะกับคุณ ผมก็เลยต้องตั้งคำถามย้อนกลับไป นิดหน่อย เป็นคำถามที่ผมไม่คาดหวังว่าจะได้คำตอบมากนักหรอกครับ แต่ที่ผมถาม คือถามให้คุณได้คิดว่า งานของคุณเปรียบกับความเข้าใจของคุณ เปรียบกับเวลาของคุณ ควรจะทำเองหรือจ้างคนอื่นทำ คุณจะหาความรู้จากเว็บบอร์ด หรือจะหาความรู้ในห้องเรียน หรือจะหาจากหนังสือ หรือจะดูจากตัวอย่าง อันไหนใช้เวลาน้อยกว่ากัน

สุดท้าย ลองประเมินดูครับว่า
คำตอบของผมใช้เวลานั่งคิดนั่งพิมพ์มากกว่าคำถามของคุณกี่เท่าตัว?
    
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.3512s