Twitter ทวีตทวีตของคุณด้วยโอเพ่นซอร์สอย่างไร

  • Oct 29, 2023

Twitter ไม่สามารถดำรงอยู่ได้หากไม่มีซอฟต์แวร์โอเพ่นซอร์ส และพวกเขารู้เรื่องนี้และแบ่งปันรหัสของตัวเองเป็นการตอบแทน

ทวิตเตอร์-ลินุกซ์

Twitter ใช้งานได้อย่างขนนกกับ Linux

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

Chris Aniszczyk ผู้จัดการโอเพ่นซอร์สของ Twitter อธิบายว่า Twitter พึ่งพาโอเพ่นซอร์สและ Linux มากเพียงใด LinuxConการประชุมเทคโนโลยีอเมริกาเหนือประจำปีของมูลนิธิ Linux “ปรัชญาของ Twitter คือโอเพ่นซอร์สในเกือบทุกสิ่ง เราใช้แรงบันดาลใจจากปรัชญาการพัฒนาของ Red Hat: 'default to open''”

โดยเฉพาะอย่างยิ่ง ตามที่บริษัทระบุ “ซอฟต์แวร์โอเพ่นซอร์สส่วนใหญ่ที่พัฒนาโดย Twitter โดยเฉพาะนั้นได้รับอนุญาตภายใต้เสรีนิยม เงื่อนไขของใบอนุญาต Apache เวอร์ชัน 2.0 โดยทั่วไปเอกสารนี้มีให้ภายใต้ Creative Commons Attribution 3.0 Unported ใบอนุญาต. ท้ายที่สุดแล้ว คุณมีอิสระที่จะใช้ แก้ไข และแจกจ่ายเอกสาร ซอร์สโค้ด หรือตัวอย่างภายในได้ โครงการโอเพ่นซอร์สของเราตราบใดที่คุณปฏิบัติตามเงื่อนไขสิทธิ์การใช้งานที่มีอยู่ในโครงการ" 

ซอฟต์แวร์โอเพ่นซอร์สของ Twitter ถูกเก็บไว้ใน GitHub.

คุณสามารถใช้รหัสนี้ แท้จริงแล้ว Aniszczyk สนับสนุนให้ผู้อื่นใช้และสร้างมันขึ้นมา

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

หาก Unix และ Linux เป็นระบบปฏิบัติการที่ประกอบด้วยโปรแกรมอรรถประโยชน์มากมายที่เชื่อมต่อกันอย่างหลวมๆ กว่า Twitter ก็คือเครือข่ายโซเชียลที่ประกอบด้วยโปรแกรมโอเพ่นซอร์สจำนวนมากที่ประกบกันอย่างหลวมๆ บางส่วนจะคุ้นเคยกับทุกคนในแวดวง Linux หรือการพัฒนาเว็บ

ระบบปฏิบัติการหลักของ Twitter คือ Linux 2.6.39 และสำหรับฐานข้อมูลหลักนั้นใช้ MySQL เพื่อจัดการซอร์สโค้ดสำหรับการใช้งาน Twitter ที่เหลือ คอมไพล์. ซอฟต์แวร์ตัวอื่นของ Linus “Linux” Torvalds

แต่มาตัดเรื่องไล่ล่ากันดีกว่า จะเกิดอะไรขึ้นเมื่อคุณทวีต?

อันดับแรก เว้นแต่คุณจะไม่เคยใช้ “The Twitter” มาก่อน คุณจะรู้ว่าทวีตนั้นมีความยาวเพียง 140 ตัวอักษรหรือประมาณ 200 ไบต์ เมื่อคุณส่งทวีตนี้ ทวีตนี้จะถูก "กระจายออกไป" ไปยังผู้ที่อ่านทวีตของคุณในไม่ช้า ฟังดูง่ายใช่มั้ย? "ผิด!" ประกาศ Aniszczyk

ปัญหาคือขนาดของ Twitter Twitter จัดการทวีต 2.8 พันล้านครั้งในปีปกติ โดยเฉลี่ยแล้วจะมีทวีตถึง 5,000 ทวีตต่อวินาที แต่ Aniszczyk กล่าวว่า สิ่งต่างๆ ไม่ได้ธรรมดาเสมอไป เมื่อมีคนสังเกตเห็นนักร้องสาวบียอนเซ่โชว์ก้อนเนื้อ การเข้าชมก็สูงถึง 8,800 ทวีตต่อวินาที (TPS) ซูเปอร์โบวล์ครั้งสุดท้าย? 12,000 TPS บวก และเมื่อมีคนคิดว่าทุกคนควรไปดูหนังอนิเมะแล้วทวีตเกี่ยวกับเรื่องนี้ Twitter ก็เผชิญกับความท้าทายที่ยิ่งใหญ่ที่สุดอย่างหนึ่ง: 25,088 TPS

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

แต่ละทวีตจะถูกตรวจสอบโดยตัวย่อ URL แบบรวมกันและตัวตรวจจับสแปมที่เรียกว่า ที.โค. เมื่อผ่านขั้นตอนนี้ไป แต่ละทวีตจะถูกจัดเก็บไว้ใน MYSQL โดย กึ๋นซึ่งเป็นเฟรมเวิร์กการแบ่งส่วนข้อมูลที่ยืดหยุ่นสำหรับการสร้างพื้นที่เก็บข้อมูลแบบกระจายที่สอดคล้องกันในที่สุด ตอนนี้และเฉพาะตอนนี้เท่านั้นที่เป็นสัญญาณ HTTP 200 ซึ่งหมายความว่าทุกอย่างเป็นไปด้วยดีไปยังเว็บเบราว์เซอร์ของคุณ

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

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

ใช้เวลาเฉลี่ยทั้งหมดนี้หรือไม่? ประมาณ 350 มิลลิวินาที ไม่เลวเลยสำหรับระบบที่จัดการ 5,000 TPS ทุกวัน ตลอด 24 ชั่วโมง

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

เรื่องที่เกี่ยวข้อง:

Twitter ตัดขอบไคลเอนต์บุคคลที่สามด้วยกฎ API ที่เข้มงวดยิ่งขึ้น

5 เคล็ดลับในการเพิ่มผู้ติดตาม Twitter

ตอนนี้ธุรกิจต่าง ๆ บุก Twitter แล้วจะทำอย่างไรต่อไป?

Twitter เปิดตัวสัญลักษณ์หุ้น 'cashtag' อย่างเป็นทางการ

มุมมอง CIO: เคล็ดลับ 5 ประการในการใช้ Twitter