ข้ามไปที่เนื้อหาหลัก

Bitsocial และ ActivityPub

ActivityPub คือมาตรฐาน W3C ที่อยู่เบื้องหลัง Fediverse ผู้ใช้เลือกเซิร์ฟเวอร์หนึ่งซึ่งเรียกว่าอินสแตนซ์ให้โฮสต์บัญชีของตน และเซิร์ฟเวอร์ต่าง ๆ แลกเปลี่ยนโพสต์กัน Mastodon คือซอฟต์แวร์ไมโครบล็อกที่เป็นที่รู้จักที่สุดของ Fediverse ส่วน Lemmy คือเว็บรวมลิงก์และฟอรัมแบบ Reddit ที่ประกอบขึ้นจากชุมชนตามหัวข้อ จึงเป็นสิ่งที่ใกล้เคียงที่สุดใน Fediverse กับแอป Bitsocial อย่าง Seedit

ActivityPub ทำงานอย่างไร​

  • กล่องขาเข้าและกล่องขาออก ทุกบัญชีมีกล่องขาเข้า (inbox) และกล่องขาออก (outbox) เซิร์ฟเวอร์ส่งกิจกรรมไปยังกล่องขาเข้าบนเซิร์ฟเวอร์อื่น และเซิร์ฟเวอร์ผู้รับแต่ละแห่งเก็บสำเนาของสิ่งที่ผู้ใช้ของตนติดตามไว้เอง
  • ตัวตนที่เซิร์ฟเวอร์เป็นเจ้าของ ID ของบัญชีและโพสต์คือที่อยู่ HTTPS บนโดเมนของเซิร์ฟเวอร์ต้นทาง แฮนเดิลของ Mastodon อยู่ในรูป @user@domain ซึ่งค้นหาผ่าน WebFinger และเซิร์ฟเวอร์เป็นผู้ลงลายเซ็นข้อความเฟเดอเรชันแทนผู้ใช้
  • ไคลเอนต์ แอปและเบราว์เซอร์สื่อสารกับเซิร์ฟเวอร์ของผู้ใช้เองเท่านั้น ผ่าน API ของเซิร์ฟเวอร์นั้น
  • ชุมชนของ Lemmy ชุมชนคือแอ็กเตอร์ประเภทกลุ่มที่โฮสต์อยู่บนอินสแตนซ์เดียว ผู้ใช้ส่งโพสต์ไปยังชุมชน แล้วชุมชนกระจายต่อให้ผู้ติดตาม ตามมาตรฐานฟอรัมร่วม (FEP-1b12) ชุมชนอาจตรวจสอบโพสต์ก่อน ไปจนถึงให้ผู้ดูแลอนุมัติด้วยตนเอง
  • การกลั่นกรอง การกลั่นกรองเป็นเรื่องเฉพาะของแต่ละเซิร์ฟเวอร์ ผู้ดูแลระบบระงับบัญชี บล็อกทั้งเซิร์ฟเวอร์ หรือเฟเดอเรตเฉพาะกับเซิร์ฟเวอร์ในรายการที่อนุญาตได้ นอกจากนี้ Lemmy ยังมีผู้ดูแลประจำแต่ละชุมชนด้วย
  • การควบคุมสแปม ActivityPub ไม่ได้กำหนดกลไกป้องกันสแปมใด ๆ Mastodon และ Lemmy คัดกรองการสมัครด้วยการอนุมัติ คำเชิญ คำถามในใบสมัคร แคปต์ชา และการตรวจสอบอีเมล จากนั้นจึงพึ่งการจำกัดอัตรา การรายงาน และการกลั่นกรอง

จุดที่ต่างกัน​

ตัวตนเป็นของโดเมน​

