У комп'ютерних технологіях трирівнева архітектура, синонім триланкова архітектура (англ. three-tier або Multitier architecture) передбачає наявність наступних компонент програми: клієнтський застосунок (зазвичай говорять «тонкий клієнт» або термінал), підключений до сервера застосунків, який в свою чергу підключений до серверу бази даних.
Огляд архітектури
- Клієнт — це інтерфейсний (зазвичай графічний) компонент, який представляє перший рівень, власне застосунок для кінцевого користувача. Перший рівень не повинен мати прямих зв'язків з базою даних (за вимогами безпеки), не повинен бути навантаженим основною бізнес-логікою (за вимогами масштабованості) і зберігати стан програми (за вимогами надійності). На перший рівень може бути винесена і зазвичай виноситься найпростіша бізнес-логіка: інтерфейс авторизації, алгоритми шифрування, перевірка значень, що вводяться, на допустимість і відповідність формату, нескладні операції (сортування, групування, підрахунок значень) з даними, вже завантаженими на термінал.
- Сервер застосунків розташовується на другому рівні. На другому рівні зосереджена більша частина бізнес-логіки. Поза ним залишаються фрагменти, що експортуються на термінали (див. вище), а також розміщені в третьому рівні збережені процедури і тригери.
- Сервер бази даних забезпечує зберігання даних і виноситься на третій рівень. Зазвичай це стандартна реляційна або об'єктно-орієнтована СУБД. Якщо третій рівень являє собою базу даних разом з збереженими процедурами, тригерами і схемою, яка описує застосунок в термінах реляційної моделі, то другий рівень будується як програмний інтерфейс, що зв'язує клієнтські компоненти з прикладною логікою бази даних.
У простій конфігурації фізично сервер застосунків може бути поєднаний з сервером бази даних на одному комп'ютері, до якого по мережі підключається один або декілька терміналів.
У «правильної» (з точки зору безпеки, надійності, масштабування) конфігурації сервер бази даних міститься на виділеному комп'ютері (або кластері), до якого по мережі підключені один або кілька серверів застосунків, до яких, в свою чергу, по мережі підключаються термінали.
Переваги
У порівнянні з клієнт-серверною або архітектурою можна виділити такі переваги трирівневої архітектури:
- масштабованість
- конфігурованість — ізольованість рівнів один від одного дозволяє (при правильному розгортанні архітектури) швидко і простими засобами переконфігурувати систему при виникненні збоїв або при плановому обслуговуванні на одному з рівнів
- високий рівень безпеки
- висока надійність
- низькі вимоги до швидкості каналу (мережі) між терміналами і сервером застосунків
- низькі вимоги до продуктивності і технічних характеристик терміналів, як наслідок зниження їхньої вартості. Терміналом може виступати не тільки комп'ютер, але і, наприклад, мобільний телефон.
Недоліки
Недоліки випливають з переваг. У порівнянні c клієнт-серверною або файл-серверною архітектурою можна виділити наступні недоліки трирівневої архітектури:
- вища складність створення застосунків
- складніша у розгортанні і адмініструванні
- високі вимоги до продуктивності серверів застосунків і сервера бази даних, а, отже, і висока вартість серверного обладнання
- високі вимоги до швидкості каналу (мережі) між сервером бази даних і серверами застосунків.
Приклад триланкової архітектури клієнт-сервер
Компоненти триланкової архітектури, з точки зору програмного забезпечення реалізують певні сервери БД, вебсервери і браузери. Місце кожної з цих компонент може зайняти програмне забезпечення будь-якого виробника. Нижче представлено опис взаємодії компонентів трирівневої архітектури клієнт-серверного застосунку. Сервер БД представлений MySQL-сервером; сервер застосунків технологіями: ADO.NET, ASP.NET і вебсервером IIS; роль клієнта виконує будь-який веббраузер.
Браузер клієнта 1 -> Сервер IIS 2 -> Середовище виконання ASP.NET 2.0 3 -> Провайдер даних ADO.NET 2.0 4 -> Сервер MySQL 5 -> Провайдер даних ADO.NET 2.0 6 -> Середовище виконання ASP.NET 2.0 7 - > Сервер IIS 8 -> Браузер клієнта
- 1 — браузер клієнта відправляє HTTP-запит;
- 2 — на стороні сервера служба Web Internet Information Services (web-сервер IIS) визначає тип запитуваного ресурсу, і для випадку запиту *. aspx (розширення файлів сторінок ASP.NET) завантажує відповідну йому (вимогу) розширення Internet Server Aplication Programming Interface (ISAPI). Для сторінок aspx це розширення isapi_aspnet.dll. IIS також здійснює ідентифікацію та авторизацію користувача від якого надійшов запит. У свою чергу розширення isapi_aspnet.dll завантажує фабрику обробників ASP.NET. Далі, фабрика обробників створює об'єктну модель запитуваної сторінки і обробляє дії користувача;
- 3 — в ході генерації відповіді застосунком ASP.NET може знадобитися звернення до БД, в цьому випадку використовуючи бібліотеки класів провайдера даних ADO.NET 2.0, середовище виконання звертається до сервера БД;
- 4 — провайдер даних ADO.NET 2.0 передає запит на операцію з БД сервера MySQL;
- 5 — сервер MySQL здійснює обробку запиту, виконуючи відповідні операції з БД;
- 6 — провайдер даних ADO.NET 2.0 передає результати запиту об'єкту сторінки;
- 7 — об'єкт сторінки з урахуванням отриманих даних здійснює рендеринг графічного інтерфейсу сторінки і направляє результати в вихідний потік;
- 8 — сервер IIS відправляє вміст згенерованої сторінки клієнтському браузеру.
Використання
Дивись також
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
U komp yuternih tehnologiyah tririvneva arhitektura sinonim trilankova arhitektura angl three tier abo Multitier architecture peredbachaye nayavnist nastupnih komponent programi kliyentskij zastosunok zazvichaj govoryat tonkij kliyent abo terminal pidklyuchenij do servera zastosunkiv yakij v svoyu chergu pidklyuchenij do serveru bazi danih Oglyad arhitekturiVisual overview of a Three tiered application Kliyent ce interfejsnij zazvichaj grafichnij komponent yakij predstavlyaye pershij riven vlasne zastosunok dlya kincevogo koristuvacha Pershij riven ne povinen mati pryamih zv yazkiv z bazoyu danih za vimogami bezpeki ne povinen buti navantazhenim osnovnoyu biznes logikoyu za vimogami masshtabovanosti i zberigati stan programi za vimogami nadijnosti Na pershij riven mozhe buti vinesena i zazvichaj vinositsya najprostisha biznes logika interfejs avtorizaciyi algoritmi shifruvannya perevirka znachen sho vvodyatsya na dopustimist i vidpovidnist formatu neskladni operaciyi sortuvannya grupuvannya pidrahunok znachen z danimi vzhe zavantazhenimi na terminal Server zastosunkiv roztashovuyetsya na drugomu rivni Na drugomu rivni zoseredzhena bilsha chastina biznes logiki Poza nim zalishayutsya fragmenti sho eksportuyutsya na terminali div vishe a takozh rozmisheni v tretomu rivni zberezheni proceduri i trigeri Server bazi danih zabezpechuye zberigannya danih i vinositsya na tretij riven Zazvichaj ce standartna relyacijna abo ob yektno oriyentovana SUBD Yaksho tretij riven yavlyaye soboyu bazu danih razom z zberezhenimi procedurami trigerami i shemoyu yaka opisuye zastosunok v terminah relyacijnoyi modeli to drugij riven buduyetsya yak programnij interfejs sho zv yazuye kliyentski komponenti z prikladnoyu logikoyu bazi danih U prostij konfiguraciyi fizichno server zastosunkiv mozhe buti poyednanij z serverom bazi danih na odnomu komp yuteri do yakogo po merezhi pidklyuchayetsya odin abo dekilka terminaliv U pravilnoyi z tochki zoru bezpeki nadijnosti masshtabuvannya konfiguraciyi server bazi danih mistitsya na vidilenomu komp yuteri abo klasteri do yakogo po merezhi pidklyucheni odin abo kilka serveriv zastosunkiv do yakih v svoyu chergu po merezhi pidklyuchayutsya terminali PerevagiU porivnyanni z kliyent servernoyu abo arhitekturoyu mozhna vidiliti taki perevagi tririvnevoyi arhitekturi masshtabovanist konfigurovanist izolovanist rivniv odin vid odnogo dozvolyaye pri pravilnomu rozgortanni arhitekturi shvidko i prostimi zasobami perekonfiguruvati sistemu pri viniknenni zboyiv abo pri planovomu obslugovuvanni na odnomu z rivniv visokij riven bezpeki visoka nadijnist nizki vimogi do shvidkosti kanalu merezhi mizh terminalami i serverom zastosunkiv nizki vimogi do produktivnosti i tehnichnih harakteristik terminaliv yak naslidok znizhennya yihnoyi vartosti Terminalom mozhe vistupati ne tilki komp yuter ale i napriklad mobilnij telefon NedolikiNedoliki viplivayut z perevag U porivnyanni c kliyent servernoyu abo fajl servernoyu arhitekturoyu mozhna vidiliti nastupni nedoliki tririvnevoyi arhitekturi visha skladnist stvorennya zastosunkiv skladnisha u rozgortanni i administruvanni visoki vimogi do produktivnosti serveriv zastosunkiv i servera bazi danih a otzhe i visoka vartist servernogo obladnannya visoki vimogi do shvidkosti kanalu merezhi mizh serverom bazi danih i serverami zastosunkiv Priklad trilankovoyi arhitekturi kliyent serverKomponenti trilankovoyi arhitekturi z tochki zoru programnogo zabezpechennya realizuyut pevni serveri BD vebserveri i brauzeri Misce kozhnoyi z cih komponent mozhe zajnyati programne zabezpechennya bud yakogo virobnika Nizhche predstavleno opis vzayemodiyi komponentiv tririvnevoyi arhitekturi kliyent servernogo zastosunku Server BD predstavlenij MySQL serverom server zastosunkiv tehnologiyami ADO NET ASP NET i vebserverom IIS rol kliyenta vikonuye bud yakij vebbrauzer Brauzer kliyenta 1 gt Server IIS 2 gt Seredovishe vikonannya ASP NET 2 0 3 gt Provajder danih ADO NET 2 0 4 gt Server MySQL 5 gt Provajder danih ADO NET 2 0 6 gt Seredovishe vikonannya ASP NET 2 0 7 gt Server IIS 8 gt Brauzer kliyenta 1 brauzer kliyenta vidpravlyaye HTTP zapit 2 na storoni servera sluzhba Web Internet Information Services web server IIS viznachaye tip zapituvanogo resursu i dlya vipadku zapitu aspx rozshirennya fajliv storinok ASP NET zavantazhuye vidpovidnu jomu vimogu rozshirennya Internet Server Aplication Programming Interface ISAPI Dlya storinok aspx ce rozshirennya isapi aspnet dll IIS takozh zdijsnyuye identifikaciyu ta avtorizaciyu koristuvacha vid yakogo nadijshov zapit U svoyu chergu rozshirennya isapi aspnet dll zavantazhuye fabriku obrobnikiv ASP NET Dali fabrika obrobnikiv stvoryuye ob yektnu model zapituvanoyi storinki i obroblyaye diyi koristuvacha 3 v hodi generaciyi vidpovidi zastosunkom ASP NET mozhe znadobitisya zvernennya do BD v comu vipadku vikoristovuyuchi biblioteki klasiv provajdera danih ADO NET 2 0 seredovishe vikonannya zvertayetsya do servera BD 4 provajder danih ADO NET 2 0 peredaye zapit na operaciyu z BD servera MySQL 5 server MySQL zdijsnyuye obrobku zapitu vikonuyuchi vidpovidni operaciyi z BD 6 provajder danih ADO NET 2 0 peredaye rezultati zapitu ob yektu storinki 7 ob yekt storinki z urahuvannyam otrimanih danih zdijsnyuye rendering grafichnogo interfejsu storinki i napravlyaye rezultati v vihidnij potik 8 server IIS vidpravlyaye vmist zgenerovanoyi storinki kliyentskomu brauzeru VikoristannyaSAP R 3Divis takozhkliyent server vebzastosunok biznes logika model vid kontroler