น่าเสียดายที่มีความแตกต่างในความเห็นเกี่ยวกับความหมายของต้นน้ำ / ปลายน้ำ เมื่อพูดถึงสถาปัตยกรรมของระบบฉันกำหนดดังต่อไปนี้:
เมื่อพิจารณาถึงระบบที่มีความกังวลระบบที่เริ่มต้นการแลกเปลี่ยนข้อความ / ข้อมูลไปยังระบบที่เกี่ยวข้องนั้นคือระบบต้นน้ำและระบบที่ระบบที่เกี่ยวข้องนั้นขึ้นอยู่กับ (เช่นที่ระบบของฉันเริ่มต้นแลกเปลี่ยนข้อมูล) เป็นระบบดาวน์สตรีม
ลิงค์นี้จาก IBM อธิบายการโต้ตอบกับหนึ่งในผลิตภัณฑ์ของพวกเขายืนยันมุมมองนี้:
การรวมเข้ากับระบบต้นน้ำและปลายน้ำhttps://www.ibm.com/support/knowledgecenter/th/SSWSR9_11.3.0/com.ibm.pim.dev.doc /integration/pim_con_dev_creatingjobsforintegrationcontainer.html
ระบบอัพสตรีมคือระบบใด ๆ ที่ส่งข้อมูลไปยังระบบ Collaboration Server ระบบดาวน์สตรีมเป็นระบบที่รับข้อมูลจากระบบ Collaboration Server
เมื่อพิจารณาคำศัพท์ 'upstream' และ 'downstream' มันอาจช่วยในการเปรียบเทียบกับแม่น้ำ หากคุณวางข้อความ (ข้อมูล) ในแม่น้ำจะไหลจากต้นน้ำ (ผู้เริ่มต้น) ไปยังปลายน้ำ (ผู้รับ)
โดยทั่วไปฉันพบว่าสถาปนิกและนักพัฒนามิดเดิลแวร์ใช้คำจำกัดความนี้และนักพัฒนาเว็บตรงกันข้าม (อาจเป็นเพราะ 'อัพโหลด')
ด้วยไทม์ไลน์ของเหตุการณ์เหตุการณ์จะเกิดขึ้นเมื่อมันเกิดขึ้นก่อนที่จุดบนไทม์ไลน์ (เช่นจะทริกเกอร์เหตุการณ์อื่น) และดาวน์สตรีมเมื่อมันเกิดขึ้นหลังจากนั้น (เช่นได้รับเหตุการณ์) ต้นน้ำคืออะไรและอะไรคือสิ่งที่อยู่ในลำดับเหตุการณ์ดังนั้นขึ้นอยู่กับว่าคุณอยู่ที่ไหนในไทม์ไลน์ เหตุการณ์สามารถเป็นได้ทั้งดาวน์สตรีมและอัปสตรีมทั้งนี้ขึ้นอยู่กับว่าจุดเริ่มต้นของคุณอยู่ก่อนหรือหลัง
ในฐานะที่เป็น @Jack บันทึก RFC7230 tools.ietf.org/html/rfc7230#section-2.3มีสิ่งนี้:
คำว่า "อัปสตรีม" และ "ดาวน์สตรีม" ใช้เพื่ออธิบาย
ข้อกำหนดเกี่ยวกับทิศทางที่สัมพันธ์กับโฟลว์ข้อความ:
ข้อความทั้งหมดไหลจากอัปสตรีมไปยังดาวน์สตรีม
ฉันสนใจที่จะดูคะแนนโหวตซึ่งการใช้งานบ่อยที่สุดคือ!