2 puan yazan GN⁺ 2024-10-21 | Henüz yorum yok. | WhatsApp'ta paylaş

Dağıtık sistemler okuma listesi

Giriş

  • Dağıtık sistemlerde en zor şey, düşünme biçimini değiştirmektir.
  • Bu liste, böyle bir dönüşümü teşvik etmeye yardımcı olan kaynakları bir araya getiriyor.

Düşünceyi tetikleyen kaynaklar

  • Büyük ölçekli sistem tasarımına yeni bakış açıları sunan yazılar derlemesi.
  • Harvest, Yield and Scalable Tolerant Systems: CAP teorisinin pratik uygulaması.
  • On Designing and Deploying Internet Scale Services: İnternet ölçeğinde hizmetlerin tasarımı ve devreye alınması.
  • The Perils of Good Abstractions: Kusursuz API/arayüzler kurmanın zorlukları.
  • Chaotic Perspectives: Büyük ölçekli sistemlerin öngörülemezliği ve paralelliği.
  • Data on the Outside versus Data on the Inside: Veri yönetimine yönelik iki yaklaşım.
  • Memories, Guesses and Apologies: Veri işlemedeki belirsizlikler.
  • SOA and Newton's Universe: Servis odaklı mimariye felsefi bir yaklaşım.
  • Building on Quicksand: Kararsız bir temel üzerinde sistem kurmak.
  • Why Distributed Computing?: Dağıtık bilişimin gerekliliği.
  • A Note on Distributed Computing: Dağıtık bilişimin temel kavramları.
  • Stevey's Google Platforms Rant: Google'ın SOA platformu deneyimi.

Gecikme

  • Gecikmenin varlığı ve onunla başa çıkma yöntemleri.
  • Latency Exists, Cope!: Gecikmenin mimari etkisi.
  • Latency - the new web performance bottleneck: Web performansındaki yeni darboğaz.
  • The Tail At Scale: Büyük ölçekli sistemlerde gecikme sorunu.

Amazon

  • Teknolojiden çok Amazon'un kültürü ve organizasyonuna dair ilgi çekici içerikler.
  • A Conversation with Werner Vogels: Servis tabanlı mimariye geçiş.
  • Discipline and Focus: Amazon'un mimari dönüşümüne dair ek bilgiler.
  • Vogels on Scalability: Vogels'in ölçeklenebilirlik hakkındaki görüşleri.

Google

  • Dağıtık sistemlerde en güncel teknolojiler.
  • MapReduce: Büyük ölçekli veri işleme modeli.
  • Chubby Lock Manager: Dağıtık kilit yönetimi.
  • Google File System: Büyük ölçekli dosya sistemi.
  • BigTable: Dağıtık depolama sistemi.
  • Data Management for Internet-Scale Single-Sign-On: Büyük ölçekli tek oturum açma için veri yönetimi.
  • Dremel: Web ölçeğindeki veri kümelerinin etkileşimli analizi.
  • Large-scale Incremental Processing Using Distributed Transactions and Notifications: Dağıtık işlemler yoluyla büyük ölçekli artımlı işleme.
  • Megastore: Etkileşimli hizmetler için ölçeklenebilir ve yüksek erişilebilirlikli depolama.
  • Spanner: Küresel dağıtık veritabanı.
  • Photon: Sürekli veri akışlarının birleştirilmesi.
  • Mesa: Gerçek zamanlı veri ambarı sistemi.

Tutarlılık modelleri

  • Sistem tasarımında tutarlılık ile erişilebilirlik arasında denge kurmak.
  • CAP Conjecture: Tutarlılık, erişilebilirlik ve bölüm toleransı arasındaki ödünleşim.
  • Consistency, Availability, and Convergence: Tutarlılığın üst sınırları.
  • CAP Twelve Years Later: CAP teorisindeki değişim.
  • Consistency and Availability: Tutarlılık ve erişilebilirlik ilişkisi.
  • Eventual Consistency: Eninde sonunda tutarlılık.
  • Avoiding Two-Phase Commit: İki aşamalı commit'ten kaçınma yöntemleri.
  • 2PC or not 2PC, Wherefore Art Thou XA?: İki aşamalı commit'in sınırları.
  • Life Beyond Distributed Transactions: Dağıtık işlemlerin ötesinde veri yönetimi.
  • If you have too much data, then 'good enough' is good enough: NoSQL ve veri teorisinin geleceği.
  • Starbucks doesn't do two phase commit: Asenkron mekanizmalar.
  • You Can't Sacrifice Partition Tolerance: Bölüm toleransının önemi.
  • Optimistic Replication: Gevşek tutarlılık yaklaşımı.