บัญชี Fediverse เป็นของโดเมนของเซิร์ฟเวอร์ Mastodon เปลี่ยนเส้นทางผู้ติดตามไปยังบัญชีใหม่ได้ แต่ โพสต์ไม่ย้ายตามไปด้วย การย้ายต้องเริ่มจากเซิร์ฟเวอร์เดิม และมีช่วงพัก 30 วัน ใน Bitsocial โปรไฟล์และชุมชนคือคู่กุญแจ การเปลี่ยนโฮสต์หรือแอปจึงไม่เปลี่ยนตัวตน ดู อัตลักษณ์และความเป็นเจ้าของชุมชน

ชุมชนอยู่ที่ไหน​

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

การควบคุมสแปม​

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

การดูแลโครงสร้างพื้นฐาน​

การรันอินสแตนซ์หมายถึงการมีเซิร์ฟเวอร์ที่ทำงานตลอดเวลา พร้อมโดเมน TLS และอีเมล Mastodon ยังต้องใช้ PostgreSQL, Redis และโปรเซสเบื้องหลัง ส่วน Lemmy เบากว่า คือใช้ RAM ราว 150 MB ตามตัวเลขของโครงการเอง แต่ละอินสแตนซ์เก็บสำเนาเนื้อหาระยะไกลที่ผู้ใช้ของตนติดตาม โหนดชุมชนของ Bitsocial ไม่ต้องมีโดเมนหรือใบรับรอง และรันได้จากแอปเดสก์ท็อปหรือ bitsocial-cli

สิ่งที่เซิร์ฟเวอร์ให้เป็นการตอบแทน​

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

การเปรียบเทียบ​

คำถามActivityPub (Mastodon, Lemmy)Bitsocial
ประเภทเซิร์ฟเวอร์แบบเฟเดอเรชันเครือข่ายชุมชนแบบเพียร์ทูเพียร์
ตัวตนบัญชีบนโดเมนของเซิร์ฟเวอร์ ซึ่งเซิร์ฟเวอร์เป็นผู้ลงลายเซ็นคู่กุญแจ Ed25519 สำหรับผู้ใช้และชุมชน
โพสต์อยู่ที่ไหนเซิร์ฟเวอร์ต้นทาง รวมถึงสำเนาบนทุกเซิร์ฟเวอร์ที่ติดตามโหนดของเจ้าของชุมชน และเพียร์ที่อ่านและซีดชุมชนนั้น
ใครทำให้ออนไลน์อยู่ผู้ดูแลอินสแตนซ์โหนดของเจ้าของชุมชน พร้อมซีดเดอร์ที่ช่วยกระจาย
ชุมชนชุมชน Lemmy ที่โฮสต์อยู่บนอินสแตนซ์เดียวออบเจ็กต์ระดับพื้นฐานที่มีโหนดของตัวเองคอยยอมรับหรือปฏิเสธโพสต์
การควบคุมสแปมด่านคัดกรองตอนสมัคร การจำกัดอัตรา การรายงาน และการกลั่นกรองชาเลนจ์ของแต่ละชุมชนก่อนที่โพสต์จะถูกยอมรับ
การกลั่นกรองผู้ดูแลเซิร์ฟเวอร์และผู้ดูแลชุมชน เฉพาะในแต่ละเซิร์ฟเวอร์เจ้าของชุมชนกลั่นกรองชุมชนของตน ส่วนแอปเลือกเองว่าจะแสดงอะไร
ชื่อแฮนเดิล @user@domain และ !community@domainชื่อ .bso และ .eth ที่ชี้ไปยังกุญแจ
เบราว์เซอร์ไคลเอนต์ของเซิร์ฟเวอร์ของผู้ใช้เองโหนดเพียร์ทูเพียร์ภายในแท็บเบราว์เซอร์ปกติ
ข้อแลกเปลี่ยนหลักประวัติเชื่อถือได้และการกลั่นกรองที่สมบูรณ์ แต่ตัวตนและชุมชนเป็นของเซิร์ฟเวอร์ไม่ต้องมีเซิร์ฟเวอร์หรือโดเมน แต่ไม่รับประกันว่าเนื้อหาเก่าจะอยู่ตลอดไป