โครงสร้างและพื้นหลัง:
ปัจจุบันมีระบบ โครงสร้างของมันแตกต่างจาก B/S ทั่วไป นั่นคือมีเลเยอร์ที่ด้านล่าง (เรียกว่าเป็นเลเยอร์ แต่จริงๆ แล้วเป็นโปรแกรมแยกต่างหาก) เลเยอร์เป็น winform โปรแกรม ลองใช้ "exchange" แทน ส่วนใหญ่จะใช้เพื่อสื่อสารกับ "ภายนอก" ส่ง รับ และประมวลผลข้อมูลบางอย่าง จะไม่มีการระบุรายละเอียด
ดังนั้นโครงสร้างปัจจุบันของระบบคือ:
ไคลเอนต์ - เว็บเซิร์ฟเวอร์ (เลเยอร์การนำเสนอ - เลเยอร์ลอจิก - เลเยอร์การเข้าถึงข้อมูล) - ฐานข้อมูล - การแลกเปลี่ยน - ภายนอก
จำเป็นต้องมีการสื่อสาร "เรียลไทม์" ในบางจุด (ของ แน่นอนว่ามันเป็นแบบเรียลไทม์ จริงๆ แล้วเป็นไปไม่ได้เลยที่จะทำแบบ CS ซึ่งเป็นเพียงตัวจับเวลาของ "ไคลเอนต์" และข้อมูลที่ส่งโดย "ภายนอก" ก็สามารถแสดงให้กับ "ลูกค้า" ได้ทันท่วงที "หรือข้อมูลที่ส่งโดย "ลูกค้า" สามารถส่งไปยัง "ลูกค้า" ได้ทันเวลาภายนอก" เราเรียกสิ่งนี้ว่า "การสื่อสารแบบเรียลไทม์" โดยส่วนใหญ่ข้อมูล "ภายนอก" จะถูกจัดเก็บโดยตรงในฐานข้อมูลโดย "การแลกเปลี่ยน" เพื่อใช้ในภายหลัง เราเรียกว่า "การสื่อสารปกติ"
ขณะนี้มีสองตัวเลือก:
ประการแรก ไม่ว่าจะเป็น "การสื่อสารแบบเรียลไทม์" หรือ "การสื่อสารปกติ" "แลกเปลี่ยน" ข้อมูลทั้งหมดที่ได้รับจากภายนอกไปยังฐานข้อมูล ลูกค้าไปที่เว็บเซิร์ฟเวอร์เป็นประจำ และเว็บเซิร์ฟเวอร์จะไป ไปยังฐานข้อมูลเพื่อรับข้อมูลแล้วส่งคืน ข้อมูลของลูกค้าจะถูกส่งไปยังฐานข้อมูลโดยตรง จากนั้นจึง "แลกเปลี่ยน" เพื่ออ่านข้อมูลและส่งต่อไปยัง "ภายนอก" โดยเฉพาะมันคือภาพเส้นด้านบน
สิ่งนี้มีข้อกำหนดที่สูงกว่าในฐานข้อมูล เนื่องจากข้อมูลทั้งหมดผ่านฐานข้อมูล ซึ่งเกี่ยวข้องกับการแลกเปลี่ยนข้อมูลจำนวนมากและการดำเนินการกับตาราง ฉันไม่รู้ว่า SQL2005 จะทนต่อมันได้หรือไม่
2. สำหรับ "การสื่อสารแบบเรียลไทม์" เลเยอร์ "การสลับ" จะถูกใช้เป็นเซิร์ฟเวอร์ระยะไกล และเว็บเซิร์ฟเวอร์จะถูกใช้เป็นไคลเอนต์ระยะไกล กล่าวคือ เว็บเซิร์ฟเวอร์สื่อสารโดยตรงกับโปรแกรม "แลกเปลี่ยน" ในขณะนี้ ข้อมูลจะถูกจัดเก็บไว้ในหน่วยความจำของคอมพิวเตอร์ซึ่งมีโปรแกรม "แลกเปลี่ยน" อยู่ และไคลเอนต์ยังคงค้นหาเว็บเซิร์ฟเวอร์เป็นประจำ . “การสื่อสารปกติ” ยังคงได้รับการจัดการตามวิธีแรก โครงสร้างเฉพาะคือการเพิ่มสาขาในบรรทัดด้านบนเพื่อให้เว็บเซิร์ฟเวอร์สื่อสารโดยตรงกับ "การแลกเปลี่ยน" เมื่อจำเป็น (นั่นคือระหว่าง "การสื่อสารแบบเรียลไทม์") ข้อมูลจะผ่านสาขานี้
มีปัญหากับแนวทางนี้หรือไม่? ฉันไม่คุ้นเคยกับการควบคุมระยะไกล และฉันก็ไม่รู้ว่าประสิทธิภาพของโครงสร้างดังกล่าวจะเป็นอย่างไร
ความแตกต่าง:
ระหว่างทั้งสองวิธีนี้ ไม่มีอะไรผิดปกติกับโครงสร้างของส่วน "การสื่อสารปกติ" สิ่งสำคัญคือส่วน "การสื่อสารแบบเรียลไทม์" พูดง่ายๆ ก็คือว่าข้อมูลที่มาจากฐานข้อมูลหรือเว็บเซิร์ฟเวอร์สื่อสารโดยตรงกับ "การแลกเปลี่ยน"
ตอนนี้เราต้องพิจารณาว่าจะใช้โครงสร้างประเภทใด ข้อกำหนดคือ:
เซิร์ฟเวอร์หนึ่งเครื่องต้องไม่อยู่ภายใต้ความกดดันมากเกินไป ไม่เช่นนั้นระบบก็จะไม่สามารถรองรับได้ (จำนวนการทำงานพร้อมกัน "ภายนอก" มีขนาดใหญ่มาก)
ข้อกำหนดด้านประสิทธิภาพสำหรับส่วน "การสื่อสารแบบเรียลไทม์" นั้นสูงมาก
หมายเหตุ:
โครงสร้าง BS ถูกกำหนดแล้วและไม่สามารถเปลี่ยนแปลงได้ (โครงการก่อนหน้านี้ของบริษัทคือ C/S และตอนนี้ต้องการเปลี่ยนไปใช้ B/S)
ไม่มีปัญหากับฮาร์ดแวร์ตัวที่สอง และแต่ละชิ้นเป็นเซิร์ฟเวอร์ที่มีการกำหนดค่าสูงแยกต่างหาก
ประการที่สาม ทุกคนอาจไม่มีความเข้าใจในส่วน "การแลกเปลี่ยน" ที่ชัดเจน จริงๆ แล้วมีหน้าที่รับผิดชอบหลายอย่างและความกดดันก็จะสูงมาก แน่นอนว่ามันเป็นเซิร์ฟเวอร์แยกต่างหากด้วย
โดยพื้นฐานแล้วการกำหนดค่าบางอย่างมีดังนี้: Windows2003, MS-SQL2005, VS2005 ฯลฯ ทั้งหมดเป็นรุ่นระดับองค์กร
คำถาม:
วิธีใดข้างต้นที่ 1 และ 2 มีประสิทธิภาพด้านโครงสร้างที่ดีกว่า (โดยพิจารณาถึงประสิทธิภาพของส่วน "เรียลไทม์" เป็นหลัก อย่าเพิ่งพูดถึงเรื่องอื่นในตอนนี้)
2. มีโครงสร้างอื่นใดที่เป็นไปได้อีกหรือไม่? หรือเทคโนโลยี?
3. บางสิ่งอาจไม่ชัดเจนสำหรับฉัน กรุณาฝากข้อความ และฉันจะตอบกลับโดยเร็วที่สุด
4.มีเพื่อนๆคนไหนทำตำแหน่ง GPS บ้างคะ? กรุณาฝากข้อมูลการติดต่อของคุณและถามคำถาม