Teori

  • Dağıtık sistem tasarımının önemli unsurlarını açıklayan makaleler.
  • Distributed Computing Economics: Dağıtık bilişimin ekonomisi.
  • Rules of Thumb in Data Engineering: Veri mühendisliğinde temel pratik kurallar.
  • Fallacies of Distributed Computing: Dağıtık bilişimin safsataları.
  • Impossibility of distributed consensus with one faulty process: FLP teorisi.
  • Unreliable Failure Detectors for Reliable Distributed Systems: Güvenilir dağıtık sistemler için güvenilir olmayan hata algılayıcıları.
  • Lamport Clocks: Dağıtık sistemlerde zaman senkronizasyonu.
  • The Byzantine Generals Problem: Bizans generalleri problemi.
  • Lazy Replication: Dağıtık hizmetlerin anlamsallığından yararlanma.
  • Scalable Agreement: Hizmet olarak sıralama.
  • Scalable Eventually Consistent Counters over Unreliable Networks: Güvenilmez ağlarda ölçeklenebilir, eninde sonunda tutarlı sayaçlar.

Diller ve araçlar

  • Belirli teknolojiler kullanılarak dağıtık sistem kurmanın zorlukları.
  • Programming Distributed Erlang Applications: Erlang ve OTP ile dağıtık uygulamalar geliştirme.

Altyapı

  • İnternette sağlam zamanlama yönetimi ilkeleri.

Depolama

  • Consistent Hashing and Random Trees: Tutarlı hashing ve rastgele ağaçlar.
  • Amazon's Dynamo Storage Service: Amazon'un depolama hizmeti.
  • Paxos Consensus: Paxos algoritmasını anlamak.
  • The Part-Time Parliament: Paxos'un temelleri.
  • Paxos Made Simple: Paxos'un sade bir açıklaması.
  • Paxos Made Live: Paxos'a mühendislik bakış açısı.
  • Revisiting the Paxos Algorithm: Paxos algoritmasını yeniden değerlendirme.
  • How to build a highly available system with consensus: Mutabakat ile yüksek erişilebilirlikli sistem kurmak.
  • Reconfiguring a State Machine: Bir durum makinesini yeniden yapılandırma.
  • Implementing Fault-Tolerant Services Using the State Machine Approach: Durum makinesi yaklaşımıyla hata toleranslı hizmetler uygulama.

Diğer mutabakat makaleleri

  • Mencius: WAN için verimli çoğaltılmış durum makineleri kurma.
  • In Search of an Understandable Consensus Algorithm: RAFT algoritmasının genişletilmiş sürümü.

Söylenti protokolleri (Epidemic Behaviours)

  • Söylenti tabanlı iletişim protokollerinin gücü.
  • Astrolabe: Dağıtık sistem izleme ve veri madenciliği tekniği.
  • Epidemic Computing at Cornell: Cornell Üniversitesi'nde epidemik bilişim.
  • Fighting Fire With Fire: Rastgele söylenti kullanarak ölçeklenebilirlik sınırlarını aşmak.
  • Bi-Modal Multicast: İki modlu multicast.
  • ACM SIGOPS Operating Systems Review: Söylenti tabanlı ağ iletişimi.
  • SWIM: Ölçeklenebilir, zayıf tutarlılığa sahip enfeksiyon tarzı süreç grubu üyelik protokolü.

P2P

  • Chord: İnternet uygulamaları için ölçeklenebilir peer-to-peer arama protokolü.
  • Kademlia: XOR metriğine dayalı peer-to-peer bilgi sistemi.
  • Pastry: Büyük ölçekli peer-to-peer sistemler için dağıtık nesne konumlandırma ve yönlendirme.
  • PAST: Pastry üzerine kurulmuş büyük ölçekli kalıcı peer-to-peer depolama aracı.
  • SCRIBE: Pastry üzerine kurulmuş büyük ölçekli dağıtık uygulama seviyesinde multicast altyapısı.

GN⁺ özeti

  • Dağıtık sistemler, karmaşık problemleri çözmek için düşünme biçiminin değişmesini gerektiren bir alandır.
  • Çeşitli kaynaklar ve makaleler aracılığıyla dağıtık sistemlerin tasarımı ve uygulanmasına dair derin bir anlayış sunar.
  • Bu liste, dağıtık sistemlerin çeşitli yönlerini ele alırken özellikle tutarlılık modelleri ve gecikme sorunları hakkında içgörü sağlar.
  • Dağıtık sistemlerle ilgilenen geliştiriciler ve araştırmacılar için yararlı bir kaynak olabilir.
  • Benzer işlevlere sahip projeler olarak Apache Kafka ve Apache Cassandra önerilir.

Henüz yorum yok.

Henüz yorum yok.