shkolakz.ru 1

ӘӨЖ 004.4


ВЕБ-СЕРВИСТІҢ СЕРВИС-БАҒЫТТАЛҒАН АРХИТЕКТУРА ҮШІН ТИІМДІ КОМПОЗИЦИЯСЫН ҚҰРУ


Еримбетова А.С.


әл-Фараби атындағы Қазақ ұлттық универсиеті, Алматы


Ғылыми жетекші - ф.-м.ғ.к., доцент Ә.Ж.Ақжалова


Қазіргі кезде интернеттің дамуына байланысты мәліметтердің әр түрлі қайнар көздерінде және дүние жүзінде әр түрлі платформаларда орналасқандықтан мәліметтер арасындағы байланыста кедергілер туындайды. Бұл өзінің кәсібінде веб қосымшалар және және интернет қолданатын компаниялардың өсуімен бірге кедергілер де артады. Microsoft .NET веб сервистері мұндай байланыс мәселелерін шешеді.

Веб сервистер HTTP, XML және SOAP жалпы стандарттарын қолдану көмегімен әр түрлі қосымшалар байланысы мен кәсіп логика деңгейін құруға веб қосымшаның жаңа түрін ұсынады. Тәжірибе жүзінде веб сервистерді қолдану аймағында шектеу жоқ: сіз әр түрлі қосымшалар арасында байланыс үшін немесе сіздің клиенттеріңізге мәліметтерді беру үшін веб сервистерді құра аласыз. Веб сервистерді қолдану мүмкіндінің шектеулігі тек сіздің құзырыңызда.

Бұл жүйе бағдарламалық қамтаманы құрушыларға арналған. Қарапайым манипуляцияны құру және оларды өзінің қосымшасында композитті веб-сервис қолдануды қажет етушілер үшін арналған.

Соңғы уақыттарда әр түрлі мекемелердің пайда болуы мен өсуі нәтижесінде олардың it- шешімін табу қажеттігі де туады. Бұндай тапсырма көп күш, қаражат, жоғары класты мамандар қажет ететін еді, ал олардың ұсынылған шешімі жоғары сападан айырмашылығы болмайтын. Мұндай жағдай ұзаққа бармады және компания жанынан тапсырманы шешетін бірнеше ұсыныстар қабылданды. Ол ортақ тілмен SOA (Service-oriented architecture) деп аталады. Концепцияның көптеген орындалуларына қарамастан қазіргі уақытта веб-сервис ұғымына негізделеді.


Веб-сервис XML негізінде WSDL стандартын қолдануымен орындалатын бағдарламаның компоненттері, интерфейсі. Веб-сервистерді шақыру практикалық түрде кез келген Internet хаттаманың (http, stmp) қолданылуын қамтамасыз етеді. Осындай құрылымға сәйкес веб-сервистер келесідей мүмкіндіктерге ие:


  • практикалық түрде бағдарламалау тілінің кез келген тілінде жазуға болады,

  • кез келген операциялық жүйеде жұмыс істей алады,

  • басқа да қосымшаларға қол жетімді бола алады, веб-сервистердің интерфейсін білсе жеткілікті.

Қазіргі кезде веб-сервистердің көптеген түрлері және оларды іздеу жүйелері (UDDI, ebXML) орындалды. Берілген жүйелер веб-сервистерді өндіруші, құрылған уақыты және басқа да параметрлері арқылы табады, сонан соң ғана оларды өзінің қосымшасында қолданады. Әйтсе де қарапайым орындаушылармен немесе ірі компаниялармен жазылған веб-сервистер қолданушыларға мүмкіншілік аз болады.

Тапсырманы шешуге қажеттіліктер:

  • веб-сервистердің параллельді және жүйелі орындалуынан күрделі сақина құру

  • осы сақинада сервистердің орындалу реті мен ережесін беру.

Берілген тапсырма мейлінше нетривиалды саналады. Қазіргі кезде (BPEL4WS, WSCI) шешім көптеген кемшіліктерге ие:

  • Веб-сервистердің композициясына біркелкі стандарт жоқ.

  • IBM WebSphere негізінде қымбат және қиын жүйені сатып алу керек болады.

  • Осы жүйеге мамандар дайындау үшін көп уақыт пен қаражат қажет етеді.

Стандарттар веб-сервистердің динамикалық генерациясының технологиясына ие емес(қолданушының сұранысына байланысты веб-сервистердің қажетті кіріс-шығыс).

Сондықтан да веб-сервистің қажетті композициясын құру үшін орындаушыға бірнеше спецификация мен инструменталды құрылымдарды оқып, содан соң ғана композитті сервис құру қажет. Мұндай жақын келу көптеген ресурстар мен ұзақ уақытты күрделі орындауды ірі компанияларда қолдануға болады. Бірақ мұндай әдіс қарапайым орындаушылар үшін өзінің кодында веб-сервистер композициясын қажетінше тез алу қарастырылмайды.


Осыған байланысты веб-сервистердің динамикалық композициясын құру қажеттігі туады. Бұндай жүйе қолданушының алатын сервисіне кіріс және шығыс мәліметтерін көрсетіп, басқа веб-сервистерден композитті сервис құруды талап етеді.

Сонымен қатар қолданушыға веб-сервис құрылатын пәндік аймағын көрсету міндеттеледі.

