Topology (Topology)

Space-based architecture ได้ชื่อมาจากแนวคิดเรื่อง tuple space ซึ่งเป็นเทคนิคการใช้ processor แบบขนานหลายตัวที่สื่อสารกันผ่าน shared memory ระบบแบบ space-based บรรลุ scalability, elasticity และ performance ระดับสูงได้ด้วยการแทนที่ฐานข้อมูลกลางซึ่งเป็น synchronous constraint ของระบบ ด้วย in-memory data grid แบบ replicated

ข้อมูลของแอปพลิเคชันถูกเก็บไว้แบบ in-memory และ replicate ไปยัง processing unit ที่ active ทั้งหมด เมื่อ processing unit ตัวหนึ่งอัปเดตข้อมูล มันจะส่งข้อมูลนั้นไปยังฐานข้อมูลแบบ asynchronous ผ่าน data pump ซึ่งมัก ทำผ่าน messaging ที่ใช้ persistent queue processing unit จะ start ขึ้นและ shut down แบบ dynamic ตามที่ user load เพิ่มขึ้นหรือลดลง ซึ่งช่วยแก้ปัญหาเรื่อง variable scalability เนื่องจากไม่มีฐานข้อมูลกลางเข้ามา เกี่ยวข้องกับ transactional processing มาตรฐานของแอปพลิเคชัน database bottleneck จึงถูกกำจัดไป ทำให้ แอปพลิเคชันมี scalability แทบไม่จำกัด

Space-based architecture เป็น architectural style ที่ซับซ้อน ประกอบด้วย artifact หลายชนิดที่ทำงานร่วมกัน เพื่อประมวลผล request หนึ่งรายการ artifact หลักของมันได้แก่:

Processing units

ประกอบด้วย application functionality

Virtualized middleware

กลุ่มของ artifact ที่เกี่ยวข้องกับ infrastructure ซึ่งใช้จัดการและประสานงาน processing unit

Messaging grid

ใช้จัดการ input request และ session state

Data grid

จัดการการ synchronize และ replicate ข้อมูลระหว่าง processing unit

Processing grid

ใช้จัดการ orchestration ของ request ระหว่าง processing unit หลายตัว

Deployment manager

จัดการการ start และ tear down instance ของ processing unit ตาม load ที่เพิ่มขึ้นหรือลดลง

Data pumps

ส่งข้อมูลที่อัปเดตแล้วไปยังฐานข้อมูลแบบ asynchronous

Data writers

ทำการอัปเดตข้อมูลตามที่ได้รับจาก data pump

Data readers

อ่านข้อมูลจากฐานข้อมูลและส่งให้ processing unit ตอน startup

Figure 16-2 แสดง artifact หลักเหล่านี้

Space-based architecture topology

Figure 16-2. topology พื้นฐานของ space-based architecture