Предности и недостаци дистрибуираних система

Поглед одозго кроз стакло ИТ инжењера који ради са лаптопом у дата центру пуном активних сервера у регалу.

Кредит за слику: городенкофф/иСтоцк/ГеттиИмагес

Дистрибуирани системи су рачунарски системи у којима више рачунарских система ефикасно раде заједно као једна јединица. Примери дистрибуираних система укључују мреже за дистрибуцију садржаја које се користе за послуживање веб локација и онлајн видео записа, суперрачунари изграђени од више моћних математичких процесора и дистрибуираних база података који се користе у многим онлајн система. Дистрибуирани системи могу бити отпорнији, моћнији и бржи од система са једним рачунаром, али такође могу захтевати више одржавања и пажљивог размишљања о организацији и проблемима који се могу појавити погрешно.

Предности дистрибуираног система

Постоји низ потенцијалних предности коришћења дистрибуираног система. Један од најлакших за разумевање је редундантност и отпорност. Ако компанија опслужује своју веб локацију са дистрибуираног скупа сервера, а не са једног сервера, можда ће моћи да остане у функцији чак и ако један сервер физички откаже. Ако се подаци дистрибуирају између више сервера или дискова, што је уобичајена појава у савременим дистрибуираним системима, можда неће доћи до губитка података чак и ако уређај за складиштење престане да ради.

Видео дана

Брзина и дистрибуција садржаја

Дистрибуирани системи такође могу бити бржи од система са једним рачунаром. Једна од предности дистрибуиране базе података је да се упити могу усмеравати на сервер помоћу а информације о одређеном кориснику, уместо да сви захтеви морају да иду на једну машину која може бити преоптерећени.

Захтеви се такође могу усмерити на сервере који су физички затворени или на брзу мрежну везу ка коме год то жели података, што може значити мање времена и других ресурса који се издвајају за бављење мрежним саобраћајем и уска грла. То је уобичајена појава у мрежама за дистрибуцију садржаја које се користе за онлајн медије.

Скалирање и паралелизам

Једном када су дистрибуирани системи постављени да дистрибуирају податке међу укљученим серверима, они такође могу бити лако скалабилни. Ако су добро дизајнирани, то може бити једноставно као додавање новог хардвера и рећи мрежи да га дода у дистрибуирани систем.

Дистрибуирани системи такође могу бити пројектовани за паралелизам. Ово је уобичајено у математичким операцијама за ствари као што су моделирање времена и научно рачунарство, где је вишеструко моћно процесори могу да поделе независне делове сложених симулација и добију одговор брже него што би их покренули серије.

Изазови дистрибуираног рачунарства

Један велики изазов са дистрибуираним рачунарством је то што програмерима може бити тешко да размишљају о томе. Могу постојати изазови у томе како дистрибуирати податке како би се осигурало да су захтеви отпорности испуњени под различитим неочекиваним условима.

Ако уређаји треба да се синхронизују, могу постојати тешко уочљиве грешке због којих чекају једни на друге да пренесе податке или да случајно покуша да прочита или запише исти податак у исто време, што узрокује грешке.

Безбедност и приватност такође могу постати проблем са дистрибуираним системима, пошто се подаци људи чувају на више рачунара, понекад на више физичких локација. Дистрибуирани системи такође могу бити претерани за неке задатке, користећи више физичких ресурса и инжењерског времена него што је потребно.