O aplicație distribuită este un program menit să ruleze pe mai multe computere simultan și poate fi stocată pe un server sau în cloud computing. Acesta este folosit în mod obișnuit într-o rețea care are o relație client-server în care un computer client accesează un program de pe server și serverul face toată procesarea. Fiecare computer care accesează aplicația în mod normal este realizat pentru un anumit scop. Deși există multe aplicații distribuite diferite, cele comune sunt programele generale, software-ul de colaborare, sistemele în timp real și sistemele de calcul. Utilizarea unei aplicații distribuite este de obicei benefică, dar aceasta poate reprezenta o problemă dacă serverul este slab sau lent.
Sistemele de aplicații distribuite pot fi utilizate pe mai multe tipuri de rețele diferite, dar ele sunt cel mai adesea văzute în rețelele client-server. În acest tip de rețea, computerul client – sau computerul pe care oamenii îl folosesc – accesează programe și informații de pe server. Nu numai că aplicația este folosită de pe server, dar serverul este responsabil pentru toate procesările pentru ca programul să funcționeze. Cloud computing poate fi folosit și pentru aceasta, caz în care programul este stocat pe un server cloud și computerele client accesează programul.
În timp ce fiecare computer sau persoană poate utiliza aplicația distribuită în scopuri generale, computerul sau persoana este în mod normal specializată sau instruită să îndeplinească o anumită sarcină. De exemplu, un computer poate fi utilizat sau optimizat pentru a crea o imagine, în timp ce altul este folosit pentru text. De asemenea, utilizatorul poate fi instruit să îndeplinească o anumită sarcină, mai degrabă decât să efectueze doar sarcini generice.
Există multe tipuri diferite de aplicații distribuite, dar există patru categorii principale. Programele generale sunt programe comune găsite pe un computer, doar că sunt făcute să funcționeze pe mai multe computere simultan. Software-ul de colaborare este realizat astfel încât mai multe persoane să poată lucra la un singur proiect în același timp; fiecare utilizator lucrează de obicei la o secțiune diferită a proiectului. Sistemele în timp real sunt programe de chat și bilete în care utilizatorii răspund online la întrebările clienților. Programele de calcul sunt create pentru a procesa cod, iar utilizarea mai multor computere simultan optimizează și accelerează procesarea.
Utilizarea unei aplicații distribuite este, în general, benefică, deoarece facilitează accesul și utilizarea unui program pentru mulți utilizatori simultan, deși poate exista o problemă dacă serverul nu este puternic. Serverul este în mod obișnuit responsabil pentru efectuarea procesării, așa că acest lucru pune multă presiune pe server. Dacă serverul este slab sau lent, atunci acest lucru poate duce la întârzieri sau probleme mai grave pe computerele care accesează programul.