Discord, sesli, görüntülü ve yazılı iletişimin bir arada sunulduğu, davetiyeyle girilebilen kalıcı bir platformdur. Yüzeyde basit bir sohbet uygulaması gibi görünse de, aslında hız, ölçek ve güvenilirliği bir arada sunan, ince ayarlı bir sistemdir. Bir mesaj gönderildiğinde, sesli kanala katılım sağlandığında veya bir yayın izlendiğinde, Discord'un olayı doğru yere yönlendirmesi, çok sayıda istemciye bildirim göndermesi ve bunu anında hissettirecek kadar hızlı yapması gerekir. Bu durum, sunucuda 50 kişi varken kolayken, 19 milyon kişi olduğunda devasa bir zorluğa dönüşür. Makale, Discord'un bu ölçekte bile hızlı kalmasını sağlayan yaratıcı optimizasyonları ele almaktadır.
Discord'un mimarisinin temelinde, 1973'te Carl Hewitt tarafından tanıtılan ve dağıtık sistemler için Gul Agha tarafından resmileştirilen Aktör Modeli (Actor Model) bulunmaktadır. Bu model, paylaşımlı bellek kullanan ve yarış koşullarına yol açan çoklu iş parçacığı (thread) sorunlarına bir çözüm sunar. Kilitler (locks) gibi geleneksel yöntemler, kilitlenmeler (deadlock) gibi kendi sorunlarını beraberinde getirirken, Aktör Modeli daha güvenli eşzamanlılık (concurrency) sağlamak için iletişim kısıtlamalarını kullanır.
Bir aktör, bir posta adresine ve bir davranışa sahip bir aracıdır. Aktörler yalnızca mesajlar aracılığıyla iletişim kurar ve eylemlerini eşzamanlı olarak gerçekleştirir. Her aktör kendi durumuna sahiptir ve başka hiçbir aktör doğrudan bu durumu değiştiremez. Aktörler mesajları tek tek işler, bu da yarış koşullarını engeller. Bir mesaja yanıt olarak bir aktör, kendi durumunu değiştirebilir, başka aktörlere mesaj gönderebilir veya yeni alt aktörler oluşturabilir. Bu kurallara uyulduğunda, yarış koşulları ve kilit karmaşası önlenir. Ayrıca, aktörlerin konumdan bağımsız çalışabilmesi ve hata toleransı gibi ek faydalar da sağlanır.
Discord'un trilyonlarca mesajı destekleyen ölçeklenebilir ve yüksek performanslı mimarisinin temelinde yatan Aktör Modeli'nin prensiplerini ve dağıtık sistemlerdeki önemini açıklıyor.