สิ่งตีพิมพ์ในหัวข้อ 'software-architecture'


การแบ่งปันทรัพยากรส่วนหน้าในระบบกระจายอำนาจของ Fiverr
Fiverr สร้างความสมดุลระหว่างการแบ่งปันทรัพยากรและความเป็นอิสระของส่วนประกอบในระบบส่วนหน้าแบบกระจายอำนาจ สถาปัตยกรรมส่วนหน้าของเราที่ Fiverr กำหนดแอปพลิเคชันเกตเวย์หลายรายการ โดยให้บริการประสบการณ์ "แนวตั้ง" แต่ละประเภทธุรกิจจะสร้างหน้าเว็บจากหลายองค์ประกอบจากแหล่งที่มาที่หลากหลาย ซึ่งมีสภาพแวดล้อมรันไทม์เดียวกัน —  หน้าต่าง หรือ ขอบเขตทั่วโลก ในองค์กรของเรา ส่วนประกอบจำนวนมากเหล่านี้ใช้สแต็กเทคโนโลยีที่คล้ายกันอย่างยิ่ง (React, Redux, Lodash…) แต่เรายังคงต้องการให้พวกมันเป็นอิสระ..

การออกแบบระบบของแอพ Uber — สถาปัตยกรรมระบบ Uber
เป็นเรื่องง่ายมากเพียงแตะปุ่มบนโทรศัพท์มือถือของเรา รถแท็กซี่ก็พร้อมให้บริการภายในไม่กี่นาทีทุกที่ทุกเวลาที่เราต้องการ Uber/Ola /Lyft … การใช้แอปพลิเคชันเหล่านี้และรับบริการขนส่งที่ไม่ยุ่งยากนั้นง่ายมาก แต่ การสร้างแอปพลิเคชันขนาดยักษ์เหล่านี้ก็เป็นเรื่องง่ายเช่นกัน ซึ่งมีวิศวกรซอฟต์แวร์หลายร้อยคนทำงานเกี่ยวกับแอปพลิเคชันเหล่านี้มานานนับทศวรรษ …? ไม่อย่างแน่นอน. ระบบเหล่านี้มีสถาปัตยกรรมที่ซับซ้อนกว่ามาก และมีส่วนประกอบมากมายที่รวมเข้าด้วยกันภายในเพื่อให้บริการขี่ทั่วโลก..

ระบบส่วนประกอบเอนทิตีใน Elixir
Entity-Component-System (ECS) เป็นรูปแบบการออกแบบสถาปัตยกรรมแบบกระจายและจัดองค์ประกอบซึ่งส่วนใหญ่ใช้ในการพัฒนาเกม ช่วยให้สามารถแยกพฤติกรรมเฉพาะโดเมนได้อย่างยืดหยุ่น ซึ่งเอาชนะข้อเสียหลายประการของการสืบทอดเชิงวัตถุแบบดั้งเดิม Elixir คือภาษาแบบไดนามิกและใช้งานได้จริงซึ่งสร้างขึ้นจาก Erlang VM ซึ่งออกแบบมาเพื่อสร้างแอปพลิเคชันที่ปรับขนาดได้และบำรุงรักษาได้ ในบทความนี้ ค้นพบว่าเราสามารถใช้ทั้ง ECS และ Elixir..

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

ฉันจะออกแบบอย่างไร… YouTube หรือ Netflix!
การสาธิตการออกแบบระบบ ผู้ชม บทความนี้เป็นบทความถัดไปในชุดของฉันเกี่ยวกับวิธีที่ฉันจะออกแบบแอปพลิเคชันยอดนิยม ขอแนะนำ (แม้ว่าจะไม่จำเป็นทั้งหมด) ให้อ่านโพสต์ก่อนหน้านี้ที่ฉันรวบรวมไว้อย่างเป็นประโยชน์ในรายการ "ที่นี่" เราคาดว่าจะมีความคุ้นเคยขั้นพื้นฐานเกี่ยวกับหลักการสถาปัตยกรรมและ AWS แต่หวังว่าวิศวกรส่วนใหญ่เข้าถึงโพสต์นี้ได้ การโต้แย้ง ขั้นแรก มาดูคำชี้แจงปัญหาของเรากัน ระบบการออกแบบ เราหวังที่จะออกแบบแพลตฟอร์มวิดีโอตามความต้องการ เช่น "YouTube" หรือ "Netflix"..

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

ความลับของหลักการความรับผิดชอบเดียว
กลับสู่พื้นฐาน ความลับของหลักการความรับผิดชอบเดียว ค้นพบความลับเกี่ยวกับหลักการความรับผิดชอบเดี่ยว (SRP) ของหลักการ SOLID นักพัฒนาเกือบทั้งหมดที่ทำงานกับภาษา Object Oriented Programming (OOP) รู้เกี่ยวกับหลักการ SOLID หลักการที่มั่นคง S หลักการความรับผิดชอบเดียว O หลักการปิดปากกา หลักการทดแทน L iskov ฉัน เชื่อมต่อหลักการแบ่งแยก D หลักการผกผันแบบซ้ำซ้อน ในบทความนี้ เราจะอธิบาย S ของ S OLID, หลักการความรับผิดชอบเดี่ยว อย่างไรก็ตาม คุณจะอ่านอะไรที่นี่..