לוח משותף

Go כותב ל-D1, ואז ה-Durable Object של הנושא דוחף את המקטע לכל כרטיסייה פתוחה דרך hx-ws.

נושאlobby
אפשר לפתוח את הדף הזה בכרטיסייה נוספת ולשנות משהו.
…אונליין
71גרסה 226
hu

hello man

解决

Ggh

Vnn

איך הלוח עובד

  1. כל שינוי הוא שליחת טופס ל-handler ב-Go שרץ ב-Worker. הוא כותב ל-D1, מסד הנתונים מבוסס SQLite של Cloudflare ומקור האמת היחיד של הלוח, ומעלה את הגרסה של הנושא.
  2. לאחר מכן ה-handler מרנדר את הלוח כולו פעם אחת לכל שפה ומעביר אותו ל-Durable Object של הנושא, ששולח אותו לכל כרטיסייה פתוחה. שום דבר לא ממוזג בדפדפן: כל דחיפה מחליפה את הלוח.
  3. הכרטיסיות נשארות מחוברות באמצעות hx-ws של htmx 4 מעל WebSocket Hibernation, כך שאלף כרטיסיות שקטות כמעט לא עולות דבר עד שמשהו משתנה. התג סופר מי נמצא כאן.
  4. כל דחיפה נושאת את הגרסה שממנה נוצרה. כרטיסייה מתעלמת מדחיפה ישנה יותר מהלוח שהיא מציגה, כך ששינויים שמצטלבים ברשת לעולם לא חוזרים לאחור.
  5. כל חיבור יכול לבצע 60 שינויים ב-10 שניות, ונושא יכול להכיל עד 1,000 כרטיסיות פתוחות.