กลับไป Avalon
DEVELOPMENT

การพัฒนา

ดูความสามารถปัจจุบัน วิธีใช้งาน ข้อจำกัดที่ทราบ และสถานะการพัฒนาของ Avalon

แหล่งข้อมูลREADME-th.md
NETWORKสำเนาสำรองในเว็บไซต์
READMEAvalonStream/AvalonStream · bundled fallback
Avalon

พีซี Windows 10/11 x64 หนึ่งเครื่อง เดสก์ท็อปอิสระหลายชุด

เปลี่ยนเครื่อง Windows 10/11 x64 เพียงเครื่องเดียวให้เป็นอินสแตนซ์เดสก์ท็อปหลายชุดที่เข้าถึงแยกกันได้ โดยแต่ละอินสแตนซ์มีจอภาพ อินพุต เสียง แอปพลิเคชัน และการเชื่อมต่อสตรีมระยะไกลของตนเอง

หนึ่งโฮสต์ หลายอินสแตนซ์

English · 简体中文


Avalon คืออะไร?

Avalon คือแพลตฟอร์มสตรีมเดสก์ท็อปแบบหลายเซสชันสำหรับ Windows 10/11 x64

แทนที่จะจำกัดพีซีหนึ่งเครื่องให้มีเดสก์ท็อปแบบโต้ตอบเพียงชุดเดียว Avalon ช่วยให้เครื่องเดียวกันสามารถให้บริการอินสแตนซ์ Windows ที่เป็นอิสระหลายชุดพร้อมกันได้

แต่ละอินสแตนซ์สามารถมีของตนเอง ได้แก่:

  • เซสชันเดสก์ท็อป Windows
  • จอแสดงผลเสมือน
  • ความละเอียดและอัตรารีเฟรช
  • สตรีมอินพุต
  • สตรีมเสียง
  • แอปพลิเคชันและเกม
  • การเชื่อมต่อระยะไกลผ่าน Moonlight

ทำให้พีซีประสิทธิภาพสูงหนึ่งเครื่องทำงานคล้ายคอมพิวเตอร์หลายเครื่องที่เข้าถึงจากระยะไกลได้ โดยไม่ต้องรันเครื่องเสมือนแบบเต็มสำหรับผู้ใช้ทุกคน


ในการใช้งานจริงเป็นอย่างไร?

ลองนึกภาพพีซี Windows 10/11 x64 หนึ่งเครื่องที่รัน Avalon สามอินสแตนซ์:

                Windows 10/11 x64 Host
                       │
                ┌──────┴──────┐
                │    Avalon    │
                └──────┬──────┘
                       │
         ┌─────────────┼─────────────┐
         │             │             │
         ▼             ▼             ▼
    Instance 01    Instance 02    Instance 03
         │             │             │
         ▼             ▼             ▼
     Moonlight      Moonlight      Moonlight
        TV            Tablet         Laptop

ไคลเอนต์แต่ละเครื่องเชื่อมต่อไปยังเดสก์ท็อป Windows ของตนเอง

อินสแตนซ์ทำงานคู่ขนานโดยไม่ใช้เดสก์ท็อป เคอร์เซอร์เมาส์ เอาต์พุตเสียง หรือเซสชันแอปพลิเคชันร่วมกัน


ทำไมต้อง Avalon?

เครื่องมือรีโมตเดสก์ท็อปแบบดั้งเดิมมักออกแบบโดยยึดผู้ใช้หนึ่งคนควบคุมเดสก์ท็อปหนึ่งชุดเป็นหลัก

เครื่องเสมือนให้การแยกที่แข็งแรง แต่ก็มาพร้อมระบบปฏิบัติการเพิ่มเติม การใช้หน่วยความจำและพื้นที่จัดเก็บมากขึ้น ความซับซ้อนของ GPU และต้นทุนการดูแลที่สูงขึ้น

Avalon เลือกแนวทางที่แตกต่าง

Avalon ผสานเซสชัน Windows จอเสมือน กระบวนการสตรีมที่แยกกัน และการจัดการวงจรชีวิตแบบรวมศูนย์ เพื่อให้เดสก์ท็อปแบบโต้ตอบหลายชุดอยู่ร่วมกันได้บนโฮสต์ Windows 10/11 x64 เครื่องเดียว

ความซับซ้อนอยู่ภายใน Avalon สำหรับผู้ใช้ ขั้นตอนยังคงเรียบง่าย:

สร้างอินสแตนซ์
        ↓
ตั้งค่าจอและการจับคู่
        ↓
เปิด Moonlight
        ↓
เชื่อมต่อ

ความสามารถหลัก

หลายอินสแตนซ์อิสระ

รันเซสชันเดสก์ท็อป Windows หลายชุดพร้อมกันบนโฮสต์เดียว

แต่ละอินสแตนซ์ทำงานเสมือนสภาพแวดล้อมเดสก์ท็อปแบบโต้ตอบของตนเอง

การสตรีมแยกอิสระ

