четвъртък, април 19, 2012

Какво е Клиент-Сървър?

      В няколко поредни статии ще Ви запозная с една интересна за мен тема, а именно клиент-сървър технологиите. Ще се постарая всяка статия да е кратка, ясна и с конкретна цел.
Цел
      Първата статия цели да се запознаем с основната същност на клиент-сървър технологията и най-важните понятия при този тип комуникация.

Въведение
      Архитектурата клиент-сървър намира широко приложение в почти всички сфери на съвременния бизнес. Понятието клиент-сървър има широк смисъл и се използва с много значения - то може да означава софтуерни приложения, хардуерни конфигурации, вид приложна архитектура и дори цели информационни системи.
      В по-тесен смисъл ще разгледаме понятието клиент-сървър като описание на взаимоотношенията между две компютърни програми. Първата програма, наречена клиент, прави заявка към втората програма, наречена сървър и изчаква нейния отговор. Втората програма - сървър приема заявки от много клиенти, обработва ги и връща отговор.
      
      Исторически понятието е възникнало през 80-те години на миналия век в областта на свързването на компютри в мрежа.       
      До днес технологията непрекъснато се е развивала като към нея са се добавяли нови характеристики. Много автори разглеждат обработката в облак (Cloud computing) като висока степен на съвременното развитие на клиент-сървър технологията. Ще разгледам отделна тема за обработките в облак.
      Клиент-сървър технологиите представляват всички техники и средства, които се използват на базата на клиент-сървър архитектурата. Архитектурата може да се представи най-общо като описание на структурата на една система и начина, по който тя функционира.

Основни понятия
      Клиент-сървър архитектурата има три основни компонента:
  • клиент
  • сървър
  • връзка между тях
      Когато се говори за клиент и сървър се имат предвид логически обобщени понятия, които са съвкупност от множество характеристики. Обикновено това са програмни модули, но със същите имена могат да се означават и самите хардуерни конфигурации.

Клиент
      Физически клиентският компонент е напълно самостоятелен персонален компютър и предлага на потребителя пълния си диапазон от възможности и характеристики за изпълнение на приложения.
      Като модул е софтуерен компонент на една или много работни станции, който прави заявки за конкретни услуги и изчаква отговор на тези заявки. Клиентът е активната страна в комуникацията. Той може да се свързва с много на брой сървъри едновременно и си взаимодейства с крайните потребители чрез потребителски интерфейс.

Сървър
      Физически сървърният компонент може да бъде персонален, мини или суперкомпютър, който споделя своите ресурси. В повечето случаи машината има нужда от голямо дисково пространство и мощен процесор, за да обработва бързо голямото количество данни, което получава.
      Като модул сървърът е софтуер, който предоставя набор от услуги. Той е пасивна страна в комуникацията, изчаква получаването на заявки, обработва ги и връща отговор. Всеки сървър може да получава заявки от голям брой клиенти едновременно и не контактува пряко с крайния потребител.

Връзка
      Основната връзка между клиента и сървъра е мрежата. Тя прави възможна отдалечената комуникация. Механизмът, по който си взаимодействат двете програми се нарича "комуникация между процеси" (InterProcess communication) и се състои в размяна на съобщения със стандартна форма и съдържание .

Няма коментари:

Публикуване на коментар

Моля оставете Вашите коментари тук :)