Bilgisayar biliminde, istemci-sunucu, her ikisi de bir bilgisayar ağı üzerinden veya aynı bilgisayarda iletişim kuran istemci sistemleri ve sunucu sistemleri olmak üzere iki bölümden oluşan bir yazılım mimarisi modelidir. Bir istemci-sunucu uygulaması, hem istemci hem de sunucu yazılımından oluşan dağıtılmış bir sistemdir. İstemci sunucu uygulaması, iş yükünü paylaşmak için daha iyi bir yol sağlar. İstemci işlemi her zaman sunucuya bir bağlantı başlatırken, sunucu işlemi her zaman herhangi bir istemciden gelen istekleri bekler.

Hem istemci işlemi hem de sunucu işlemi aynı bilgisayarda çalışıyorsa, buna tek koltuk kurulumu denir.

İlgili yazılım mimarisinin bir başka türü de eşler arası olarak bilinir, çünkü her bir ana bilgisayar veya uygulama örneği aynı anda hem istemci hem de sunucu olarak hareket edebilir (istemci-sunucu modelinin merkezi sunucularının aksine) ve her birinin eşdeğer sorumlulukları ve statüsü vardır. Eşler arası mimariler genellikle P2P kısaltması kullanılarak kısaltılır.

İstemci-sunucu ilişkisi, istemci ile sunucuya nasıl bir hizmet talebinde bulunduğu ve sunucunun bu talepleri nasıl kabul edebileceği, işleyebileceği ve talep edilen bilgileri istemciye nasıl geri döndürebileceği arasındaki ilişkiyi tanımlar. İstemci ve sunucu arasındaki etkileşim genellikle sıra diyagramları kullanılarak açıklanır. Sıra diyagramları Unified Modeling Language'de standartlaştırılmıştır.

Hem istemci-sunucu hem de P2P mimarileri günümüzde yaygın olarak kullanılmaktadır.

Temel istemci-sunucu yazılım mimarisi yalnızca iki tür ana bilgisayar kullanır: istemciler ve sunucular. Bu mimari türü bazen iki katmanlı olarak adlandırılır. İki katmanlı mimari, istemcinin bir katman, sunucu sürecinin ise diğer katman olarak hareket ettiği anlamına gelir.

İstemci-sunucu yazılım mimarisi, ağ bilişiminin temel modellerinden biri haline gelmiştir. İstemci-sunucu modeli kullanılarak birçok uygulama türü yazılmıştır. E-posta alışverişi, web erişimi ve veritabanı erişimi gibi standart ağa bağlı işlevler istemci-sunucu modeline dayanmaktadır. Örneğin, bir web tarayıcısı, kullanıcı bilgisayarında bulunan ve dünyadaki herhangi bir web sunucusundaki bilgilere erişebilen bir istemci programıdır.