Professional Documents
Culture Documents
1
Клиенти со повеќе нишки
2
Сервери со повеќе нишки (1)
Сервер со повеќенишки организиран во модел на диспечер/работник.
3
Сервери со повеќе нишки (2)
Модел Карактеристики
Нишки Паралелизам, блокирање системски
повици
Процес со една нишка Без паралелизам, блокирање
системски повици
Машина со конечна состојба Паралелизам, неблокирачки системски
повици
5
Сервери: Општи прашања за
дизајнирање(2)
6
Сервери: Општи прашања за
дизајнирање(3)
Сервер без државјанство
◦ Не чува информации за состојбата на своите клиенти и може да ја
промени својата состојба без да мора да информира кој било клиент
◦ Пример: веб-сервер – одговара на дојдовно барање, и целосно го
заборава клиентот
Државен сервер
◦ Дали одржува информации за своите клиенти(!)
◦ Пример: сервер за датотеки – одржува табела која содржи (клиент,
датотека) записи, што му овозможува на серверот да следи кои
клиентот моментално има дозвола за ажурирање на која датотека
Серверот можеби ќе сака да води евиденција на клиентот
однесување за да може поефективно да одговори на него барања
◦ Колаче – мал дел од податоци што содржи специфични за клиентот
информации кои се од интерес за серверот и се транспарентно
складирани од прелистувачот на клиентот
7
Сервери за објекти и адаптер за
објекти
8
Сервери за објекти и адаптер за
објекти
Објект сервер – сервер прилагоден
за поддршка на дистрибуирани објекти
◦ Објектниот сервер сам по себе не го
прави тоа обезбедуваат специфични
услуги – тие се имплементирани од
објектите кои престојуваат во
серверот
Политика за активирање – одлука за
како да се повика некој предмет
Адаптер за објекти (обвивка за
предмети) – механизам за групирање
објекти по полиса, т.е
имплементација на софтвер со
специфична политика за активирање
Адаптерите се генерички – тие ги
предаде барањата за повикување на
почетен на објект од страна на серверот
9
Причина за миграционен код(1)
Процесна миграција – целиот процес се преместува од еденa машина на друга
◦ Скапа и сложена задача
◦ Основната идеја е дека севкупните перформанси на системот можат да се подобрат
ако процесите се преместуваат од силно оптоварени на лесно натоварени машини
Во современите дистрибуирани системи поважно е да минимизирајте ја
комуникацијата
◦ Пример: ако клиентската апликација треба да направи многу бази на податоци
операции кои вклучуваат големи количини на податоци, можеби е подобро да се
испрати дел од клиентската апликација на серверот и да се испратат само резултати
низ мрежата
◦ Пример: клиентите треба да пополнат формулари кои се последователно преведени
во серија операции на база на податоци – обработка на формуларот на страната на
клиентот и испраќање само на пополнетиот формулар до серверот го елиминираат
големиот број на мали пораки кои треба да ја преминат мрежата
Ако кодот може да се движи помеѓу различни машини, станува можно динамично да
се конфигурираат дистрибуирани системи
10
Причина за миграционен код(2)
Принципот на динамичко конфигурирање на клиент за комуникација
со сервер. Клиентот прво го презема потребниот софтвер, а потоа го
повикува серверот.
11
Модели за миграција на кодови(1)
Процесот се состои од три сегменти:
◦ Код сегмент – делот што го содржи множеството инструкции што ја
сочинуваат програмата што се извршува
◦ Ресурсен сегмент – содржи референци за надворешни ресурси потребни
за процесот (на пр. датотеки, печатачи, уреди, друго процеси, итн.)
◦ Извршен сегмент – се користи за складирање на моменталната состојба на
извршување на процес (приватни податоци, стек, програмски бројач)
Слаба подвижност
◦ Префрлете го само сегментот на кодот(!) – пренесена програма е секогаш
започнува од неговата почетна состојба (на пр. Java аплети)
◦ Бара само целната машина да може да го изврши тој код (пренослив код)
Силна подвижност
◦ Може да се пренесе и сегментот за извршување
◦ Активен процес може да се запре, премести на друга машина,а потоа
продолжи со извршувањето таму каде што застанал
◦ Помоќен, но потешко за спроведување(!)
◦ Може да се поддржи со далечинско клонирање
12
Модели за миграција на кодови(2)
Миграција иницирана од испраќачот
◦Миграцијата се иницира на машината каде
што е кодот моментално престојува или се
извршува (на пр.испраќање програми на
компјутерски сервер)
Миграција иницирана од ресивер
◦Иницијативата за миграција на кодот е
преземена од страна на целна машина (на
пр. Java аплети)
13
Модели за миграција на кодови(3)
14
Миграција и локални ресурси(1)
Три типа на врзување процес-ресурс:
◦ Врзување со идентификатор – процес користи URL за да упати на одредена
веб-страница или FTP сервер со помош на тој сервер Интернет адреса
◦ Врзување по вредност – програмата се потпира на стандардни библиотеки и
таквите библиотеки секогаш треба да бидат локално достапни
◦ Врзување по тип – процес покажува дека му треба само ресурс од
специфичен тип (референци за локални уреди, како на пр монитори,
принтери итн.)
Неприврзани ресурси – може лесно да се преместуваат помеѓу машини (на
пр. датотеки поврзани само со програмата што треба да се мигрира)
Прицврстени ресурси (на пр. локални бази на податоци, комплетен веб
сајтови)
Фиксни ресурси – врзани за одредена машина или околината и не може да се
премести
15
Миграција и локални ресурси(2)
Врзување од ресурси за машина
Неврзан Прицврстен Fixed
и
По MV (или GR) GR (или MV) GR
идентификатор CP (или MV,GR) GR (или CP) GR
По вредност RB (или GR, CP) RB (или GR, RB(илиGR)
По тип CP)
18
Агентна технологија (1)
Општиот модел на платформа за агенти(Фондација за интелигентни физички
агенси – ФИПА)
◦ Агентите се регистрирани и работат под режимот наплатформа за агенти, која ги
обезбедува основните услугипотребни за секој мулти-агентен систем
◦ Менаџмент компонента – обезбедува погодности за креирање ибришење
агенти, но и за пребарување на тековната крајна точка заспецифичен агент (услуга
за именување преку која глобално единственидентификаторот е мапиран на
локалната комуникациска крајна точка)
◦ Услуга за локални директориуми – агентите можат да бараат какви други
агентина платформата имаат да понудат
◦ Агентот обезбедува описи на своите услуги во однос на атрибутотимиња,
заедно со вредноста специфична за тој агент („жолти страници“)
◦ Канал за комуникација на агентот (ACC) – се грижи за ситекомуникација помеѓу
различни платформи на агенти (разменапораки)
19
Агентна технологија (2)
Општиот модел на платформа за агенти(Фондација за интелигентни физички агенси – ФИПА)
20
Јазик за комуникација на агентот(1)
Агентите комуницираат со помош на комуникација на ниво на апликацијапротокол - јазик за комуникација на агентот
(ACL)
Примери на различни типови пораки во FIPA ACL
Целта на пораката Опис Содржина на пораката
22