דלג לתוכן הראשי
Symphony מפרידה בין עבודה מנהלית לבין עבודת הרצה, כך שמסחר חי, מחקר ונתיבים רגישים לביצועים אחרים יישארו נקיים מריצוד (jitter), מהשהיה ומתלויות נסתרות. qxctl ומישור הידע הם ניהול בנתיב קר או קפוא. הם רשאים לפעול במפורש על Node שמארח גם עבודה חיה, אך אסור להם להפוך לתלויות רציפות בנתיב החם.

משמעת נתיב קר וקפוא

qxctl ומנועי הווקטור הם רכיבים מנהליים בנתיב קר או קפוא. אסור להם:
  • לרוץ בתוך נתיבי הרצה חמים או פושרים
  • לחלוק נעילות עם עומסי עבודה חיים
  • ליצור תלויות סינכרוניות שמוסיפות ריצוד או השהיה
  • להפוך לצופים נסתרים, למפרשים תושבים או למנהלי חבילות ברקע שלא התבקשו
  • לשמור על שהייה רציפה ב-Nodes של הרצה
כלל זה חל על מתאם הסשנים של הידע, על מנועי הווקטור ועל כל הפעולות המנוהלות באמצעות qxctl. הם מפיקים ראיות, מאמתים מצב ומכינים תוכניות, אך אינם משתתפים בנתיב ההרצה החי.

משמעת bus

תעבורה כבדה, בקרה, מחקר ופליטת הרצה אינם חייבים לחלוק bus אחד. טופולוגיה יכולה להשתמש ב-buses מרובים או לעקוף bus עבור נתיב מוצהר, במיוחד כאשר תעבורה משותפת עלולה לגרום לריצוד. NATS JetStream, ZeroMQ ומארגים אחרים הם מתאמים ובחירות של המשתמש. קיומו של ניהול bus ב-qxctl אינו הופך את המעבר דרך bus לחובה. אתם בוחרים את טופולוגיית ה-bus שתואמת את דרישות ההשהיה והתפוקה שלכם. Symphony תומכת בתצורה מבלי לכפות מארג משותף יחיד.

Prima Parte

Prima Parte הוא קונספט שאושר בשלב 3, ואינו קובץ הרצה קיים. זהו עד מצב מקומי ל-Node, אופציונלי וקל משקל במיוחד, הכתוב ב-C++ ומופעל במפורש על ידי qxctl לאחר פעולה מהותית. אין לו daemon, מאזין, טיימר, צופה, לולאת דגימה או חיבור bus תושב. אוצר המילים העמיד והתחום שלו כולל שלושה מונחים:
  • current — המצב הנוכחי שנצפה
  • previous — המצב שלפני הפעולה המהותית
  • lastTransmitted — המצב שנשלח על ידי ה-Node המרוחק לאחר שהפקודה המשויכת בוצעה (לא אושרה קבלתו)
Prima Parte מתעד רק את ה-Node שלו, לעולם אינו הופך ל-Maestro מוקטן, ומסיים את פעולתו לאחר עבודתו התחומה. הוא אינו קולטן Maestro של שלב 1, ועדיין לא מומש שום קובץ הרצה.
עודכן לאחרונה ב 10 באוקטובר 2026