Что такое сервер что такое клиент: сервер — о технологии простыми словами
Содержание
Что такое сервер и клиент? 2 основных типа компьютерных сетей
12.09.14
Компьютерная сеть представляет собой систему, в которой происходит обмен соответствующей информацией между устройствами, составляющими эту сеть. Минимальные требования базового набора компонентов, входящих в коммуникационную модель – приемник, источник, сообщение и среду передачи.
Одним из центральных компонентов любой сети является сервер.
Сервер представляет собой программное обеспечение, которое запущено на компьютере и предоставляет клиентам определенные ресурсы. К примеру, сервер электронной почты – это программа, которая участвует в процессе обмена электронными сообщениями.
Следующим центральным компонентом будет клиент-система, использующая услуги, предоставленные сервером. Сам клиент не предоставляет никаких услуг другим клиентам. В большинстве случаев клиентом называют пользователя и его компьютер.
В компьютерную сеть входит все программное и аппаратное обеспечение, которое необходимо для подключения компьютеров и другого электронного оборудования к каналу, по которому они могут взаимодействовать друг с другом. Несколько устройств, которые взаимодействуют в сети между собой, являются узлами, хостами, станциями, или сетевыми устройствами.
ОДНОРАНГОВЫЕ СЕТИ
В случае, когда все узлы сети выполняют однотипные коммуникационные функции, то их называют равными, а взаимодействие между такими узлами – одноранговым. В одноранговых сетях узел одновременно может выступать и клиентом и сервером.
СЕТИ КЛИЕНТ-СЕРВЕР
Есть еще другой тип сетей, который состоит из множества клиентских компьютеров, которые обмениваются информацией с одним или с несколькими серверами. Сеть типа «клиент-сервер» позволяет получить централизованный доступ к сервису, приложениям и/или устройствам. Такие сети являются более эффективными, потому что ресурсы в основном сконцентрированы на сервере, а в одноранговых сетях – ресурсы распределены по всей сети.
СЕРВЕР — это… Что такое КЛИЕНТ-СЕРВЕР?
- КЛИЕНТ-СЕРВЕР
КЛИЕНТ-СЕРВЕР, тип взаимосвязи между компьютерами в КОМПЬЮТЕРНОЙ СЕТИ. Компьютер-клиент делает запросы и отсылает их на выделенный ему компьютер-сервер. Сервер выполняет задание и выдает клиенту результат.
Научно-технический энциклопедический словарь.
- КЛИВАЖ
- КЛИМАКСНОЕ СООБЩЕСТВО
Полезное
Смотреть что такое «КЛИЕНТ-СЕРВЕР» в других словарях:
клиент-сервер — Процесс клиент сервер описывает взаимодействие между двумя компьютерными программами, при котором одна программа (клиент) направляет запрос к службе другой программе (серверу), которая выполняет данный запрос. Как правило, несколько клиентских… … Справочник технического переводчика
Клиент — сервер — (англ. Client server) сетевая архитектура, в которой устройства являются либо клиентами, либо серверами. Клиентом (front end) является запрашивающая машина (обычно ПК), сервером (back end) машина, которая отвечает на запрос. Оба термина (клиент и … Википедия
КЛИЕНТ-СЕРВЕР — Вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемыми серверами, и заказчиками услуг, называемыми клиентами. Нередко клиенты и серверы взаимодействуют через… … Словарь бизнес-терминов
Клиент-сервер — Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей … Википедия
клиент/сервер (связь между сетями уровней иерархической структуры) — Термин, относящийся к прозрачной транспортировке соединения тракта уровня клиента (то есть более высокого уровня) с сетевой трассой уровня сервера (то есть более низкого уровня) (МСЭ Т Y.1711). [http://www.iks media.ru/glossary/index.html?glossid … Справочник технического переводчика
Технология «клиент-сервер» — Клиент сервер (англ. Client server) вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемыми серверами, и заказчиками услуг, называемыми клиентами.… … Википедия
Технология «клиент-сервер» — Клиент сервер ( en. Client server) сетевая архитектура, в которой устройства являются либо клиентами, либо серверами. Клиентом (front end) является запрашивающая машина (обычно ПК), сервером (back end) машина, которая отвечает на запрос. Оба… … Википедия
архитектура клиент-сервер — Логическое продолжение концепции модульного программирования. Модуль клиент (программа), установленный на ПК пользователя, запрашивает сервис (например получение информации из базы данных) у модуля сервера (программы), расположенного на другом… … Справочник технического переводчика
Архитектура клиент-сервер — архитектура распределенной вычислительной системы, в которой приложение делится на клиентский и серверный процессы. В зависимости от того, как распределены логические компоненты приложения между клиентами и серверами, различают четыре модели… … Финансовый словарь
модель клиент-сервер — Общий способ описания услуг и модель пользовательских процессов (программ) для реализации этих услуг. Клиент запрашивает услуги сервера. Клиент непосредственно взаимодействует с пользователем и может запрашивать услуги многочисленных серверов.… … Справочник технического переводчика
Технология клиент-сервер. — it-black.ru
Клиент-сервер (Client-server) – вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемыми серверами, и заказчиками услуг, называемыми клиентами.
Нередко клиенты и серверы взаимодействуют через компьютерную сеть и могут быть как различными физическими устройствами, так и программным обеспечением.
Сама технология очень проста. Например пользователь делает запрос (в google ищет информацию), а сервер выдает ответ (в виде списка сайтов по этой информации). Это и есть самый простой пример данной технологии. Графически это выглядит так:
Модель клиент-сервер используется при построении системы обработки информации на основе СУБД, а также почтовые системы. Существует еще так называемая файл-серверная архитектура, которая существенно отличается от клиент-серверной.
Данные в файл-серверной системе сохраняются на файловом сервере (Novell NetWare или WindowsNT Server), а обрабатываются они на рабочих станциях посредством функционирования «настольных СУБД», таких как Access, Paradox, FoxPro и т.п.
Преимущества технологии «клиент-сервер»
1. Делает возможным, в большинстве случаев, распределение вычислительной системы между несколькими независимыми компьютерами в сети.
Это позволяет упростить обслуживание вычислительной системы. В частности, замена, ремонт, модернизация или перемещение сервера не затрагивают клиентов.
2. Все данные хранятся на сервере, который, как правило, защищён гораздо лучше большинства клиентов. На сервере проще обеспечить контроль полномочий, чтобы разрешать доступ к данным только клиентам с соответствующими правами доступа.
3. Позволяет объединить различных клиентов. Использовать ресурсы одного сервера часто могут клиенты с разными аппаратными платформами, операционными системами и т.п.
Недостатки технологии «клиент-сервер»
- Неработоспособность сервера может сделать неработоспособной всю вычислительную сеть.
- Поддержка работы данной системы требует отдельного специалиста системного администратора.
- Высокая стоимость оборудования.
Многоуровневая архитектура клиент-сервер
Многоуровневая архитектура клиент-сервер – разновидность архитектуры клиент-сервер, в которой функция обработки данных вынесена на один или несколько отдельных серверов. Это позволяет разделить функции хранения, обработки и представления данных для более эффективного использования возможностей серверов и клиентов.
Сеть с выделенным сервером
Сеть с выделенным сервером (Client/Server network) – это локальная вычислительная сеть (LAN), в которой сетевые устройства централизованы и управляются одним или несколькими серверами. Индивидуальные рабочие станции или клиенты (такие, как ПК) должны обращаться к ресурсам сети через сервер(ы).
Клиент-серверная Архитектура
«Клиент — сервер» (англ. client–server) — архитектура, в которой сетевая нагрузка распределены между поставщиками услуг, называемыми серверами, и заказчиками услуг, называемыми клиентами.
Фактически клиент и сервер — это программное обеспечение. Обычно эти программы расположены на разных вычислительных машинах и взаимодействуют между собой через вычислительную сеть посредством сетевых протоколов, но они могут быть расположены также и на одной машине.
Программы-серверы ожидают от клиентских программ запросы и предоставляют им свои ресурсы в виде данных (например, загрузка файлов посредством HTTP, FTP, BitTorrent, потоковое мультимедиа или работа с базами данных) или в виде сервисных функций (например, работа с электронной почтой, общение посредством систем мгновенного обмена сообщениями или просмотр web-страниц во всемирной паутине).
Поскольку одна программа-сервер может выполнять запросы от множества программ-клиентов, её размещают на специально выделенной вычислительной машине, настроенной особым образом, как правило, совместно с другими программами-серверами, поэтому производительность этой машины должна быть высокой. Из-за особой роли такой машины в сети, специфики её оборудования и программного обеспечения, её также называют сервером, а машины, выполняющие клиентские программы, соответственно, клиентами.
Преимущества
- Отсутствие дублирования кода программы-сервера программами-клиентами.
- Так как все вычисления выполняются на сервере, то требования к компьютерам, на которых установлен клиент, снижаются.
- Все данные хранятся на сервере, который, как правило, защищён гораздо лучше большинства клиентов. На сервере проще организовать контроль полномочий, чтобы разрешать доступ к данным только клиентам с соответствующими правами доступа.
Недостатки
- Неработоспособность сервера может сделать неработоспособной всю вычислительную сеть. Неработоспособным сервером следует считать сервер, производительности которого не хватает на обслуживание всех клиентов, а также сервер, находящийся на ремонте, профилактике и т. п.
- Поддержка работы данной системы требует отдельного специалиста — системного администратора.
- Высокая стоимость оборудования.
Многоуровневая архитектура «клиент — сервер» — разновидность архитектуры «клиент — сервер», в которой функция обработки данных вынесена на один или несколько отдельных серверов. Это позволяет разделить функции хранения, обработки и представления данных для более эффективного использования возможностей серверов и клиентов.
Частные случаи многоуровневой архитектуры:
Трехуровневая архитектура — архитектурная модель программного комплекса, предполагающая наличие трех компонентов:
- клиент,
- сервер приложений (для которых подключено клиентское приложение)
- сервер баз данных (с этими работает сервер приложений).
Клиенты и серверы | CiscoTips
В современных сетях при взаимодействии между конечными устройствами, как правило используются две модели:
- Клиент-серверное взаимодействие (client-server)
- Одноранговое взаимодействие (peer-to-peer)
Клиент-серверное взаимодействие
Любое конечное устройство может выступать в роли клиента или сервера. Сервер предоставляет некоторые сервисы или ресурсы клиенту. Клиент, соответственно обращается к серверу, получает некоторые ресурсы и пользуется ими.
Важно понимать, что отличие между клиентом и сервером в том, какое программное обеспечение установлено на них и как оно настроено. Например, если взять домашний компьютер и поставить на него приложение веб-сервер Apache, то можно сказать, что компьютер выступает в роли сервера. Если взять большой сервер IBM, поставить на него MS Windows и пользоваться веб-браузером, то можно сказать, что это оборудование используется как клиентская машина. Таким образом, разница между клиентом и сервером находится на уровне приложений модели OSI, с точки зрения нижестоящих уровней этой модели, разницы между ними нет.
На одном хосте может быть запущено несколько серверов. В небольших организациях часто практикуется один физический сервер, на котором работают одновременно, например, веб-сервер, почтовый сервер, файловый сервер и другие. К каждому из этих серверов могут подключаться свои клиенты.
Одноранговое взаимодействие
В этой модели устройства в сети равны: каждый выступает как в роли клиента, так и в роли сервера. Простейший пример – сеть MS Windows без домена. Несколько компьютеров обмениваются данными через открытые для общего доступа папки. Каждый получает и отдаёт файлы, выступая то как клиент, то как сервер.
Преимуществом одноранговой модели являются:
- Простота настройки.
- Меньшая стоимость внедрения (не требуется дорогостоящее оборудование для сервера).
- Может с успехом использоваться для простых задач вроде обмена файлами или сетевой печати.
Недостатки одноранговой модели в сравнении с клиент-серверной:
- Отсутствие возможности централизованного администрирования и управления сетью, так как все настройки применяются на каждом хосте отдельно.
- В связи с предыдущим пунктом, проблемы с безопасностью.
- Возможные проблемы с производительностью из-за того, что постороннее клиентское ПО может занимать ресурсы системы.
- В связи с предыдущими тремя пунктами, проблемы с масштабируемостью сети.
В организациях одноранговую сеть имеет смысл использовать только при небольшом (до десяти) количестве компьютеров и отсутствии специальных требований к централизованному администрированию и обеспечению безопасности.
Разница между сервером и клиентом
В чем разница между сервером и клиентом? Какое это имеет значение для некоторых программных установок?
Например, я проверил, как загрузить и установить cvs, и один из пользователей спросил о сервере или клиенте.
server
client
Поделиться
Источник
Avinashreddy Pakala
29 августа 2013 в 10:51
2 ответа
- В чем разница между MySQL сервером и MySQL клиентом
В Ubuntu я обычно устанавливаю оба варианта, но в чем разница между клиентом и сервером для MySQL? В качестве бонуса, когда в новом заявлении упоминается, что ему нужно MySQL 5.x, это означает клиента, сервер или и то, и другое. Например, эта ссылка https:/ / dev.mysql.com / doc/refman/5.7/en /…
- DateTime разница между сервером и клиентом
все! Я решаю следующую проблему со временем в своем проекте ASP.NET MVC: Проблема: нужно вычислить разницу между клиентом DateTime и сервером DateTime. У меня есть функция javascript, которая делает запрос Ajax к серверу (DateController) с параметром timeStamp = getNow(), код которого приведен…
2
Сервер-это программа или машина, которая ожидает входящих запросов.
Клиент-это программа или машина, которая отправляет запросы на серверы.
Википедия: Сервер (вычислительная техника) , Клиент (вычислительная техника)
Для cvs; Вы настраиваете свой собственный проект, и в этом случае вам нужно будет настроить сервер cvs, а также клиент для подключения к указанному серверу. Или вы подключаетесь к существующему проекту, и в этом случае вам нужен клиент.
Поделиться
Taemyr
29 августа 2013 в 10:58
1
В простейшей форме сервер-это точка подключения для нескольких клиентов, которая будет обрабатывать их запросы.
Клиент-это программное обеспечение, которое (обычно) подключается к серверу для выполнения действий. Клиент предоставляет пользовательский интерфейс, который позволяет пользователям выполнять действия. Он пересылает эти запросы на сервер, который выполняет действие и возвращает ответ.
В CVS сервер-это место, где хранится центральное хранилище данных, а клиент-это то, что вы используете для доступа к указанному хранилищу.
Поделиться
Kami
29 августа 2013 в 10:55
Похожие вопросы:
Разница между клиентом Sip и клиентом IMS
В чем разница между клиентом SIP и клиентом IMS? Можем ли мы вызвать sip-клиент как IMS клиент?. Например: Linphone, Sipdroid, Imsdroid-это некоторые клиенты sip, доступные для Android. Существуют…
Защищенное соединение между клиентом и сервером Oracle Oracle
Я хотел сделать безопасную связь между клиентом Oracle и сервером Oracle. Oracle версия: 11g Знает ли кто-нибудь, как настроить безопасную связь с сервером Oracle и клиентом? Какую конфигурацию…
System.IO.IOException: существует разница во времени и/или дате между клиентом и сервером
Я пытаюсь скопировать файл, используя System.IO.File.Copy() из сетевого расположения, на клиент. Это работает уже давно, но теперь, внезапно, клиенты получают эту ошибку: System.IO.IOException:…
В чем разница между MySQL сервером и MySQL клиентом
В Ubuntu я обычно устанавливаю оба варианта, но в чем разница между клиентом и сервером для MySQL? В качестве бонуса, когда в новом заявлении упоминается, что ему нужно MySQL 5.x, это означает…
DateTime разница между сервером и клиентом
все! Я решаю следующую проблему со временем в своем проекте ASP.NET MVC: Проблема: нужно вычислить разницу между клиентом DateTime и сервером DateTime. У меня есть функция javascript, которая делает…
В чем разница между клиентом и сервером API
Я хочу реализовать клиент Pusher в Qt, и мне было интересно, в чем разница между клиентом API и сервером API. Как они рассказывают на своем сайте , клиенты — это потребители, а серверы-производители…
Измерьте задержку между данными, отправленными сервером udp и полученными клиентом
Я хочу проверить свое клиентское приложение udp server. Одна из особенностей, которую я хотел проверить, — это временная задержка между данными, отправленными сервером и полученными клиентом, и…
разница между клиентом API и сервером API
Как уже упоминалось в этой теме, Может ли кто-нибудь объяснить отношения между клиентом API и сервером API? Например, у нас есть веб с его сервером, написанным на java и использующим Axis2. Я…
Разница между UDP сервером / UDP клиентом
Я пытаюсь работать с протоколом UDP, и я не понимаю разницы между сервером UDP и клиентом UDP . Разве они не делают то же самое ?
Разница между Oracle lnstant клиентом и Oracle клиентом
В чем разница между Oracle lnstant клиентом и Oracle клиентом ? Не могли бы вы мне объяснить ? Спасибо
Клиент-серверный вариант работы
Клиент-серверный вариант работы — один из вариантов работы системы «1С:Предприятие 8». Клиент-серверный вариант работы предназначен для использования в рабочих группах или в масштабе предприятия. Он реализован на основе трехуровневой архитектуры «клиент-сервер».
Клиент-серверная архитектура разделяет всю работающую систему на три различные части, определенным образом взаимодействующие между собой:
Программа, работающая у пользователя, (клиентское приложение) взаимодействует с кластером серверов «1С:Предприятия 8», а кластер, при необходимости, обращается к серверу баз данных.
При этом физически кластер серверов «1С:Предприятия 8» и сервер баз данных могут располагаться как на одном компьютере, так и на разных. Это позволяет администратору при необходимости распределять нагрузку между серверами.
Использование кластера серверов «1С:Предприятия 8» позволяет сосредоточить на нем выполнение наиболее объемных операций по обработке данных. Например, при выполнении даже весьма сложных запросов программа, работающая у пользователя, будет получать только необходимую ей выборку, а вся промежуточная обработка будет выполняться на сервере. Обычно увеличить мощность кластера серверов гораздо проще, чем обновить весь парк клиентских машин.
Другим важным аспектом использования 3-х уровневой архитектуры является удобство администрирования и упорядочивание доступа пользователей к информационной базе. В этом варианте пользователь не должен знать о физическом расположении конфигурации или базы данных. Весь доступ осуществляется через кластер серверов «1С:Предприятия 8». При обращении к той или иной информационной базе пользователь должен указать только имя кластера и имя информационной базы, а система запрашивает соответственно имя и пароль пользователя.
«1С:Предприятие 8» использует возможности системы управления базами данных для эффективной выборки информации:
- механизм запросов ориентирован на максимальное использование СУБД для выполнения расчетов и составления отчетов,
- просмотр больших динамических списков обеспечивается без выполнения большого количества обращений к базе данных; при этом пользователю предоставляются возможности эффективного поиска, а также настройки отбора и сортировки.
Развертывание клиент-серверного варианта и его администрирование выполняется довольно просто. Например, создание базы данных производится непосредственно в процессе запуска конфигуратора (так же, как и для файлового варианта).
Клиентские приложения
Работа в клиент-серверном варианте возможна как напрямую с кластером, так и через веб-сервер. При этом в случае непосредственного подключения к кластеру толстый клиент и тонкий клиент используют протокол TCP/IP. При подключении через веб-сервер тонкий клиент и веб-клиент используют протокол HTTP или HTTPS.
Кластер серверов
Кластер серверов «1С:Предприятия 8» — основной компонент платформы, обеспечивающий взаимодействие между пользователями и системой управления базами данных в клиент-серверном варианте работы. Наличие кластера позволяет обеспечить бесперебойную, отказоустойчивую, конкурентную работу большого количества пользователей с крупными информационными базами. Подробнее…
Сервер баз данных
В качестве сервера баз данных могут использоваться:
Администрирование кластера серверов
В поставку платформы входит набор различных инструментов, позволяющих администратору управлять составом кластера, информационными базами и подключением пользователей. Подробнее…
Выполнение основной функциональности на сервере
Вся работа с прикладными объектами, чтение и запись базы данных выполняется только на сервере. Функциональность форм и командного интерфейса также реализована на сервере.
На сервере выполняется подготовка данных форм, расположение элементов, запись данных форм после изменения. На клиенте отображается уже подготовленная на сервере форма, выполняется ввод данных и вызовы сервера для записи введенных данных и других необходимых действий.
Аналогично командный интерфейс формируется на сервере и отображается на клиенте. Также и отчеты формируются полностью на сервере и отображаются на клиенте.
При этом механизмы платформы ориентированы на минимизацию объема данных, передаваемых на клиентский компьютер. Например, данные списков, табличных частей и отчетов передаются с сервера не сразу, а по мере просмотра их пользователем.
На сервере выполняются:
- Запросы к базе данных,
- Запись данных,
- Проведение документов,
- Различные расчеты,
- Выполнение обработок,
- Формирование отчетов,
- Подготовка форм к отображению.
На клиенте выполняется:
- Получение и открытие форм,
- Отображение форм,
- «Общение» с пользователем (предупреждения, вопросы…),
- Небольшие расчеты в формах, требующие быстрой реакции (например, умножение цены на количество),
- Работа с локальными файлами,
- Работа с торговым оборудованием.
Использование встроенного языка на клиенте
Управлять функциональностью форм можно не только на сервере, но и на клиенте. На клиенте поддерживается работа встроенного языка. Он используется в тех случаях, когда необходимо провести расчеты, связанные с отображенной на экране формой, например, быстро (без обращения к серверу) подсчитать сумму строки документа на основе цены и количества; задать пользователю вопрос и обработать ответ; прочитать файл из файловой системы компьютера и отправить его на сервер.
Однако работа встроенного языка на клиенте поддерживается в строго ограниченном объеме. Клиентские процедуры в модулях в явном виде отделяются от серверных, и в них используется ограниченный состав объектной модели встроенного языка.
На клиенте не допускается непосредственная работа с базой данных. Не допускается работа непосредственно с прикладными объектами, например, недоступны такие типы встроенного языка, как СправочникОбъект.<имя>. Не допускается использование запросов. При необходимости вызова действий с данными в клиентском коде нужно вызывать серверные процедуры, которые уже будут обращаться к данным.
Смотрите также:
Определение клиент / сервер | PCMag
Архитектура, в которой ПК пользователя (клиент) является запрашивающей машиной, а сервер — поставляющей машиной, оба из которых подключены через локальную сеть (LAN) или глобальную сеть (WAN), такую как Интернет. В конце 1980-х — начале 1990-х годов термин «клиент / сервер» был горячим модным словом, поскольку приложения мигрировали с миникомпьютеров и мэйнфреймов с терминалами ввода-вывода в сети настольных компьютеров.
Благодаря повсеместному доступу к корпоративным локальным сетям и Интернету, сегодня почти все работают в среде клиент / сервер.Однако, чтобы быть истинным клиент / сервер, и клиент, и сервер должны совместно использовать бизнес-обработку. Чтобы понять этот принцип, следуйте приведенным ниже примерам запроса к базе данных с миллионами записей. Каждая запись имеет размер 1000 байт, всего 1 ГБ.
Не клиент / сервер
В этом примере сервер является удаленным хранилищем для базы данных, но система управления базами данных (СУБД) работает на клиенте. Поскольку на сервере не выполняется поиск, все один миллион записей отправляется по сети клиенту для сравнения.См. СУБД.
Двухуровневый клиент / сервер
Это «истинный» клиент / сервер, потому что обе стороны разделяют обработку. СУБД находится на сервере и отвечает на запросы клиента, выполняя поиск на сервере и отправляя только результаты обратно по сети. Если 50 записей соответствуют критериям, только 50 КБ данных проходят через сеть, а не 1 ГБ.
Трехуровневый клиент / сервер
В этом примере обработка разделена между двумя или более серверами: один для обработки приложений, а другой для обработки базы данных.
Интернет клиент / сервер
Из-за Интернета такие термины, как «на базе Интернета» и «с поддержкой Интернета» заменили модное словечко «клиент / сервер» 1990-х годов, а «клиент / сервер» подразумевают более старые устаревшие системы. Однако, хотя термин клиент / сервер больше не используется, сегодня веб-системы представляют собой полностью двухуровневую и трехуровневую архитектуру клиент / сервер. На стороне клиента ПК пользователя выполняет сценарии на веб-страницах, а веб-серверы и серверы приложений в Интернете обрабатывают данные перед возвратом результатов пользователю.См. Язык сценариев, Java-апплет, веб-сервер, сервер приложений и сервер базы данных.
Что такое модель клиент-сервер?
Клиент-сервер — это отношения, в которых одна программа (клиент) запрашивает службу или ресурс у другой программы (сервера). На рубеже прошлого века термин «клиент-сервер» использовался, чтобы отличать распределенные вычисления на персональных компьютерах (ПК) от модели монолитных централизованных вычислений, используемой мэйнфреймами.
Сегодня компьютерные транзакции, в которых сервер выполняет запрос, сделанный клиентом, очень распространены, и модель клиент-сервер стала одной из центральных идей сетевых вычислений.В этом контексте клиент устанавливает соединение с сервером через локальную сеть (LAN) или глобальную сеть (WAN), такую как Интернет. Как только сервер выполнил запрос клиента, соединение разрывается. Поскольку несколько клиентских программ совместно используют службы одной и той же серверной программы, специальный сервер, называемый демоном, может быть активирован только для ожидания клиентских запросов.
На заре Интернета большая часть сетевого трафика была между удаленными клиентами, запрашивающими веб-контент, и серверами центра обработки данных, которые предоставляли контент.Такая схема движения называется движением с севера на юг. Сегодня, когда виртуализация и облачные вычисления достигли зрелости, сетевой трафик, скорее всего, будет передаваться от сервера к серверу, по схеме, известной как трафик с востока на запад. Это, в свою очередь, изменило фокус администратора с централизованной модели безопасности, предназначенной для защиты периметра сети, на децентрализованную модель безопасности, которая больше фокусируется на контроле доступа отдельных пользователей к службам и данным и аудиту их поведения для обеспечения соответствия политикам и правилам.
Преимущества и недостатки модели клиент-сервер
Важным преимуществом модели клиент-сервер является то, что ее централизованная архитектура помогает упростить защиту данных с помощью средств управления доступом, которые обеспечиваются политиками безопасности. Кроме того, не имеет значения, созданы ли клиенты и сервер на одной и той же операционной системе, поскольку данные передаются через протоколы клиент-сервер, которые не зависят от платформы.
Важным недостатком модели клиент-сервер является то, что если слишком много клиентов одновременно запрашивают данные с сервера, он может быть перегружен.Помимо перегрузки сети, слишком большое количество запросов может привести к отказу в обслуживании.
Клиент-серверные протоколы
Клиенты обычно обмениваются данными с серверами с помощью набора протоколов TCP / IP. TCP — это протокол, ориентированный на соединение, что означает, что соединение устанавливается и поддерживается до тех пор, пока прикладные программы на каждом конце не закончат обмен сообщениями. Он определяет, как разбить данные приложения на пакеты, которые могут доставлять сети, отправляет пакеты и принимает пакеты от сетевого уровня, управляет управлением потоком и обрабатывает повторную передачу отброшенных или искаженных пакетов, а также подтверждение всех поступающих пакетов.В модели взаимодействия открытых систем (OSI) TCP охватывает части уровня 4, транспортного уровня, и части уровня 5, сеансового уровня.
Напротив, IP — это протокол без установления соединения, что означает отсутствие постоянного соединения между конечными точками, которые обмениваются данными. Каждый пакет, который проходит через Интернет, рассматривается как независимая единица данных, не имеющая никакого отношения к любой другой единице данных. (Причина, по которой пакеты размещаются в правильном порядке, — это TCP.) В модели взаимодействия открытых систем (OSI) IP находится на уровне 3, сетевом уровне.
Другие модели взаимосвязей программ
Другие модели взаимоотношений программ включали ведущий / ведомый и одноранговые (P2P). В модели P2P каждый узел в сети может функционировать как сервер, так и как клиент. В модели ведущий / ведомый одно устройство или процесс (известный как ведущий) управляет одним или несколькими другими устройствами или процессами (известными как ведомые устройства , ). Как только отношения «главный / подчиненный» установлены, управление всегда будет односторонним, от главного к подчиненному.
Разница между клиентом и сервером
Основное различие между клиентом и сервером состоит в том, что клиент — это машина или программа, которая запрашивает услуги через Интернет, в то время как сервер — это машина или программа, которая предоставляет услуги клиентам в соответствии с запросами клиента.
World Wide Web (WWW) позволяет компьютерам и другим устройствам связываться друг с другом. Устройства в сети требуют получения различных услуг, включая данные и ресурсы.WWW работает по модели клиент-сервер. Устройства или программы, которым требуются услуги, называются клиентами, а устройства, которые предоставляют услуги клиентам, называются серверами. Клиенты инициируют сеансы связи с серверами. Серверы ждут входящих запросов и отвечают на них.
Основные зоны покрытия
1. Что такое клиент
— Определение, функциональность
2. Что такое сервер
— Определение, функциональность
3.В чем разница между клиентом и сервером
— Сравнение основных различий
Ключевые термины
Клиент, Сервер
Что такое клиент
Клиент может быть устройством или программой. Клиентское устройство — это машина, которую конечные пользователи используют для доступа в Интернет. Настольные компьютеры, ноутбуки, смартфоны, планшеты — вот некоторые примеры устройств. Клиентская программа — это программа, которая позволяет пользователю делать запросы через Интернет.Одним из примеров является веб-браузер. Пользователь может запросить веб-страницу через веб-браузер. Более того, программы, которые могут получить онлайн-поддержку, темы и т. Д., Также могут рассматриваться как клиенты.
Что такое сервер
Сервер — это устройство, которое предоставляет услуги по запросам клиентов. Эти устройства запускают серверные программы. Один сервер может одновременно предоставлять услуги нескольким клиентам. Обычно серверы работают непрерывно. На одной машине может быть несколько серверов. Например, для разделения разных клиентов могут одновременно работать и веб-серверы, и файловые серверы.Также возможно иметь клиент и сервер на одной машине.
Рисунок 1: Клиент и сервер
Сервер состоит из веб-ресурсов, размещающих веб-приложений и хранит программные данные. Существуют разные типы серверов. Веб-серверы предоставляют веб-страницы. На серверах баз данных работают системы управления базами данных (СУБД). Файловые серверы предоставляют компьютерные файлы. Некоторые серверы предоставляют клиентам общие ресурсы. Сервер всегда слушает запросы от клиентов. Когда он получает запрос, он отвечает на него сообщением.
Вместе клиент и сервер образуют механизм взаимодействия устройств в сети друг с другом. Оба они создают архитектурную модель для Интернета, которая работает в соответствии с циклами запроса и ответа.
Разница между клиентом и сервером
Определение
Клиент — это устройство или программа, которым требуются услуги через Интернет. Сервер — это устройство или программа, которая отвечает на запросы клиентов, предоставляя им услуги.
Функциональность
Клиент запрашивает у сервера контент или служебную функцию. Сервер предоставляет функции или услуги клиентам, когда клиент запрашивает услуги. В этом разница между клиентом и сервером.
Примеры
Настольные компьютеры, ноутбуки, смартфоны, планшеты и веб-браузеры — вот некоторые примеры для клиентов. Серверы баз данных, файловые серверы и веб-серверы — вот некоторые примеры серверов.
Заключение
Разница между клиентом и сервером заключается в том, что клиент — это машина или программа, которая запрашивает услуги через Интернет, в то время как сервер — это машина или программа, которая предоставляет услуги клиентам в соответствии с запросами клиента.И клиент, и сервер позволяют устройствам в сети взаимодействовать друг с другом.
Ссылка:
1. «Модель клиент-сервер», Клиенты и серверы, WebDev Cave, 20 мая 2016 г., доступно здесь.
2. «Модель клиент – сервер». Википедия, Фонд Викимедиа, 24 августа 2018 г., доступно здесь.
Изображение предоставлено:
1. «Модель-клиент-сервер» Автор Gnome-fs-client.svg: Дэвид Виньони Gnome-fs-server.svg: Дэвид ВиньонПроизводственная работа: Calimo (обсуждение) — Gnome-fs-client.svgGnome-fs-server.svg (LGPL) через Commons Wikimedia
Модель клиент-сервер
— GeeksforGeeks
Модель клиент-сервер — это распределенная структура приложения, которая разделяет задачу или рабочую нагрузку между поставщиками ресурса или службы, называемыми серверами, и инициаторами запросов на обслуживание, называемыми клиентами. В архитектуре клиент-сервер, когда клиентский компьютер отправляет запрос данных на сервер через Интернет, сервер принимает запрошенный процесс и доставляет запрошенные пакеты данных обратно клиенту.Клиенты не делятся своими ресурсами. Примерами модели клиент-сервер являются электронная почта, Интернет и т. Д.
Как работает модель клиент-сервер?
В этой статье мы углубимся в модель клиент-сервер и посмотрим, как Internet работает через веб-браузеры. Эта статья поможет нам получить прочную основу для WEB и поможет с легкостью работать с WEB-технологиями.
- Клиент: Слово Клиент означает, что мы говорим о человеке или организации, использующей определенную услугу.Аналогичным образом в цифровом мире клиент — это компьютер (хост ), то есть способный получать информацию или использовать конкретную услугу от поставщиков услуг (серверы , ).
- Серверы: Точно так же, когда мы говорим о слове Серверы , оно означает человека или среду, которая что-то обслуживает. Точно так же в этом цифровом мире Server — это удаленный компьютер, который предоставляет информацию (данные) или доступ к определенным услугам.
Итак, в основном клиент что-то запрашивает, а сервер обслуживает его, пока он присутствует в базе данных.
Как браузер взаимодействует с серверами?
Есть несколько шагов, которые нужно выполнить для взаимодействия с серверами клиента.
- Пользователь вводит URL (унифицированный указатель ресурсов) веб-сайта или файла. Затем браузер запрашивает сервер DNS (СИСТЕМА ДОМЕННЫХ ИМЕНИ).
- DNS-сервер ищет адрес WEB-сервера .
- DNS-сервер отвечает с IP-адресом веб-сервера .
- Браузер отправляет запрос HTTP / HTTPS на IP-адрес WEB-сервера (предоставляется DNS-сервером ).
- Сервер отправляет необходимые файлы сайта.
- Затем браузер отображает файлы, и отображается веб-сайт. Этот рендеринг выполняется с помощью интерпретатора DOM (объектная модель документа), интерпретатора CSS и JS Engine , вместе известных как JIT или (Just in Time) компиляторы.
Преимущества модели клиент-сервер:
- Централизованная система со всеми данными в одном месте.
- Рентабельность требует меньших затрат на обслуживание, возможно восстановление данных.
- Емкость Клиента и Сервера можно изменять отдельно.
Недостатки модели клиент-сервер:
- Клиенты подвержены вирусам, троянам и червям, если они присутствуют на сервере или загружены на сервер.
- Сервер подвержен атакам типа «отказ в обслуживании» (DOS).
- Пакеты данных могут быть подделаны или изменены во время передачи.
- Фишинг или сбор учетных данных или другой полезной информации о пользователе являются обычным явлением, и атаки MITM (Man in the Middle) являются обычным явлением.
Отношения клиент-сервер. Что такое отношения клиент-сервер? | Хантер Нгуен
Что такое отношения клиент-сервер?
Отношения клиент-сервер описывают, как сервер может предоставлять ресурсы или услуги одному или нескольким клиентам.
Клиент:
Клиент является заказчиком услуги. Всякий раз, когда клиенту требуется информация какого-либо типа, например веб-ресурсы или данные, клиент отправляет запрос на сервер. Клиент может быть ноутбуком, телефоном, планшетом, компьютером и т. Д. Когда клиент запрашивает услугу / ресурс, ему нужно только понимать, что возвращается обратно клиенту. Это означает, что клиенту не нужно знать, как запрос обработан / одобрен, ему просто нужно знать, что вернется.
Сервер:
Сервер является поставщиком услуг. Это означает, что когда сервер получает запрос от клиента, он предоставит необходимый ответ на этот запрос и вернет его клиенту. Сервер может содержать веб-ресурсы, размещать веб-приложения или хранить данные. Сервер содержит эти вещи, потому что клиент может запросить одну или несколько из этих вещей, поэтому сервер должен иметь возможность обрабатывать этот запрос. Сервер может обрабатывать только определенное количество клиентов, поэтому для решения этой проблемы используются распределенные вычисления.Распределенные вычисления — это когда клиенты распределены по нескольким серверам. Это лучше, чем нераспределенная модель, потому что здесь нет единой точки отказа. Если сервер выходит из строя по нераспределенной модели, то все выходит из строя. Этого не произошло бы, если бы использовалась распределенная модель. Примерами серверов являются веб-серверы, обрабатывающие HTTP-запросы, и серверы баз данных, на которых работает DMS (Digital Media Server).
Вот как выглядят отношения клиент-сервер.
Примеры:
Примерами взаимоотношений клиент-сервер может быть доставка веб-страницы, онлайн-игр, таких как Fortnite, или приложения для входа в систему с использованием имени пользователя и пароля, например электронной почты.При доставке веб-страницы браузер будет запрашивать веб-страницу с сервера, затем сервер ответит на этот запрос и вернет его клиенту, и веб-страница будет доставлена и загружена. Онлайн-игры, в которые вовлечены другие люди, будут рассматриваться как отношения клиент-сервер, потому что при входе в игру он запрашивает доступ к игровому серверу, чтобы играть с другими людьми. Логин с именем пользователя / паролем будет запрашивать доступ с именем пользователя и паролем, и сервер предоставит его в зависимости от того, правильны ли имя пользователя и пароль.Это всего лишь несколько примеров взаимоотношений клиент-сервер.
Другое Тип:
Другой тип отношений — это одноранговая сеть, известная как P2P. P2P-сеть — это когда несколько клиентов действуют как клиент и сервер и совместно используют ресурсы друг с другом. Вот как будет выглядеть одноранговая сеть.
COM-клиенты и серверы — приложения Win32
- 2 минуты на чтение
В этой статье
Критическим аспектом COM является взаимодействие клиентов и серверов.COM-клиент — это любой код или объект, который получает указатель на COM-сервер и использует его службы, вызывая методы его интерфейсов. COM-сервер — это любой объект, который предоставляет услуги клиентам; эти службы представлены в виде реализаций интерфейса COM, которые могут быть вызваны любым клиентом, который может получить указатель на один из интерфейсов объекта сервера.
Существует два основных типа серверов: в процессе и вне процесса .Внутрипроцессные серверы реализованы в динамически подключаемой библиотеке (DLL), а внепроцессные серверы реализованы в исполняемом файле (EXE). Внепроцессные серверы могут находиться как на локальном, так и на удаленном компьютере. Кроме того, COM предоставляет механизм, который позволяет внутреннему серверу (DLL) запускаться в суррогатном процессе EXE, чтобы получить преимущество возможности запускать процесс на удаленном компьютере. Дополнительные сведения см. В разделе Суррогаты DLL.
Модель программирования и конструкции COM были расширены, чтобы клиенты и серверы COM могли работать вместе по сети, а не только в пределах одного компьютера.Это позволяет существующим приложениям взаимодействовать с новыми приложениями и друг с другом в сетях с надлежащим администрированием, а новые приложения могут быть написаны для использования преимуществ сетевых функций.
Клиентским приложениям
COM не нужно знать, как упаковываются объекты сервера, независимо от того, упакованы ли они как внутрипроцессные объекты (в DLL) или как локальные или удаленные объекты (в EXE). Распределенный COM также позволяет упаковывать объекты как приложения-службы, синхронизируя COM с широкими возможностями администрирования и системной интеграции Windows.
Примечание
В этой документации вместо DCOM используется аббревиатура COM. Это потому, что DCOM не отдельный; это просто COM с более длинным проводом. В случаях, когда описываемое является конкретно удаленной операцией, используется термин распределенный COM .
COM разработан, чтобы сделать возможным добавление поддержки прозрачности местоположения, которая распространяется по сети. Он позволяет приложениям, написанным для отдельных компьютеров, работать в сети и предоставляет функции, расширяющие эти возможности и повышающие безопасность, необходимую в сети.(Для получения дополнительной информации см. Безопасность в COM.)
COM определяет механизм, с помощью которого код класса может использоваться многими различными приложениями.
Дополнительные сведения см. В следующих разделах:
Синхронизация вызовов
Безопасность в COM
Разработка клиент-серверных приложений
Разработка клиент-серверных приложений
Введение | Клиент / сервер в Интернете |
В этой главе представлены некоторые основные принципы работы клиент / сервер.
приложений и объясняет их преимущества перед более традиционными
монолитная архитектура.Он также предлагает, как разделить ваше приложение
в модули, которые максимально используют архитектуру клиент / сервер, и
описывает платформы, на которых могут быть размещены приложения Net Express.
развернут.
Несмотря на быстрое увеличение числа развертываний клиент / сервер
приложений, все еще существует некоторая загадочность, окружающая
термин «клиент / сервер», тем более что тот же термин часто используется для
описать ряд различных концепций.
2.1.1 Что такое клиент-серверное приложение?
В принципе, приложение клиент / сервер состоит из клиента
программа, которая потребляет услуги, предоставляемые программой server . В
клиент запрашивает услуги у сервера, вызывая функции в
серверное приложение. В распределенной вычислительной среде, где
клиентская программа и серверная программа выполняются на разных машинах и
возможно даже на разных платформах клиент и сервер общаются
через уровень связи, который часто называют промежуточным программным обеспечением .
Рисунок 2-1: Базовая архитектура клиент / сервер
Хотя очевидно, что приложения, работающие на разных машинах,
требуют, чтобы эти машины были физически связаны каким-либо образом — обычно
сеть (LAN, WAN или Интернет) — важно различать
сетевая архитектура и архитектура клиент-серверных приложений.Клиентское приложение может работать на сетевом клиенте или на сетевом сервере.
Клиентские и серверные приложения могут работать на одном компьютере, который
может быть сетевой клиент или сетевой сервер, или ни то, ни другое! Клиент / сервер
приложение описывается как таковое исключительно из-за его собственной архитектуры,
безотносительно к тому, как он развернут в сети. Например, X
система, используемая для графического интерфейса во многих системах UNIX, является
клиент-серверное приложение.Однако серверная часть приложения
часто работает на сетевой клиентской машине, причем клиентская часть
приложение, работающее на сетевом сервере! Самый простой способ запомнить
которая является клиентской частью приложения, чтобы помнить, что клиент
всегда запрашивает услуги.
Ниже приведены типичные особенности клиент-серверного приложения:
- Клиентская программа может запрашивать услуги у нескольких серверных программ
- Клиентской программе не обязательно знать о фактических подпрограммах.
которые предоставляют услугу - Несколько подпрограмм могут работать вместе для предоставления услуги
- Несколько клиентских программ могут запрашивать услуги с одного сервера
программа - Серверная программа может предоставлять несколько услуг
- Обычно серверная программа запускается на машине, удаленной от
машина, на которой запущена клиентская программа
Приложения COBOL запрашивают услуги с помощью оператора CALL.В
запрос на услугу на самом деле является вызовом функции, реализованной в
процедура. Хотя операторы CALL обычно связаны с локальным
функции — то есть процедуры, которые выполняются на той же машине, что и
вызывающая программа — они в равной степени могут быть связаны с удаленными функциями
которые выполняются на другой машине. Когда CALL используется таким образом, он
часто называют удаленным вызовом процедуры или RPC. Ключ
требование для быстрой разработки клиент-серверных приложений является
что удаленные вызовы процедур должны обрабатываться независимо от сети
используемый протокол; это позволяет вам сконцентрироваться на написании кода
приложения, а не обработки базовой сети.Net Express
поставляется с простым механизмом RPC, называемым привязкой клиент / сервер,
который обеспечивает простой сетевой независимый уровень связи
между клиентскими и серверными программами.
2.1.2 Преимущества клиент / сервер
Большинство преимуществ использования клиент-серверной архитектуры для предприятия
приложения связаны с гибкостью развертывания и относительной простотой
поддержание. Например, используя архитектуру клиент / сервер, вы можете
обычно:
- Повторно использовать существующий устаревший код для бизнес-логики
- Запускайте каждый функциональный уровень приложения на платформе как можно чаще.
подходит для задачи - Распределение вычислительной и сетевой нагрузки
- Быстро и легко изменять процедуры бизнес-логики без изменения
клиентская программа или пользовательский интерфейс - Обеспечим простую и удобную доставку заявки и любых
обновления для конечных пользователей - Предоставить альтернативные клиентские пользовательские интерфейсы на той же стороне сервера
программа - Используйте инструменты разработки, предназначенные для совместной работы
Чтобы максимизировать потенциальную ценность использования архитектуры клиент / сервер,
вам следует придерживаться некоторых основных рекомендаций по дизайну.Они обрисованы в общих чертах
ниже.
2.2.1
Разделение программной логики
Чтобы получить максимальную выгоду от использования архитектуры клиент / сервер для новых
приложений или в качестве упражнения по преобразованию при обновлении существующих
приложений, необходимо логически (а часто и физически)
разделить различные уровни функциональности в приложении, чтобы
они не смешиваются без разбора.Типичный подход —
разделить логические функции приложения на три:
- Логика пользовательского интерфейса (обработка экрана)
- Бизнес-логика (обработка данных)
- Логика доступа к данным (обработка файлов или базы данных)
Концептуально каждая из этих трех областей функциональности — или уровней —
обрабатываются отдельными программами. Логика пользовательского интерфейса всегда
обрабатывается клиентским приложением.Если клиентское приложение обрабатывает только
В логике пользовательского интерфейса он называется тонким клиентом . Иногда
часть или даже вся бизнес-логика также обрабатывается клиентом.
заявление; это называется толстым клиентом .
Когда вы создаете клиент-серверное приложение, имеет смысл
применить это концептуальное разделение функций к реальной программе
код, так что вы создаете физически отдельные программы для обработки каждого из
три слоя.В распределенной вычислительной среде каждый из этих
программы могут работать на разных машинах — но они будут работать одинаково
хорошо, если бы они все работали на одной машине.
Веб-приложение — это идеальный тонкий клиент. Пользовательский интерфейс
полностью обрабатывается веб-браузером пользователя. Хотя определение
интерфейс предоставляется в виде HTML-формы, которая находится на веб-сервере,
загружается временно под управлением веб-браузера.
2.2.2 Поддерживаемые платформы
Net Express предназначен для создания 32-разрядных веб-приложений.
и сетевые клиент-серверные приложения, которые можно развернуть на
следующие платформы:
- Операционные системы, поддерживаемые напрямую:
- Windows NT V4.0 с пакетом обновления 3, 4 или 5
- Windows 2000
- Окна 98
- Окна 95
- Поддерживаемые сетевые протоколы:
- TCP / IP
- Сеть Microsoft
- IPX (Novell NetWare)
- NetBEUI
Мы протестировали следующие платформы и полагаем, что они
совместимость с веб-приложениями Net Express:
- Веб-серверы:
- Информационный сервер Microsoft V4.0
- Microsoft Personal Web Server (в составе Windows NT V4.0
Пакет опций) - Сервер Netscape FastTrack V2.01
- Сервер Netscape Enterprise
- Веб-сервер Apache (в UNIX)
- Веб-браузеры:
- Microsoft Internet Explorer V5
- Коммуникатор Netscape V4.7
- Художники HTML:
- Microsoft FrontPage 97
- NetObjects Fusion
- Sausage Программное обеспечение HotDog
- Softquad HotMetal Pro
- Промежуточное ПО:
- IONA Technologies Orbix V2.3c
- Сервер транзакций Microsoft
- Oracle Pro * Cobol V1.8
и прекомпилятор базы данных V8.0.4 - Открытый клиент Sybase
Встроенный прекомпилятор SQL / COBOL V11.5 - XDB ExpressLane V2.0
- Базы данных:
- Oracle V7 и V8
- Sybase V11.0.1
- Informix V9.х
- Microsoft SQL Server версии 7.0
- Microsoft Access 2000
- IBM DB2 V6.1 для Windows NT
- Системы контроля исходного кода:
- MERANT PVCS Version Manager V5.3 и V6.0
- Microsoft Visual SourceSafe V6.0
- VisualAge TeamConnection
Поскольку веб-приложения, созданные Net Express, соответствуют
международные, независимые от платформы стандарты, весьма вероятно, что
они будут работать правильно при развертывании на другом TCP / IP-совместимом клиенте
платформы с соответствующими веб-браузерами.Однако, поскольку каждое приложение имеет
индивидуальные требования, советуем тщательно протестировать ваше приложение
на всех целевых системах перед развертыванием.