Менімен ұсынылып отырған жүйе қойылған есепті шешеді. Жүйеде мынадай компоненттер бар:


  1. Қолданушыға қажеті веб-сервистерді таңдауға және олармен қарым-қатынас жасауға мүмкіндік беретін веб-интерфейсті графикалық редактор(веб-сервистердің граф қарым-қатынасы).

  2. Графикалық схемалардан тұратын композитті веб-сервистердің генерациялық модулі.

  3. Веб-сервистердің графтық қаынасының қолданушының сұранысына қарай құрылатын кеңес модулі(қалау бойынша кіріс және шығыс).

Есептің қойылымы:

Веб- сервис композициясының проблемасы комбинаториялы проблема сияқты бейнелене алады. Бізде  ,  тапсырмалар жинағын орындай алатын веб-сервис кандидаттарының  тобы бар, мұндағы .

Біздің сценарийімізде 3 веб-сервис бар: әуе жолы, қонақүй және машина жолы. Осылайша біз төмендегідей Х марицасын құра аламыз.



Келесі формулада қай сервис композиттікке жата ма жоқ па екенін анықтайды.

 


Осылайша Х матрицасы мүмкін комбинацияларды береді: 3-сервис 1-тапсырманы, 1-сервис 2-тапсырманы, 3-сервис 2-тапсырманы орындайды. Нәтижесінде бұл композиция 3,1,2 сервистерімен сәйкестендіріледі.



Сервистерді құруға белгісіз m саны қолданылады және әр j тапсырмасына шексіз n сервис кандидаттарының саны табылуы мүмкін. Негізінде бұл тапсырма қандай күйде реттелгенін нақты анықтайды, мүмкін болатын комбинациялар алдын ала анықталған жоспар болып табылады. Әйтсе де, бұл ортаға қатысты жоспар өзгеруі мүмкін. Сондықтан басқа комбинация мүкіндіктері бақылауда болуы мүмкін. Сондай-ақ егер m тапсырмаларынан тұратын p жоспарын қолданатын болсақ, проблема одан әрі қиындауы мүмкін.

Модельдеу проблемалары. Сервис кандидаттарын сәйкес функционалды мүмкіндіктерімен дифференциалдау үшін функционалды емес (QoS) критерийлер қолданылуы керек. QoS моделі сервистерде қолданылады. Сервис орындайтын

Qos моделі

Бағасы.
Келесі формулада көрсетілгендей сапа бағасы j тапсырмасының i сервисі орындау үшін сұраныс сервисі төлеу керек болатын сумма.



Уақыт. - бұл сұраныс жіберген кезден нәтижені алған уақытқа дейінгі сапа уақыты 

Қол жетімділігі

- сапа сенімділік қолжетімділігі, мұнда сервис қолжетімді және қолданылуы мүмкін. Бұл дегеніміз сервис сұранысы жауаптары жалпы сұраныстар санына қатынасына тең




мұндағы -j тапсырмасының i сервисі үшін сәтті орындалған сұраныс саны, ал -жалпы сұраныс саны.

Біздің тапсырмада бір уақытта назар аударатын мынадай мақсат бар, шығын минимизациялау

  

Қорыта айтқанда, интернет-технологияның дамуы бағдарламалау сервисі түрінде қолданбалы функциларды жүзеге асыру мақсатында автоматтандырылған жүйеде сервис-бағдарланған архитектураның құрылуы мен қолданылуына, Интернет немесе Интранет орталығы қай жерде орналасқанына қарамастан байланыс жасауға мүмкіндік берді. Олардың қолданылуы көп жағдайда инновациялық процестерге жатқызылатын, динамикалық процестердің құрылымдарының қалыптасуы негізінде тәуелсіз, байланыспаған және қосарланған сервистерге негізделеді. Осы жағдайда нақты шешім алу үшін сервистерді таңдау және бейімдеу проблемасы туындайды.

Қолданыста бар сервис-бағдарланған архитектуралар шешілетін тапсырмалардың және кедергілі аймақтардың модельдерінің ерекшеліктерін, орындалатын сервис функцияларының тәуелсіздігін ескермейді, бұл динамикалық процестердің ұйымы бойынша нәтижесіз тапсырмалар шешімін алуға әкеп соғады. Жалпы жағдайда көптеген қолжетерлік ұтымды сервистерді таңдауда және олардың шешілетін тапсырмаларының нақты қажетіне қарай динамикалық бейімделуіне динамикалық процестерді басқаруға арналған жаңа кезеңде өңделген сервис-бағдарланған архитектуралардың тапсырмалары шешілмеген. Берілген тапсырмаларды шешу үшін кедергілі аймақтарда концептуалды үлгілеу негізінде және сервистердің семантикалық бейнелеу аймағында және олардың динамикалық байланысында теориялық негізінің болмауы зерттеу жұмысының жүргізілуінің қажеттілігін тудырады. Бұл жұмыс осы қажеттіліктерді орындауға септігін тигізеді. Атап айтқанда, сұраныстармен жұмыс істеуде ыңғайлы, тиімді, минималды түрде жауап қайтарады.



Әдебиеттер


  1. Менаске А., Алмейда В. Производительность Web-служб. СПб: ООО «ДиаСофтЮП», 2003.-480 c.

  2. Абрамов Л.М., Капустин В.Ф. Математическое программирование. Л., Изд-Ленингр. ун-та, 1976. - 184 с.

  3. Банди Б. Основы линейного программирования: Пер. с англ. - М.: Радио и связь, 1989. -176 с.

  4. http://googleads.g.doubleclick.net/pagead/