Cтраница 1
Серверные приложения, которые вы строили до сих пор, были основаны только на работе с текстом. Конечно же, можно легко добавить ссылку на существующие графические файлы. Типичным примером является счетчик обращений к странице. Для написания веб-счетчика текущее значение обращений сохраняется в файл, а затем при каждом очередном обращении это значение считывается и увеличивается на единицу программой счетчика. [1]
Эти классы используются в серверных приложениях. Документы сервера могут являться контейнерами, которые поддерживают связывание. [2]
При изменении данных в серверном приложении управляющий элемент OLE 2.0 не обновляется. [3]
Компонент SimpleObjectBroker обеспечивает простой способ обнаружения серверного приложения среди нескольких серверных компьютеров. Вы передаете этому компоненту перечень доступных компьютеров, и клиент пытается установить связь с каждым из них по порядку до тех пор, пока не будет установлено соединение. [4]
Для демонстрации того, насколько легко создать многофункциональное серверное приложение на основе Delphi я построил пример BrokDemo. Этот пример создан на основе технологии Web App Debugger, но он относительно прост для перекомпилирования его в качестве CGI-приложения или библиотеки веб-сервера. [5]
Скорость обработки транзакций напрямую зависит от числа запущенных серверных приложений. Чем больше приложений одновременно обслуживают запросы, тем выше пропускная способность вычислительной системы. Это увеличение наиболее заметно на многопроцессорных системах, где каждое приложение может работать на отдельном процессоре. В идеале для эффективного использования системных ресурсов нужно по мере необходимости увеличивать или уменьшать число серверных приложений в зависимости от числа обрабатываемых запросов. Для решения этой задачи мониторы транзакций периодически измеряют отношение числа запросов в очереди к числу работающих серверных приложений. Если это отношение превышает некоторое максимальное пороговое значение ( maximum watermark), то запускается дополнительная копия серверного приложения. Если это отношение падает ниже минимального порогового значения ( minimum watermark), то одна из копий завершается. [6]
Скорость обработки транзакций напрямую зависит от числа запущенных серверных приложений. Чем больше приложений одновременно обслуживает запросы, тем выше пропускная способность вычислительной системы. Это увеличение наиболее заметно на многопроцессорных системах, где каждое приложение может работать на отдельном процессоре. В идеале для эффективного использования системных ресурсов нужно по мере необходимости увеличивать или уменьшать число серверных приложений в зависимости от числа обрабатываемых запросов. Для решения этой задачи мониторы транзакций периодически измеряют отношение числа запросов в очереди к числу работающих серверных приложений. Если это отношение превышает некоторое максимальное пороговое значение ( maximum watermark), то запускается дополнительная копия серверного приложения. Если это отношение падает ниже минимального порогового значения ( minimum watermark), то одна из копий завершается. [7]
Несмотря на то что данное приложение сильно напоминает другие клиентские и серверные приложения DataSnap, разработанные в главе 16, все же у рассматриваемой здесь программы есть одно очень существенное отличие: для взаимодействия с использованием интерфейса lAppServerSOAP программы SoapDataServer и SoapDataClient, основанные на SOAP, не используют СОМ. Напротив, соединения DataSnap, основанные на сокетах и HTTP, функционируют с использованием локальных СОМ-объектов и регистрации сервера в реестре Windows. Поддержка SOAP, встроенная в Delphi, позволяет реализовать решение, совершенно не зависимое от СОМ. [8]
Произвольная маршрутизация используется, как правило, для выравнивания нагрузки нескольких серверных приложений, реализующих одни и те же сервисы. В этом случае запрос посылается случайно выбранному серверному приложению, обеспечивая равномерное распределение нагрузки. Произвольная маршрутизация лучше всего подходит для быстрой обработки большого числа запросов. [9]
Максимальная нагрузка, с которой способен справляться сервис, связана с числом серверных приложений, запущенных для его поддержки. Увеличение их числа, если это позволяют размеры памяти и вычислительная мощность сервера, увеличивает максимальную нагрузку. В идеале для эффективного использования системных ресурсов нужно постоянно увеличивать или уменьшать число серверных приложений в зависимости от числа запросов пользовательских приложений. При его выполнении периодически измеряется отношение числа запросов в очереди к числу работающих серверных приложений. Если это отношение превышает определенное пороговое значение ( maximum watermark), то запускается дополнительное приложение. Если это отношение падает ниже минимального порогового значения ( minimum watermark), то одно из приложений завершается. Автоматическая оптимизация пропускной способности может быть использована совместно с любым алгоритмом маршрутизации TOP END. При этом алгоритмы маршрутизации применяются для распределения нагрузки по нескольким серверам, а АТО изменяет число приложений, выполняющихся на них. [10]
Итак, запрос на выполнение команды адаптера выглядит как обычный запрос ресурса серверного приложения. В рамках традиционной модели в ответ на такой запрос приложение должно предоставить некий контент, но многие стандартные команды адаптеров не генерируют содержательных HTTP-ответов после выполнения команды. [11]
Наиболее интересные возможности компьютерной телефонии открываются при создании центра телефонного обслуживания, представляющего собой серверное приложение, позволяющее с использованием АОН сопоставить телефонный номер вызывающего абонента с имеющейся о нем информацией в базе данных системы и найденные там сведения вывести на экран монитора, избавляя абонента от необходимости задавать лишние вопросы клиенту. [12]
Указатель URL состоит из названия протокола, имени сервера, имени сценария или серверного приложения с указанием полного пути и параметров запроса, передаваемого на Web-сервер. [13]
Серверная часть включает в себя: драйверы базы данных, которые обеспечивают взаимодействие серверных приложений АС с SQL-сервером, серверные приложения, обслуживающие запросы клиентских модулей на получение информации от SQL-сервера и обеспечивающие проверку корректности информации, которая вносится в базу данных, модуль ведения системы классификаторов, модуль администрирования и ведения системного журнала. [14]
Ее можно использовать для создания серверного объекта ( и, возможно, для запуска серверного приложения) на том же компьютере. Как можно заметить, данная функция является ярлыком для вызова CreateComObject, который позволяет создавать экземпляр СОМ-объекта, если вы знаете его GUID. В качестве альтернативы можно воспользоваться функцией CreateOleObject, которая в качестве параметра требует ProgID, являющийся зарегистрированным именем сервера. [15]