Что характерно для клиент-серверной технологии, основную работу выполняет серверный компьютер
Обновлено: 21.11.2024
Системы клиент-сервер часто хранят данные и выполняют обработку как на сервере, так и на клиенте, а это означает, что планирование на случай непредвиденных обстоятельств для этого типа системы должно учитывать потенциальные сбои в работе сервера, клиентов и подключения между клиентами и серверными компонентами системы. система. Стратегии на случай непредвиденных обстоятельств для клиент-серверных систем, которые следует учитывать владельцам систем, включают: [65]
Использование результатов анализа влияния на бизнес для определения требований на случай непредвиденных обстоятельств для смягчения возможных последствий.
Хранение резервных копий всех данных, а также клиентских и серверных программных компонентов вне офиса или на другом сайте.
Стандартизация оборудования, программного обеспечения и периферийных устройств для облегчения восстановления после сбоя нескольких клиентов.
Документирование информации о конфигурации системы и контактной информации поставщиков оборудования, программного обеспечения и других системных компонентов для помощи в восстановлении системы или приобретении компонентов для замены.
Согласование решений на случай непредвиденных обстоятельств с политиками безопасности и элементами управления безопасностью системы, включая координацию мер безопасности между основными и альтернативными сайтами.
Сведение к минимуму объема данных, хранящихся на клиентских компьютерах, таких как рабочие станции пользователей, за счет рекомендации или требования хранения данных на сервере или в технологиях централизованного хранения.
Автоматизация резервного копирования системы и данных для серверных и клиентских компьютеров, а также настройка компьютеров таким образом, чтобы облегчить централизованное резервное копирование, например путем обеспечения того, чтобы компьютеры оставались включенными в течение ночи или во время запланированных окон резервного копирования.
Координация решений на случай непредвиденных обстоятельств с процедурами реагирования на кибер-инциденты, чтобы ограничить влияние на систему инцидентов безопасности и гарантировать, что конфиденциальность или целостность данных не будет нарушена во время непредвиденных операций.
К ключевым моментам принятия решения при выборе решений для непредвиденных обстоятельств клиент/сервер относятся выбор процедур резервного копирования, носителей, аппаратного и программного обеспечения, а также технологий шифрования и криптографических модулей для обеспечения достаточно надежной защиты съемных носителей, а также данных, хранящихся на клиенте и сервере. компьютеры.
Включение службы клиент-серверных приложений
Том Лашевски, Пракаш Наудури, Миграция в облако, 2012 г.
Замена клиент-серверных систем облачным приложением
Введение
Клиент-сервер
В системе клиент-сервер большое количество персональных компьютеров взаимодействует с общими серверами в локальной сети. Такая система очень похожа на среду TP, где большое количество устройств отображения подключается к общим серверам, на которых выполняются транзакции. В каком-то смысле системы ТП были оригинальными клиент-серверными системами с очень простыми настольными устройствами, а именно с тупыми терминалами. По мере того, как настольные устройства становятся все более мощными, системы TP и системы персональных компьютеров объединяются в единый тип вычислительной среды с различными типами серверов, такими как файловые серверы, серверы связи и серверы TP.
Существует намного больше типов систем, чем мы можем здесь включить. Примерами могут служить встроенные системы, системы автоматизированного проектирования, системы потоковой передачи данных, электронные системы коммутации и системы управления трафиком.
Архивирование и хранение DVS
Архитектура клиент/сервер
Более крупные организации уже осознали преимущества использования системы клиент-сервер в корпоративной среде. Однако я считаю, что это особенно важно для малых и средних компаний. Microsoft NOS — это доступная по цене серверная операционная система (она предлагается по разным ценам), которая поставляется с набором решений. Этот сервер может предложить небольшим компаниям такую же экономичность и улучшенные процессы, как и гиганты отрасли.
Windows NOS включает в себя расширенные встроенные функции, такие как возможность подключения большего количества компьютеров к вашей сети, не прикасаясь к ней. Это достигается с помощью динамического протокола управления хостом (DHCP), поэтому, когда коллега посещает офис-спутник за городом, вам не нужно выяснять, как распечатать, отправить по электронной почте или передать его документы — просто подключите его. в сеть, и NOS автоматически назначит ему временный IP-адрес для доступа к сетевым ресурсам (дополнительную информацию о DHCP см. в главе 3). Windows NOS также включает в себя встроенный административный доступ из удаленного местоположения с помощью служб терминалов и удаленного рабочего стола, который также можно использовать для удаленного просмотра материалов видеонаблюдения.
Архивирование и хранение DVS
Архитектура клиент/сервер
Более крупные организации уже осознали преимущества использования системы клиент-сервер в корпоративной среде. Однако я считаю, что это особенно важно (и я приведу несколько примеров) для малых и средних компаний.Microsoft NOS — это доступная по цене серверная операционная система (у нее есть несколько уровней цен), которая поставляется с набором решений. Этот сервер может предложить небольшим компаниям такую же эффективность затрат и улучшенные процессы, как и гиганты отрасли.
Windows NOS включает в себя расширенные встроенные функции, такие как возможность «подключи и работай» больше компьютеров в вашей сети, не прикасаясь к ней. Это достигается с помощью протокола динамического управления хостом (DHCP), поэтому, когда Джонни приезжает из вспомогательного офиса за городом, вам не нужно выяснять, как распечатать, отправить по электронной почте или передать его документы; просто подключите его к сети, и NOS автоматически назначит ему временный IP-адрес для доступа к сетевым ресурсам (дополнительную информацию о DHCP см. в главе 3).
Windows NOS также включает в себя встроенный административный доступ из удаленного местоположения с помощью служб терминалов и удаленного рабочего стола, который также можно использовать для удаленного просмотра видеозаписи (подробнее об этом позже).
Защита веб-приложений, служб и серверов
Восстановление приложения
Герхард Вейкум, Готфрид Фоссен, Transactional Information Systems, 2002
17.5.10 Применимость к многоуровневым архитектурам
Подробное представление метода регистрации ответов сервера в предыдущих подразделах основано на двухуровневой архитектуре системы клиент-сервер. Однако этот алгоритм применим в трехуровневых и даже более общих многоуровневых федеративных системах при соблюдении определенных предварительных условий. Ключевое свойство, на котором мы основывались, заключается в том, что клиент запускает один процесс приложения и что это приложение является кусочно-детерминированным. Таким образом, приложение должно быть однопоточным, должно использовать только синхронные сообщения, когда процесс приостанавливается после отправки сообщения и ждет, пока не будет получено ответное сообщение, и не должно зависеть от событий в реальном времени, таких как таймеры и другие внешние сигналы. р>
Хотя указанное выше свойство на первый взгляд кажется достаточно ограничивающим, многие интернет-приложения, в том числе трехуровневые, легко удовлетворяют этим условиям. Хитрость заключается в том, что мы можем рассматривать более сложное многопоточное приложение, как если бы оно было набором виртуальных клиентов, каждый из которых выполняет свое собственное однопоточное приложение. Этот подход прекрасно работает до тех пор, пока между потоками нет релевантного для приложения общего состояния. Таким образом, единственной более серьезной проблемой могут быть асинхронные события, такие как прерывание приложения по внешнему сигналу, но эти механизмы очень редко используются в основных бизнес-приложениях.
После того как мы концептуально разобрали сложное приложение, мы понимаем, что также не имеет значения, работает ли приложение на выделенном клиентском компьютере или на сервере приложений среднего уровня (например, на веб-сервере). Сервер приложений даже запускает несколько приложений, но с ними можно обращаться так, как если бы они были несколькими клиентами, за исключением случаев, когда между приложениями существует общее состояние, значимое для приложения (т. е. без учета низкоуровневых данных о состоянии, таких как очереди запросов, буферы и т. ). Сервер приложений будет выполнять серверную часть общего алгоритма, разработанного в этом разделе, в отношении каждого из своих клиентов, а также клиентскую часть в отношении серверов данных, с которыми он взаимодействует. Таким образом, алгоритм можно каскадировать по иерархии серверов, так что даже многоуровневые федеративные приложения попадают в область применимости. Однако это не означает, что алгоритм готов для всех возможных приложений электронных услуг в Интернете. Есть, конечно, сложные приложения, такие как децентрализованные аукционы или совместное авторство, которые требуют еще более далеко идущих форм восстановления приложений. Такие приложения требуют будущих исследований гарантий восстановления для произвольных многоуровневых систем.
Другие системы
Сводка издателя
В этой главе рассматривается ряд других систем аудита и вопросы соответствия. Аудит мейнфреймов и других устаревших систем намного проще, чем аудит современных клиент-серверных систем. Эти системы существуют гораздо дольше, и существуют обширные программы для управления ими. Во многих ИТ-аудитах принято исключать наиболее важные системы. Из-за сочетания непонимания и отвращения к старым технологиям устаревшие системы и мэйнфреймы часто игнорируются. AuditNet — один из лучших репозиториев программ аудита и комплаенса. Он предоставляет как бесплатный, так и платный доступ к большому количеству программ аудита для многих систем и структур соответствия. Мейнфреймы считаются устаревшей системой. Устойчивость этих систем в сочетании с высокой вычислительной мощностью и пропускной способностью означает, что у них есть свои сторонники, и они вряд ли исчезнут в ближайшее время.Они особенно широко распространены в средах, использующих сложные крупномасштабные базы данных, требующие обработки больших объемов данных, доступной в течение всего дня, каждый день. Многие аудиторы избегают мейнфреймов. Сочетание навыков специалистов и восприятия старых технологий подвергает эти системы риску.
Проблемы с ошибками 2000 года (Y2K)
I.A.1. Внутренние ИТ-системы
Внутренние ИТ-системы были наиболее очевидным источником потенциальных сбоев Y2K и риском, находящимся под непосредственным контролем компании. Уязвимые технологии включали мейнфреймы, клиент-серверные системы, сети, интрасети, персональные компьютеры (ПК) и другие компоненты аппаратной и программной инфраструктуры, а также прикладные программы, утилиты, базы данных и т. д. Характер риска Y2K часто зависел от степень, в которой компоненты информационных систем находились под непосредственным контролем компании. У многих фирм была комбинация систем, включая приложения, которые были полностью разработаны собственными силами, простые ванильные или модифицированные коммерческие готовые (COTS) программы, а также системы и приложения, созданные по индивидуальному заказу. Многие компании использовали программное обеспечение, разработанное третьими сторонами, для обеспечения экспертной разработки приложений и систем, недоступной собственными силами. Однако поставщики часто не желали предоставлять требуемый уровень поддержки Y2K, поскольку они сталкивались с рисками для своей прибыли и возможным риском ответственности из-за своих несоответствующих продуктов.
Компании часто зависели от соглашений об обслуживании и поддержке с несколькими поставщиками, ответственными за разные части системы, которые со временем были связаны друг с другом. Иметь дело с несколькими поставщиками ИТ-продуктов и услуг в обычное время было достаточно сложно, и было справедливо предположить, что Y2K вызовет новые и непредсказуемые последствия для этих отношений. Лоскутное одеяло взаимозависимых технологий, на которое полагалось большинство компаний, создавало дополнительные трудности, поскольку в 2000 году требовалась оценка, исправление и тестирование всей системы, за которую ни один поставщик не нес единоличной ответственности.
Спецификации ядра
Барри Дуайер Барри Дуайер, в журнале «Системный анализ и синтез», 2016 г.
5.3 Инфраструктура
Что мы понимаем под инфраструктурой? Инфраструктура — это технология, в которую встроены правила, определенные ядром. Общая инфраструктура — это система клиент-сервер, работающая через Интернет. Как правило, сервер имеет доступ к базе данных, и удаленные клиенты могут просматривать базу данных с помощью браузера. Сервер передает информацию из базы данных клиенту, чей браузер отображает информацию в соответствии с командами HTML (язык разметки гипертекста). Пользователь такой системы взаимодействует с ядром, заполняя HTML формы, которые клиентский процесс передает на сервер. Сервер интерпретирует данные пользователя и соответствующим образом запрашивает или обновляет базу данных.
В похожей ситуации, когда используется локальная сеть, сервер просто разрешает доступ к общей базе данных, а клиентские компьютеры содержат логику ядра. Это предлагает пользователю более тесное взаимодействие с логикой ядра.
На заре вычислительной техники пользователь мог взаимодействовать с ядром, загружая партию перфокарт в считывающее устройство, ожидая обработки задания и читая распечатанные отчеты — часто отмечая ошибки во входных данных. Благодаря этой технологии взаимодействие с пользователем было плохим и очень медленным.
Многие системы представляют собой смесь технологий с интерактивным внешним интерфейсом и серверной частью пакетной обработки. Например, банкомат может записывать операции в базу данных в интерактивном режиме по мере их совершения, а пакетная система может выдавать ежемесячные отчеты клиентов. В контексте розничной торговли заказы клиентов могут регистрироваться в интерактивном режиме, а в конце дня пакетная система может подготовить отчет, который позволит продавцам наиболее эффективно забирать товары и упаковывать их для отправки на следующий день. При подготовке этой книги я использую интерактивный редактор для создания текста, содержащего команды LaTeX, который в конечном итоге преобразуется в формат для печати с помощью пакетного процесса.
Инфраструктура самолета может содержать несколько микропроцессоров, каждый из которых предназначен для выполнения специализированной задачи. Один может быть предназначен для навигации, другой — для перемещения руля, третий — для стабилизации полета самолета и так далее. Пилот взаимодействует с системой, в том числе с помощью джойстика. Автомобиль может иметь компьютер управления двигателем, который управляет топливно-воздушной смесью, моментом зажигания и моментом открытия клапана в зависимости от частоты вращения двигателя и т. д. Водитель взаимодействует с системой, управляя дросселем, переключением передач и тормозами.
Причина, по которой существует так много разных инфраструктур, заключается в том, что они нацелены на оптимизацию разных целей: эффективное использование ограниченной полосы пропускания, эффективное использование общего ресурса, эффективное использование технологий хранения, эффективное использование человеческих ресурсов, потребность в надежности или необходимость минимизировать стоимость продукта. Короче говоря, оптимизировать что-то в ущерб простоте. Стоимость оптимизации – это дополнительное программное и аппаратное обеспечение, необходимое для обеспечения связи между различными частями системы. Например, в системе пакетной обработки файлы транзакций необходимы для передачи данных между этапами обработки. Эти файлы, которые могут быть довольно сложными, должны быть определены, их записи различных типов должны быть записаны и прочитаны, а записи должны быть расшифрованы для вызова соответствующих процедур. Подобное коммуникационное программное обеспечение должно быть написано почти для каждого вида инфраструктуры. Грубо говоря, около 90 % усилий по программированию уходит на инфраструктуру и только 10 % — на логику ядра.
В этой книге недостаточно места для подробного рассмотрения всех видов инфраструктуры. На самом деле цель этой книги вовсе не в том, чтобы иметь дело с инфраструктурой. Но его примеры и тематическое исследование должны быть установлены в некотором контексте, поэтому он в основном фокусируется на сервере базы данных с несколькими клиентами. Такая инфраструктура разделяет большинство проблем, присущих многим другим инфраструктурам. Тем не менее, читателю в значительной степени предоставляется возможность увидеть лежащее в основе единство системного синтеза и адаптировать сказанное к собственной специальности читателя.
Поэтому в идеале спецификация системы должна быть независимой от технологии, которую она использует в настоящее время, или от любой технологии, которую она может использовать в будущем. Это освободит системного аналитика от того, какие технологии существуют в настоящее время, и в то же время предоставит максимальную свободу в реализации. Таким образом, системный синтез — это акт объединения спецификации с подходящей технологической инфраструктурой. Синтез — это 10 % вдохновения и 90 % пота.
Спецификация будет состоять из двух частей: описания ее состояния или базы данных и описания событий, которые могут вызвать изменение ее состояния или привести к получению вывода. В идеале в спецификации ядра не должно быть никаких упоминаний об инфраструктуре. Единственный случай, когда спецификатор должен учитывать инфраструктуру, — это проектирование пользовательского интерфейса.
Несмотря на то, что были приложены все усилия для соблюдения правил стиля цитирования, могут быть некоторые расхождения. Если у вас есть какие-либо вопросы, обратитесь к соответствующему руководству по стилю или другим источникам.
Наши редакторы рассмотрят то, что вы отправили, и решат, нужно ли пересматривать статью.
клиент-серверная архитектура, архитектура компьютерной сети, в которой множество клиентов (удаленных процессоров) запрашивают и получают услуги от централизованного сервера (хост-компьютера). Клиентские компьютеры предоставляют интерфейс, позволяющий пользователю компьютера запрашивать услуги сервера и отображать результаты, возвращаемые сервером. Серверы ждут поступления запросов от клиентов и затем отвечают на них. В идеале сервер предоставляет клиентам стандартизированный прозрачный интерфейс, чтобы клиенты не знали о специфике системы (т. е. аппаратного и программного обеспечения), предоставляющей услугу. Клиенты часто располагаются на рабочих станциях или на персональных компьютерах, а серверы — в других местах сети, обычно на более мощных машинах. Эта вычислительная модель особенно эффективна, когда у клиентов и сервера есть отдельные задачи, которые они регулярно выполняют. Например, при обработке больничных данных на клиентском компьютере может быть запущена прикладная программа для ввода информации о пациенте, в то время как на серверном компьютере запущена другая программа, управляющая базой данных, в которой постоянно хранится информация. Многие клиенты могут одновременно получать доступ к информации сервера, и в то же время клиентский компьютер может выполнять другие задачи, такие как отправка электронной почты. Поскольку и клиентский, и серверный компьютеры считаются независимыми устройствами, модель клиент-сервер полностью отличается от старой модели мэйнфрейма, в которой централизованный мэйнфрейм-компьютер выполнял все задачи для связанных с ним «тупых» терминалов, которые просто обменивались данными с центральным мейнфреймом. .
Редакторы Британской энциклопедии Эта статья была недавно отредактирована и обновлена Эриком Грегерсеном.
Клиент-сервер — это отношение между взаимодействующими программами в приложении, состоящее из клиентов, инициирующих запросы на услуги, и серверов, предоставляющих эту функцию или услугу.
Что такое модель клиент-сервер?
Модель клиент-сервер или архитектура клиент-сервер — это распределенная структура приложений, разделяющая задачи между серверами и клиентами, которые либо находятся в одной системе, либо обмениваются данными через компьютерную сеть или Интернет. Клиент полагается на отправку запроса другой программе, чтобы получить доступ к услуге, предоставляемой сервером. Сервер запускает одну или несколько программ, которые совместно используют ресурсы и распределяют работу между клиентами.
Взаимоотношения клиент-сервер взаимодействуют по шаблону обмена сообщениями запрос-ответ и должны соответствовать общему протоколу связи, который формально определяет используемые правила, язык и диалоговые шаблоны. Связь клиент-сервер обычно соответствует набору протоколов TCP/IP.
Протокол TCP поддерживает соединение до тех пор, пока клиент и сервер не завершат обмен сообщениями. Протокол TCP определяет наилучший способ распределения данных приложений в пакеты, которые могут доставляться по сети, передает пакеты в сеть и получает пакеты из сети, а также управляет потоком и повторной передачей отброшенных или искаженных пакетов. IP – это протокол без установления соединения, в котором каждый пакет, проходящий через Интернет, является независимой единицей данных, не связанной с какими-либо другими единицами данных.
Клиентские запросы организованы и расставлены по приоритетам в системе планирования, которая помогает серверам справляться с получением запросов от множества разных клиентов за короткий промежуток времени. Клиент-серверный подход позволяет любому компьютеру общего назначения расширять свои возможности за счет использования общих ресурсов других хостов. К популярным клиент-серверным приложениям относятся электронная почта, Всемирная паутина и сетевая печать.
Категории клиент-серверных вычислений
Существует четыре основных категории клиент-серверных вычислений:
Microsoft MySQL Server — это популярный пример трехуровневой архитектуры, состоящей из трех основных компонентов: уровня протокола, реляционного механизма и механизма хранения. На всех клиентских компьютерах, которые подключаются напрямую к SQL Server, должен быть установлен клиент SQL Server. Клиент-серверный процесс выполнения Microsoft помогает управлять большинством наборов графических инструкций в операционной системе Windows.
Что такое сеть клиент-сервер?
Сеть клиент-сервер — это среда, через которую клиенты получают доступ к ресурсам и службам с центрального компьютера через локальную сеть (LAN) или глобальную сеть (WAN), например Интернет. Уникальный сервер, называемый демоном, может использоваться с единственной целью ожидания клиентских запросов, после чего сетевое соединение инициируется до тех пор, пока клиентский запрос не будет выполнен.
Сетевой трафик подразделяется на "клиент-сервер" (трафик с севера на юг) или "сервер-сервер" (трафик с востока на запад). К популярным сетевым службам относятся электронная почта, обмен файлами, печать и Всемирная паутина. Основным преимуществом сети клиент-сервер является централизованное управление приложениями и данными.
Преимущества клиент-серверных вычислений
Существует множество преимуществ модели архитектуры клиент-сервер:
- Единый сервер, на котором размещены все необходимые данные в одном месте, упрощает защиту данных и управление авторизацией и аутентификацией пользователей.
- Ресурсы, такие как сегменты сети, серверы и компьютеры, могут быть добавлены в сеть клиент-сервер без каких-либо значительных перерывов.
- Для эффективного доступа к данным не требуется, чтобы клиенты и сервер находились в непосредственной близости.
- Все узлы в системе клиент-сервер независимы и запрашивают данные только у сервера, что облегчает обновление, замену и перемещение узлов.
- Данные, передаваемые по протоколам клиент-сервер, не зависят от платформы.
Разница между клиентом и сервером
Клиенты, также называемые запросчиками услуг, представляют собой части компьютерного оборудования или серверного программного обеспечения, которые запрашивают ресурсы и услуги, предоставляемые сервером. Клиентские вычисления классифицируются как толстые, тонкие или гибридные.
- Толстый клиент: клиент с широкими функциональными возможностями, который сам выполняет большую часть обработки данных и очень мало зависит от сервера.
- Тонкий клиент: сервер тонкого клиента – это легкий компьютер, который в значительной степени зависит от ресурсов главного компьютера — сервер приложений выполняет большую часть необходимой обработки данных.
- Гибридный клиент: обладая сочетанием характеристик тонкого клиента и толстого клиента, гибридный клиент полагается на сервер для хранения постоянных данных, но может выполнять локальную обработку.
Сервер – это устройство или компьютерная программа, обеспечивающая функциональность других устройств или программ. Любой компьютеризированный процесс, который может использоваться или вызываться клиентом для совместного использования ресурсов и распределения работы, является сервером. Вот некоторые распространенные примеры серверов:
- Сервер приложений: размещает веб-приложения, которые пользователи в сети могут использовать, не нуждаясь в собственной копии.
- Вычислительный сервер: разделяет огромное количество компьютерных ресурсов с сетевыми компьютерами, которым требуется больше мощности ЦП и ОЗУ, чем обычно доступно для персонального компьютера.
- Сервер базы данных: поддерживает и предоставляет доступ к базам данных для любой компьютерной программы, которая получает хорошо организованные данные, например бухгалтерского программного обеспечения и электронных таблиц.
- Веб-сервер: размещает веб-страницы и обеспечивает существование Всемирной паутины.
Разница между программированием на стороне сервера и программированием на стороне клиента
Программирование на стороне сервера — это программа, которая работает на сервере и предназначена для создания динамического содержимого. Программирование на стороне сервера используется для запросов и взаимодействия с базой данных, доступа к файлам на сервере, взаимодействия с другими серверами, обработки пользовательского ввода и структурирования веб-приложений. К популярным языкам программирования для серверной части относятся C++, Java и JSP, PHP, Python и Ruby on Rails.
Рендеринг на стороне сервера и рендеринг на стороне клиента
Отрисовка на стороне сервера — это способность приложения преобразовывать HTML-файлы на сервере в полностью отображаемую страницу для клиента. Веб-браузер делает запрос информации с сервера, который отвечает, как правило, за миллисекунды, отображая полностью визуализированный HTML-код. Поисковые системы могут индексировать и сканировать контент до того, как он будет доставлен, что делает обработку на стороне сервера очень полезной для поисковой оптимизации.
При обработке клиент-сервер вместо получения всего содержимого из HTML-документа содержимое обрабатывается в браузере с использованием библиотеки JavaScript на стороне клиента. Браузер не делает новый запрос к серверу при загрузке новой страницы. Это может отрицательно сказаться на рейтинге в поисковых системах, поскольку контент не отображается до тех пор, пока страница не будет загружена в браузере, однако обработка веб-сайта обычно происходит быстрее при обработке на стороне клиента.
Клиент-сервер против одноранговой сети
P2P – это децентрализованная модель связи, в которой все узлы в сети имеют одинаковые возможности и могут функционировать как клиент и сервер. Узлы в одноранговых вычислениях коллективно используют свои ресурсы и взаимодействуют друг с другом напрямую по запросу.
Алгоритм в протоколе одноранговой связи балансирует нагрузку, делая другие одноранговые узлы доступными для компенсации любого простоя ресурсов и перенаправляя запросы по мере изменения нагрузки и доступности одноранговых узлов. Основным преимуществом одноранговой сети является возможность расширения сети для управления большим количеством клиентов.
В клиент-серверных вычислениях, модели централизованной связи, сервер является центральным узлом, который взаимодействует с другими клиентскими узлами. Основным преимуществом отношений клиент-сервер по сравнению с одноранговыми отношениями является возможность управления данными и приложениями на одном централизованном сервере.
Сервер — это компьютер или система, которая предоставляет ресурсы, данные, службы или программы другим компьютерам, известным как клиенты, по сети. Теоретически всякий раз, когда компьютеры совместно используют ресурсы с клиентскими машинами, они считаются серверами. Существует множество типов серверов, включая веб-серверы, почтовые серверы и виртуальные серверы.
Отдельная система может предоставлять ресурсы и одновременно использовать их из другой системы. Это означает, что устройство может быть и сервером, и клиентом одновременно.
Некоторые из первых серверов были мейнфреймами или миникомпьютерами. Миникомпьютеры были намного меньше мейнфреймов, отсюда и название. Однако по мере развития технологий они стали намного крупнее настольных компьютеров, что сделало термин «микрокомпьютер» несколько абсурдным.
Изначально такие серверы были подключены к клиентам, известным как терминалы, которые не выполняли никаких реальных вычислений. Эти терминалы, называемые «тупыми терминалами», существовали просто для того, чтобы принимать ввод с клавиатуры или устройства чтения карт и возвращать результаты любых вычислений на экран дисплея или принтер. Фактические вычисления выполнялись на сервере.
Позже серверы часто представляли собой отдельные мощные компьютеры, подключенные по сети к набору менее мощных клиентских компьютеров. Эту сетевую архитектуру часто называют моделью клиент-сервер, в которой и клиентский компьютер, и сервер обладают вычислительной мощностью, но некоторые задачи делегируются серверам. В предыдущих вычислительных моделях, таких как модель мэйнфрейм-терминал, мейнфрейм действовал как сервер, даже если он не назывался этим именем.
По мере развития технологий менялось и определение сервера. В наши дни сервер может быть не чем иным, как программным обеспечением, работающим на одном или нескольких физических вычислительных устройствах.Такие серверы часто называют виртуальными серверами. Первоначально виртуальные серверы использовались для увеличения количества серверных функций, которые мог выполнять один аппаратный сервер. Сегодня виртуальные серверы часто управляются третьей стороной на оборудовании через Интернет, что называется облачными вычислениями.
Сервер может быть предназначен для выполнения одной задачи, например, почтовый сервер, который принимает и хранит электронную почту, а затем предоставляет ее запрашивающему клиенту. Серверы также могут выполнять несколько задач, таких как файловый сервер и сервер печати, которые одновременно хранят файлы и принимают задания на печать от клиентов, а затем отправляют их на сетевой принтер.
Как работает сервер
Для работы в качестве сервера устройство должно быть настроено на прослушивание запросов от клиентов по сетевому подключению. Эта функция может существовать как часть операционной системы в виде установленного приложения, роли или их сочетания.
Например, операционная система Microsoft Windows Server предоставляет функции прослушивания клиентских запросов и ответа на них. Дополнительно установленные роли или службы увеличивают количество типов клиентских запросов, на которые может отвечать сервер. В другом примере веб-сервер Apache отвечает на запросы интернет-браузера через дополнительное приложение Apache, установленное поверх операционной системы.
Когда клиенту требуются данные или функции с сервера, он отправляет запрос по сети. Сервер получает этот запрос и отвечает соответствующей информацией. Это модель запроса и ответа в сети клиент-сервер, также известная как модель вызова и ответа.
Сервер часто выполняет множество дополнительных задач в рамках одного запроса и ответа, включая проверку личности отправителя запроса, проверку наличия у клиента разрешения на доступ к запрошенным данным или ресурсам, а также правильное форматирование или возврат требуемого ответа. ожидаемым образом.
Типы серверов
Существует множество типов серверов, выполняющих разные функции. Многие сети содержат один или несколько распространенных типов серверов:
Файловые серверы
Файловые серверы хранят и распространяют файлы. Несколько клиентов или пользователей могут совместно использовать файлы, хранящиеся на сервере. Кроме того, централизованное хранение файлов предлагает более простые решения для резервного копирования или отказоустойчивости, чем попытки обеспечить безопасность и целостность файлов на каждом устройстве в организации. Аппаратное обеспечение файлового сервера может быть спроектировано так, чтобы максимизировать скорость чтения и записи для повышения производительности.
Серверы печати
Серверы печати позволяют управлять функциями печати и распределять их. Вместо того, чтобы подключать принтер к каждой рабочей станции, один сервер печати может отвечать на запросы печати от множества клиентов. Сегодня некоторые более крупные и высокопроизводительные принтеры поставляются со встроенным сервером печати, что устраняет необходимость в дополнительном сервере печати на базе компьютера. Этот внутренний сервер печати также функционирует, отвечая на запросы печати от клиента.
Серверы приложений
Серверы приложений запускают приложения вместо клиентских компьютеров, выполняющих приложения локально. Серверы приложений часто запускают ресурсоемкие приложения, совместно используемые большим количеством пользователей. Это избавляет каждого клиента от необходимости иметь достаточно ресурсов для запуска приложений. Это также избавляет от необходимости устанавливать и поддерживать программное обеспечение на многих компьютерах, а не только на одном.
DNS-серверы
Серверы системы доменных имен (DNS) — это серверы приложений, которые обеспечивают разрешение имен для клиентских компьютеров путем преобразования имен, понятных людям, в машиночитаемые IP-адреса. Система DNS представляет собой широко распространенную базу данных имен и других DNS-серверов, каждый из которых может использоваться для запроса неизвестного имени компьютера. Когда клиенту нужен адрес системы, он отправляет DNS-запрос с именем нужного ресурса на DNS-сервер. DNS-сервер отвечает необходимым IP-адресом из своей таблицы имен.
Почтовые серверы
Почтовые серверы — очень распространенный тип серверов приложений. Почтовые серверы получают электронные письма, отправленные пользователю, и хранят их до тех пор, пока клиент не запросит их от имени указанного пользователя. Наличие почтового сервера позволяет правильно настроить одну машину и постоянно подключать ее к сети. После этого он готов отправлять и получать сообщения, а не требует, чтобы на каждом клиентском компьютере постоянно работала собственная подсистема электронной почты.
Веб-серверы
Одним из самых распространенных типов серверов на современном рынке является веб-сервер. Веб-сервер — это особый тип сервера приложений, на котором размещаются программы и данные, запрашиваемые пользователями через Интернет или интрасеть. Веб-серверы отвечают на запросы от браузеров, запущенных на клиентских компьютерах, для веб-страниц или других веб-служб. Общие веб-серверы включают веб-серверы Apache, серверы Microsoft Internet Information Services (IIS) и серверы Nginx.
Серверы баз данных
Объем данных, используемых компаниями, пользователями и другими службами, ошеломляет. Большая часть этих данных хранится в базах данных. Базы данных должны быть доступны нескольким клиентам в любой момент времени, и для этого может потребоваться огромное количество дискового пространства. Обе эти потребности хорошо подходят для размещения таких баз данных на серверах. Серверы баз данных запускают приложения баз данных и отвечают на многочисленные запросы клиентов. Общие приложения сервера баз данных включают Oracle, Microsoft SQL Server, DB2 и Informix.
Виртуальные серверы
Виртуальные серверы штурмом захватывают мир серверов. В отличие от традиционных серверов, которые устанавливаются как операционная система на машинном оборудовании, виртуальные серверы существуют только в рамках специализированного программного обеспечения, называемого гипервизором. Каждый гипервизор может одновременно запускать сотни или даже тысячи виртуальных серверов. Гипервизор представляет серверу виртуальное оборудование, как если бы это было реальное физическое оборудование. Виртуальный сервер, как обычно, использует виртуальное оборудование, а гипервизор передает фактические потребности в вычислениях и хранении на реальное оборудование под ним, которое совместно используется всеми другими виртуальными серверами.
Прокси-серверы
Прокси-сервер действует как посредник между клиентом и сервером. Часто используемый для изоляции клиентов или серверов в целях безопасности, прокси-сервер принимает запрос от клиента. Вместо ответа клиенту он передает запрос другому серверу или процессу. Прокси-сервер получает ответ от второго сервера, а затем отвечает исходному клиенту, как если бы он отвечал сам. Таким образом, ни клиенту, ни отвечающему серверу не нужно напрямую подключаться друг к другу.
Серверы мониторинга и управления
Некоторые серверы предназначены для мониторинга или управления другими системами и клиентами. Существует множество типов серверов мониторинга. Некоторые из них прослушивают сеть и получают каждый клиентский запрос и ответ сервера, но некоторые сами не запрашивают данные и не отвечают на них. Таким образом, сервер мониторинга может отслеживать весь сетевой трафик, а также запросы и ответы клиентов и серверов, не мешая этим операциям. Сервер мониторинга будет отвечать на запросы от клиентов мониторинга, таких как те, которыми управляют сетевые администраторы, следящие за состоянием сети.
Структуры серверов
Концепция серверов так же стара, как и сама сеть. В конце концов, смысл сети в том, чтобы позволить одному компьютеру общаться с другим компьютером и распределять либо работу, либо ресурсы. С тех пор вычислительная техника развивалась, что привело к появлению нескольких типов серверных структур и аппаратного обеспечения.
Мейнфрейм или миникомпьютер (AS/400)
Можно сказать, что первоначальные серверы, мейнфреймы, а позже и миникомпьютеры решали почти все вычислительные задачи, кроме взаимодействия с пользователем через экран и клавиатуру, которые предоставлялись клиентской системе.
Сервер компьютерного оборудования
Следующая крупная волна серверов включала компьютерные серверы. Во многих отношениях эти серверы были не чем иным, как более крупными и мощными настольными компьютерами. Такие серверы, как правило, были более дорогими и занимали гораздо больше памяти и дискового пространства, чем большинство клиентских компьютеров. Каждый сервер по-прежнему был автономным блоком со своей материнской платой, процессором, памятью, дисководами и блоком питания. Подобные серверы часто хранились в кондиционированных помещениях, называемых серверными, а позже были закреплены в стойках для лучшего хранения и доступности.
Блейд-серверы
Исходное компьютерное серверное оборудование было большим и хранилось в стеллажах, которые могли вместить сотни фунтов. Однако со временем более быстрые средства подключения оборудования привели к тому, что части сервера были извлечены из одного автономного устройства. Благодаря удалению жестких дисков, устранению внутреннего охлаждения и продолжающейся миниатюризации вычислительных частей серверы в конечном итоге были уменьшены до одного тонкого сервера, известного как блейд-сервер. Хотя блейд-серверы по-прежнему хранятся в стойках в серверных, они меньше по размеру и их легче заменить.
Объединение серверов
Даже до виртуализации серверы извлекались из стандартной модели операционной системы с одним сервером, установленной на аппаратном компьютере. Такие технологии, как сетевое хранилище, избавили сервер от необходимости иметь собственное хранилище. Другие технологии, такие как зеркалирование и кластеризация, позволяли объединять части оборудования в более крупные и мощные серверы. Такой сервер может состоять из нескольких блейд-модулей, нескольких подключенных устройств хранения данных и внешнего источника питания, и каждую часть можно заменить на другую во время работы сервера.
Виртуальные серверы
Для виртуальных серверов по-прежнему требуется аппаратное обеспечение, но на этом оборудовании теперь работает другой процесс, известный как гипервизор. В некоторых случаях, таких как Microsoft Hyper-V, полная операционная система продолжает работать на самом оборудовании. В других случаях так называемые «голые» гипервизоры могут быть установлены непосредственно на серверное оборудование. В обоих случаях само оборудование часто распределено по массиву блейд-серверов, сетевых хранилищ и блоков питания, что приводит к среде, в которой невозможно сказать, где заканчивается один отдельный сервер и начинается другой.
Читайте также: