Насколько «тонок» клиент?
В последнее время от пользователей систем электронного архива и документооборота довольно часто приходится слышать требования, касающиеся обеспечения работы с использованием «тонкого клиента». При этом далеко не все выдвигающие подобное требование ясно представляют себе, что же такое «тонкий клиент» и чем работа с его применением отличается от работы через web-интерфейс (для многих это одно и то же). Мы постараемся расставить точки над «i» в вопросах терминологии и функциональных возможностей «тонкого клиента» относительно его использования в упомянутых системах.
Начнем с определения. Термин «тонкий клиент» возник сравнительно недавно и поначалу относился, скорее, к области компьютерного жаргона. Искать его трактовку в толковых словарях — дело заведомо безнадежное, хотя термин применяется все чаще и чаще. Не претендуя даже на малую толику лексикографических заслуг Ожегова, попытаемся сами объяснить понятие «тонкого клиента».
Надеемся, нашим читателям знакома следующая особенность построения баз данных архитектуры «клиент-сервер» и трехзвенной архитектуры: в идеале все процессы выполняются на сервере посредством отработки хранимых процедур сервера. Обращение к серверу СУБД в архитектуре «клиент-сервер» реализуется через интерфейс клиентского места, а в случае трехзвенной архитектуры осуществляется обращение с клиентского места к серверу приложений, который, в свою очередь, обращается к СУБД. При этом сервер СУБД и сервер приложений физически располагаются на мощных аппаратных средствах, отличных от клиентских рабочих станций, что позволяет обрабатывать большое число запросов и управлять большими объемами информации БД без нагрузки на рабочие станции.
В различных источниках приводятся разные определения «тонкого клиента», причем иногда они довольно противоречивы даже в рамках одного и того же источника:
1. В компьютерных технологиях «тонкий клиент» (thin client) — это «компьютер-клиент сети с архитектурой “клиент-сервер”, который переносит большинство задач по обработке информации на сервер» [1].
2. В том же источнике, только в его англоязычной версии приводится следующее определение: «A thin client is a computer (client) in client-server architecture networks which has little or no application logic, so it has to depend primarily on the central server for processing activities. The word “thin” refers to the small boot image which such clients typically require — perhaps no more than required to connect to a network and start up a dedicated web browser or “Remote Desktop” connection such as X11, Citrix ICA or Microsoft RDP. In contrast, a thick or fat client does as much processing as possible and passes only data required for communications and archival storage to the server» [2]. Здесь уже указываются конкретные службы и средства доступа: web-браузер и/или подключение к удаленному рабочему столу посредством клиента терминальных сервисов.
3. «Тонкий клиент» — это «такая многопользовательская серверная модель, в которой 100% приложений выполняются на сервере» [3].
Можно привести и множество других определений, но все они либо дополняют, либо взаимоисключают друг друга.
Давайте предпримем небольшой экскурс в историю. В старые добрые времена мэйнфреймов доступ к многопользовательской среде осуществлялся через локальные и удаленные терминалы. Именно этим устройствам суждено было стать прообразом решений, объединенных сегодня термином «тонкий клиент». Итак, это решения, имеющие в своем составе устройства ввода (клавиатура, мышь, считыватель смарт- и флэш-карт и т.д.), устройства вывода (монитор, принтер, колонки и т.д.) и средства подключения к серверу (адаптер сети Ethernet, адаптер последовательной линии связи или модем). В качестве примера можно привести «тонкие клиенты» фирмы AK systems. Именно поэтому третье из приведенных определений является абсолютно обоснованным. Правда, сегодня понятие «тонкого клиента» этим определением не исчерпывается, поэтому нам больше импонирует определение, данное в Free On-Line Dictionary of Computing: «A simple client program or hardware device which relies on most of the function of the system being in the server» [4]. То есть в качестве «тонкого клиента» может выступать и полноценная рабочая станция, имеющая в своем составе ПО, имитирующее режим «тонкого клиента». С развитием web-технологий стандартом де-факто для доступа к web-узлам (серверам) стало использование web-браузера. Это и породило отождествление понятий «web-браузер» и «тонкий клиент»…
Антиподом «тонкого» является «толстый» клиент, в определениях которого противоречия встречаются реже. Приведем одно из них: «“Толстый клиент” производит обработку информации независимо от сервера, используя последний в основном лишь для хранения данных» [1].
Не станем дальше цитировать определения и заниматься поиском противоречий, а поговорим лишь о «толщине» «тонкого клиента» — степени распределения нагрузки по обработке информации между клиентским приложением и сервером СУБД (в двухзвенной архитектуре) или между клиентским приложением, сервером приложений и сервером СУБД (в трехзвенной архитектуре). Все изложение будет строиться на практике работы с системами электронного архива и документооборота.
Большинство пользователей систем электронного архива и документооборота желают получить возможность доступа к системе с любого компьютера и по любым каналам (при этом не должна возникать необходимость в дополнительных клиентских приложениях или каких-либо специфических настройках на удаленных рабочих станциях). Многие пользователи хотели бы иметь доступ с удаленной рабочей станции к полному функционалу системы электронного архива и документооборота. Иногда к этому добавляется просьба обеспечить доступ к такой системе, не зависимый от операционных систем удаленных рабочих станций. Причем, как правило, речь идет о доступе через «тонкого клиента».
Обобщив все пожелания, можно сделать следующий вывод: в идеале для реализации «тонкого клиента» должно существовать клиентское приложение, не требующее дополнительных инсталляций в операционных системах рабочих станций и позволяющее любому пользователю, имеющему необходимый сетевой доступ и параметры идентификации, получить доступ к полному функционалу системы электронного архива и документооборота независимо от операционной системы рабочей станции, сервера и используемой СУБД.
Что касается практического воплощения этих пожеланий, то здесь многое зависит от конкретики решаемых задач. Теоретически реализация такого суммарного функционала сродни понятию математического предела: стремимся, но никогда не достигнем в идеале (это касается и всех возможных задач при работе с БД, в частности — задач при работе с БД систем электронного архива и документооборота).
Если система построена в архитектуре «клиент-сервер», то, на наш взгляд, нет возможности четко разграничить системы, использующие «тонкого клиента», в которых основная часть обработки информации возложена на сервер, и системы с «толстым клиентом», где сервер применяется в основном для хранения данных. Прежде всего это связано с тем, что сам принцип работы системы «клиент-сервер» как двухзвенной, так и трехзвенной архитектуры подразумевает, что основная часть информации обрабатывается на сервере. Кроме того, невозможность провести указанную грань связана с отсутствием внятно сформулированных критериев. Например, вряд ли кем-нибудь определено, в каких единицах измеряется и какой процент должна составлять «основная часть обработки информации», возложенная на сервер. Численно не определены и критерии эксплуатации сервера при его использовании «в основном для хранения данных». Полагаем, что применительно к современным системам, использующим архитектуру «клиент-сервер», следует говорить о «толщине» клиента, то есть о степени участия клиентских рабочих мест в процессе обработки информации, о нагрузке на них, о применении их ресурсов и доле сервера и сервера приложений в процессах, происходящих во всей системе.
Позволим себе прокомментировать одно из устоявшихся мнений. Считая понятия web-доступа и «тонкого клиента» абсолютно идентичными, большинство нынешних да и потенциальных пользователей систем электронного архива и документооборота уверено, что «тонкий клиент» непременно должен реализовываться через web-браузер. Полагаем, что в случае систем электронного архива и документооборота такое мнение не всегда корректно.
Понятно, почему web-браузер является, на первый взгляд, оптимальным клиентским приложением для реализации «тонкого клиента». Это неотъемлемая часть большинства современных операционных систем, не требующая дополнительной инсталляции, HTML-страницы одинаково отображаются в различных операционных системах и могут передаваться по любым каналам связи. Работа через браузер удобна и привычна для большинства пользователей. Общая схема работы системы электронного архива и документооборота с использованием web-доступа показана на рис. 1. Подобная схема применима и к трехзвенной архитектуре (в этом случае промежуточным звеном между сервером СУБД и клиентскими рабочими станциями является сервер приложений). Схема работает следующим образом:
• запрос с клиентской рабочей станции, формируемый через интерфейс клиентского рабочего места (в случае web-доступа — через web-браузер), поступает на сервер приложений (или, в случае web-доступа, — на web-сервер);
• сервер приложений (в случае web-доступа — web-сервер) производит обработку запроса, при необходимости решает прикладные задачи и передает запрос серверу СУБД. Примером прикладной задачи, решаемой сервером системы web-доступа к системе электронного архива и документооборота TDMS (www.tdms.ru), является формирование и передача СУБД запросов для маршрутизации документов между пользователями в процессе разработки (обработки);
• СУБД отрабатывает запрос и возвращает результат серверу приложений, который отправляет его клиенту в понятном тому виде. В случае же web-доступа web-сервер должен дополнительно представить результаты в виде страниц, «понятных» web-браузеру, — например, используя технологию ASP или PHP.
При отработке запроса применяются специальные средства клиент-серверных СУБД (Oracle, Microsoft SQL Server, Interbase и др.) — хранимые процедуры и триггеры, реализованные на специализированных расширениях языка запросов (SQL) и являющиеся неотъемлемой частью СУБД (для Oracle — PL/SQL, для Microsoft SQL Server — Transact SQL). Как правило, хранимые процедуры представляют собой специальные блоки программного кода, теоретически позволяющие производить на сервере любую обработку данных. Команду на запуск той или иной хранимой процедуры СУБД получает от сервера приложений.
Повторим, что в случае «ресурсоемких» систем с интенсивным доступом целесообразно уменьшить нагрузку на сервер СУБД и выполнять с использованием хранимых процедур далеко не весь объем обработки. В трехзвенной архитектуре часть обработки производится сервером приложений.
Помимо команды на запуск той или иной хранимой процедуры, на сервер СУБД передаются все необходимые параметры, вводимые через пользовательский интерфейс клиентской рабочей станции или формируемые сервером приложений.
За целостность базы отвечает специальный вид хранимых процедур — триггеры. В отличие от явно вызываемых хранимых процедур, они автоматически отрабатываются при добавлении, удалении, обновлении информации в таблицах СУБД, реализуя необходимую логику работы системы электронного архива и документооборота.
Приведем примеры задач, которые могут быть с успехом реализованы посредством триггеров и хранимых процедур сервера СУБД. При изменении наименования заказчика-потребителя проектной документации автоформируемые номера и наименования томов, комплектов и документов в завершенных проектах, включающие код и название заказчика, остаются прежними, а в некоторой части разрабатываемых проектов номера и наименования автоматически изменяются, порой по достаточно непростой логике.
Другой пример: при попытке внести изменения в атрибутивную информацию документа, принадлежащего завершенному проекту (тому, комплекту), автоматически проверяется, соблюдена ли бизнес-логика (имеется ли разрешение на ревизию или извещение об изменении).
Схема работы системы с использованием двухзвенной архитектуры «клиент-сервер» отличается от приведенной на рис. 1 отсутствием сервера приложений. Считаем, что иллюстрировать ее отдельно не стоит. В случае двухзвенной архитектуры «клиент-сервер» запрос к серверу СУБД, формируемый через интерфейс клиентских мест, поступает напрямую. При этом так же, как и в трехзвенной архитектуре, запускаются и отрабатываются обработчики сервера СУБД — триггеры и хранимые процедуры.
Рис. 1. Общая схема работы системы электронного архива и документооборота с использованием web-доступа
При интенсивном применении информационной системы использование сервера приложений снимает нагрузку с сервера СУБД, что положительно влияет на быстродействие и качество всей системы. В ряде случаев целесообразно применение нескольких серверов приложений. Однако отсутствие элементарной информации о назначении и принципе работы серверов приложений в совокупности с рекламными акциями компаний-производителей ПО приводит к тому, что клиенты иногда отказываются рассматривать любое решение, не поддерживающее трехзвенную архитектуру, даже для одного-двух десятков рабочих станций с достаточно низкой интенсивностью доступа к базе данных.
Несомненно, целесообразность применения трехзвенной архитектуры определяется количеством одновременно работающих клиентов, интенсивностью их доступа, «размером» базы данных, возможностями используемой СУБД и, конечно же, решаемыми задачами, определяющими степень применения ресурсов сервера. Четких количественных критериев здесь не существует. Например, при оптимальной конфигурации системы, достаточных ресурсах сервера и использовании СУБД Oracle полнофункциональные рабочие места системы электронного архива и документооборота устойчиво работают на 300-600 полнофункциональных рабочих станциях. При этом таблицы СУБД могут содержать миллионы записей, а архитектура системы — быть двухзвенной без использования серверов приложений.
Если появилась необходимость решить для большого количества пользователей специфические и более узкие задачи (например, обеспечить доступ в систему электронного архива только на просмотр), целесообразно для той же базы данных применять сервер приложений или web-доступ, речь о котором пойдет ниже.
Надеемся, что все вышесказанное поможет сделать правильный выбор и сэкономить средства.
Клиент в Википедии
В древности разорившиеся граждане часто переходили в зависимость от богатых людей — патронов, что подразумевало получение некоторых материальных благ (земельный надел) в основном за счет потери политической самостоятельности и выполнения разных повинностей, прежде всего военной. Признаком клиента являлось принятие родового имени патрона. Отношения клиент-патрон имели обоюдный характер. В дальнейшем социальная зависимость патрон-клиент стала использоваться для целых общин и провинций (клиентура).
Термин клиент в наше время стал многозначен. Если значение клиента подразумевает человека, то для определения клиента важно знать распределение ролей в отношениях, возникших между людьми. Слово клиент Википедия определяет следующим образом:
Клиент (от лат. cliens, множ. clientes) — в Древнем Риме свободный гражданин, отдавшийся под покровительство патрона и находящийся от него в зависимости.
Клиент это общее название субъекта, использующего некоторые услуги. ВикипедиЯ
Второй смысл клиент получает позднее и сегодня он означает потребителя (субъект) услуги от кого-то, под кем подразумевается их производитель (источник услуг в смысле патрон).
В сфере отношений людей можно использовать следующее описание клиента:
Клиент это физическое или юридическое лицо, пользующееся услугами другого физического или юридического лица, вступающее с ним в деловые отношения. Одно и то же юридическое или физическое лицо в одном отношении может быть клиентом, а в другом — субъектом предпринимательской деятельности, обслуживающим клиента. Часто используют синоним к слову клиент: потребитель, заказчик, покупатель, доверитель, контрагент, пациент, жертва.
Обратная сторона клиента (предоставляющая услуги) может называться по-разному в зависимости от области применения: в торговле – продавец, посредник, в программировании – сервер и т.д.
Роль клиента — пользователь услуг компании, фирмы, учреждения, постоянный покупатель или заказчик.
В бытовом плане определение клиент имеет много схожего с понятием потребитель. Отличие клиента от потребителя и другие признаки клиента можно узнать из статьи КЛИЕНТ ИЛИ ПОТРЕБИТЕЛЬ.
Разница между Canon EOS 50D и EOS 60D
Сладкий и кислый. Несмотря на то, что существует множество других классификаций масла, например, относительно его молекулярной массы (легкая и тяжелая сырая нефть), две классификации обычно смешиваются друг с другом. Это сладкие и кислые сырые масла. Прежде всего, лучше всего определить, что такое сырая нефть. Это масло
Кому это нужно?
Тому бизнесу, который использует IT для стандартизированных нересурсоемких задач, также возможна установка тонких клиентов для отдельных департаментов компаний (бухгалтерий, колл-центров, менеджеров), операционная деятельность которых не требует расширенного объема ресурсов персонального компьютера. В таких случаях установка тонких клиентов – прямой путь к экономии на содержании IT-инфраструктуры. Вам не нужно закупать тонны оборудования, нанимать нескольких сисадминов и постоянно поддерживать работоспособность каждого отдельного компьютера. Даже если тонкий клиент поломается, это не приведет к потере важных данных или простою в работе – вся информация хранится на сервере, и только от его состояния зависит работоспособность системы.
- Закупить новые компьютеры для офиса. Но не забывайте, что через несколько лет они устареют, а по дороге будут выходить из строя, ломаться и подводить весь бизнес.
- Купить тонкие клиенты. Здесь все просто – устанавливаете миниатюрные устройства и пользуетесь новыми возможностями технического прогресса. При этом не забываете о том, что сервер также время от времени требует расширения ресурса либо модернизации.
- Превратить устаревшие стационарные компьютеры в тонких клиентов.Да, можно и так. Покупаем или арендуем мощный сервер и настраиваем загрузку по сети с него. Это оптимальный вариант для тех, кто не готов полностью менять привычную инфраструктуру.
Уже сейчас понятно, что стационарные компьютеры – это вчерашний день, день же сегодняшний – за тонкими клиентами и основной вычислительной мощностью в облаке. И если вы хотите использовать IT на максимум, задумайтесь над концепцией инфраструктуры своего офиса. Модные тренды не всегда оказываются пустышками, часто они – лучшие из существующих вариантов.
Как пользоваться клиент-банком (инструкция, порядок работы в системе)?
Итак, как же работать в программе клиент-банк? Работа в системе клиент-банк происходит с применением компьютера, подключенного (или имеющего доступ) к интернету. Для работы в системе интернет-банк на ПК устанавливают браузер (обычно Internet Explorer), который настраивают согласно инструкции банка-поставщика, и программу-шифрователь данных (КриптоПро или другую). В браузере запускают страницу банка, с которой и происходит доступ к данным расчетного счета. Также для доступа необходимы персональные логин и пароль и электронный USB-ключ eToken, выдаваемые банком при регистрации. eToken — это защищенный носитель информации, внешне похожий на USB-флеш-карту.
О том, как избежать ошибок в платежных поручениях, читайте в статье «Проверьте настройки «Клиент-банка»».
Основные плюсы системы «Клиент-банк»
Система имеет ряд преимуществ, которые нельзя оставить без внимания. К основным из них можно отнести:
- Простота использования.
- Программа не требует специальных навыков и умений.
- Дистанционное управление. Для того чтобы пользоваться системой, не нужно посещать банк лично.
- Постоянный финансовый контроль, который доступен в режиме онлайн.
- Возможность создания шаблонов платежей.
- Постоянный доступ к валютным котировкам.
- Электронный документооборот, который позволяет снизить затраты времени.
- Документы хранятся в единой электронной базе, поэтому не требуют нотариального подтверждения. У каждого клиента есть электронная подпись.
- Режим работы – круглосуточно, что позволяет контролировать свои расходы из любой точки мира.
- Надежная защита всех операций. Каждое действие с денежными средствами требует подтверждения с помощью индивидуального одноразового пароля, который высылается текстовым сообщением на привязанный к счету номер телефона.