แต่ละอินสแตนซ์มีบริบทการสตรีมของตนเองและสามารถเชื่อมต่อแยกกันผ่านไคลเอนต์ Moonlight

ทีวีสามารถเชื่อมต่อกับอินสแตนซ์หนึ่ง ขณะที่แท็บเล็ตหรือคอมพิวเตอร์อีกเครื่องเชื่อมต่อกับอีกอินสแตนซ์พร้อมกันได้

จอแสดงผลแยกอิสระ

แต่ละอินสแตนซ์สามารถใช้การตั้งค่าจอเสมือนของตนเอง รวมถึงความละเอียดและอัตรารีเฟรช

Avalon จัดการสภาพแวดล้อมการแสดงผลโดยไม่จำเป็นต้องมีจอจริงสำหรับทุกอินสแตนซ์

อินพุตแยกอิสระ

คีย์บอร์ดและเมาส์จะถูกส่งไปยังเซสชัน Windows เป้าหมาย แทนที่จะถูกแชร์ระหว่างทุกอินสแตนซ์

เมื่อระบบอินพุตพัฒนาต่อ Avalon ถูกออกแบบให้มุ่งไปสู่การแยกอุปกรณ์ระดับอินสแตนซ์ที่สมบูรณ์ยิ่งขึ้น

เสียงแยกอิสระ

แต่ละอินสแตนซ์ใช้เส้นทางเสียงของเซสชัน Windows ของตนเอง ผู้ใช้หลายคนจึงสามารถฟังแอปหรือเกมต่างกันได้โดยไม่ให้เสียงถูกผสมข้ามอินสแตนซ์แบบง่าย ๆ

การจัดการวงจรชีวิตของเซสชัน

Avalon สร้างและรักษาเซสชันด้วยตนเอง

ไม่จำเป็นต้องเปิดการเชื่อมต่อ RDP จากไคลเอนต์ภายนอกค้างไว้เพียงเพื่อรักษาอินสแตนซ์ให้ทำงานต่อ

การจัดการผ่าน Web

อินสแตนซ์ทั้งหมดจัดการผ่านอินเทอร์เฟซ Web เดียว

งานทั่วไปได้แก่:

  • สร้างและลบอินสแตนซ์
  • เริ่มและหยุดอินสแตนซ์
  • ตั้งค่าความละเอียดและอัตรารีเฟรช
  • จับคู่ไคลเอนต์ Moonlight
  • ตรวจสอบสถานะการเชื่อมต่อ
  • ดูข้อมูลวินิจฉัย
  • จัดการค่าระดับโฮสต์

การใช้งานปกติไม่จำเป็นต้องใช้ command line


ออกแบบมาเพื่อ Moonlight

Avalon รักษาประสบการณ์ Moonlight ที่คุ้นเคยเอาไว้

คุณยังใช้ Moonlight ต่อได้บนอุปกรณ์เช่น:

  • Windows
  • Linux
  • macOS
  • Android
  • iOS / iPadOS
  • Android TV
  • Smart TV และอุปกรณ์สตรีมที่ Moonlight รองรับ

Avalon เปลี่ยนวิธีจัดระเบียบฝั่งโฮสต์ ไม่ได้บังคับให้ผู้ใช้เรียนรู้ไคลเอนต์สตรีมใหม่ทั้งหมด


กรณีใช้งาน

เล่นเกมในบ้าน

เปลี่ยนพีซีเกมหนึ่งเครื่องให้เป็นสภาพแวดล้อมเกมอิสระหลายชุดสำหรับคนหลายคนในบ้านเดียวกัน

คนหนึ่งเล่นผ่านทีวีในห้องนั่งเล่น ขณะที่อีกคนเชื่อมต่อไปยังอีกอินสแตนซ์จากเครื่องพกพาหรือโน้ตบุ๊กได้พร้อมกัน

หลายบัญชีและหลายอินสแตนซ์

รันแอป บัญชี หรือเซสชันเกมที่ต่างกันในสภาพแวดล้อม Windows ที่แยกกันบนเครื่องเดียว

เวิร์กสเตชันระยะไกล

ใช้เดสก์ท็อปประสิทธิภาพสูงหนึ่งเครื่องเป็นพื้นที่ทำงานระยะไกลหลายชุดที่เข้าถึงแยกกันได้

การทดสอบและพัฒนา

รักษาหลายเซสชัน Windows สำหรับทดสอบซอฟต์แวร์ ระบบอัตโนมัติ ตรวจสอบความเข้ากันได้ หรือสร้างสภาพแวดล้อมผู้ใช้ที่แยกกัน

Homelab และ self-hosting

ใช้เครื่อง Windows ประสิทธิภาพสูงเป็นโฮสต์คอมพิวต์ระยะไกลแบบหลายผู้ใช้ที่จัดการจากส่วนกลาง


Avalon ทำงานอย่างไร

Avalon ประสานหลายชั้นของระบบภายใน:

Web Management
      │
      ▼
Avalon Control Service
      │
      ▼
Windows Sessions
Virtual Displays
Streaming Processes
Input / Audio Routing
      │
      ▼
Moonlight Clients

ผู้ใช้ทั่วไปไม่จำเป็นต้องเข้าใจรายละเอียดการทำงานภายในเหล่านี้

คุณสร้างอินสแตนซ์ จากนั้น Avalon จะเตรียมเซสชัน จอแสดงผล สภาพแวดล้อมสตรีม และวงจรชีวิต ก่อนที่คุณจะเชื่อมต่อ


รูปแบบการแยก

Avalon ให้ การแยกระดับเซสชัน Windows

แต่ละอินสแตนซ์มีเซสชัน Windows เดสก์ท็อป แอปพลิเคชัน จอ เส้นทางอินพุต และเส้นทางเสียงของตนเอง

อย่างไรก็ตาม อินสแตนซ์ Avalon ไม่ใช่เครื่องเสมือนแบบเต็มรูปแบบ

ยังคงใช้ร่วมกัน ได้แก่:

  • การติดตั้ง Windows ของโฮสต์เดียวกัน
  • kernel เดียวกัน
  • CPU จริงตัวเดียวกัน
  • GPU จริงตัวเดียวกัน
  • ทรัพยากรฮาร์ดแวร์ของโฮสต์เดียวกัน

ดังนั้นไม่ควรมอง Avalon เป็นขอบเขตความปลอดภัยระดับ VM

เป้าหมายคือการสตรีมแบบหลายผู้ใช้และหลายเดสก์ท็อปอย่างมีประสิทธิภาพ ไม่ใช่การจำลองฮาร์ดแวร์เต็มรูปแบบ


สถานะปัจจุบัน

Avalon อยู่ในช่วง Alpha

สถาปัตยกรรม อินเทอร์เฟซการจัดการ ชั้นความเข้ากันได้ และระบบอุปกรณ์ยังคงพัฒนาต่อเนื่อง

ในช่วงนี้อาจพบ:

  • การเปลี่ยนแปลงที่ทำให้เข้ากันไม่ได้
  • ความเข้ากันได้ของฮาร์ดแวร์ที่ยังไม่สมบูรณ์
  • การเปลี่ยนแปลง UI
  • กรณีขอบที่เกี่ยวข้องกับไดรเวอร์และเซสชัน
  • พฤติกรรมฟีเจอร์ที่อาจเปลี่ยนก่อนรุ่นเสถียร

Avalon ยังไม่ควรถูกใช้เป็นโครงสร้างพื้นฐาน production ที่มีความสำคัญสูง

ผลทดสอบ log รายงานบั๊กที่ทำซ้ำได้ และ feedback จากการใช้งานจริงมีคุณค่ามากในช่วงนี้


แพลตฟอร์ม

เป้าหมายปัจจุบัน:

Windows 10 x64 / Windows 11 x64

Avalon ถูกออกแบบโดยยึดโมเดลเดสก์ท็อป เซสชัน และกราฟิกของ Windows โดยเฉพาะ

การรองรับระบบปฏิบัติการโฮสต์อื่นยังไม่ใช่เป้าหมายหลักของโครงการในตอนนี้


ประสิทธิภาพ

ประสิทธิภาพสตรีมจริงขึ้นอยู่กับหลายปัจจัย เช่น:

  • GPU
  • การรองรับ encoder
  • ไดรเวอร์กราฟิก
  • ความละเอียด
  • อัตรารีเฟรช
  • codec
  • คุณภาพเครือข่าย
  • ความสามารถถอดรหัสของ client
  • จำนวนอินสแตนซ์ที่ทำงานพร้อมกัน

Avalon ไม่รับประกันความละเอียด อัตรารีเฟรช โหมด HDR หรือจำนวนอินสแตนซ์พร้อมกันที่แน่นอนบนทุกระบบ

เอกสารความเข้ากันได้จะละเอียดขึ้นเมื่อขอบเขตการทดสอบขยายตัว


แนวคิดของโครงการ

Avalon สร้างขึ้นจากแนวคิดที่เรียบง่าย:

พีซีประสิทธิภาพสูงไม่ควรถูกจำกัดอยู่กับหน้าจอเดียว เดสก์ท็อปเดียว และผู้ใช้คนเดียวตลอดเวลา

โฮสต์อาจมีเพียงเครื่องเดียว แต่ประสบการณ์ที่ทำงานอยู่บนเครื่องนั้นไม่จำเป็นต้องมีเพียงหนึ่งเดียว


การพัฒนา

README นี้ใช้เป็นคำแนะนำผลิตภัณฑ์ Avalon แบบคงที่และเชื่อถือได้

สำหรับความคืบหน้าการพัฒนาแบบเรียลไทม์และข้อความจากโครงการ โปรดดู devlog.md

สำหรับรายงานบั๊ก คำถาม และคำขอฟีเจอร์ ให้ใช้ GitHub Issues


Avalon

หนึ่งโฮสต์ หลายอินสแตนซ์