Войти
 
 
   
 
  
Новости Notes.ру Библиотека Биржа труда Вопрос - ответ Форум Регистрация Поиск О проекте
Разделы
О Notes
Советы
Шаблоны и примеры
Литература
Презентации
 
Всё о задаче AdminP. Часть вторая   Во второй части мы завершаем рассмотрение AdminP. В ней рассмотрены запросы междоменного администрирования и способы управления функциями AdminP с помощью настроек документа сервера, команд консоли сервера, файла Notes.ini и интервалов очистки базы данных. В этой статье предполагается, что вы опытный администратор Domino и прочитали первую часть
О Notes Читать статью
 
Всё о задаче AdminP. Proxy-действия в R5 и Domino 6   Приложение к статье об административном процессе
О Notes Читать статью
 
Всё о задаче AdminP. Часть первая   Перевод классической статьи 2003-его года о задаче административного процесса (AdminP). Очень полезна для понимания работы механизма этой задачи. В первой части статьи описаны компоненты задачи AdminP, как они работают, и как их использование помогает сделать работу администратора Domino проще. Задача AdminP (сакращённо от Administration Process, Административный процесс) работает с базой административных запросов (Administration Requests, admin4.nsf)
О Notes Читать статью
 


О Notes

Главная   Библиотека   О Notes

Повышение производительности приложений Lotus Notes/Domino. Окончание

Вторая часть статьи, посвященной вопросам повышения производительности приложений для Lotus Notes/Domino
Начало >>>
    Тест 5. Открытие документа из коллекции в окне Lotus Notes для изменения и запись этого документа в БД (FrontEnd методами)



    Результаты этого теста фактически аналогичны результатам теста 4. Однако их сравнительное изучение показывает одну интересную особенность – фактически, все расходы времени при открытии, обработке, сохранении и закрытии документа во FrontEnd приходятся именно на процедуру открытия документа. Так, в БД объемом 447 Мбайт на открытие, изменение, запись и закрытие документа требуется лишь на 1,9% больше времени, чем просто на открытие документа. А в БД объемом 7 Гбайт – всего лишь на 0,2%. Эти результаты сопоставимы с погрешностью эксперимента. Это свидетельствует о том, что для повышения производительности системы следует работать по двум направлениям – сокращать время на открытие документа путем оптимизации его структуры, а также не препятствовать быстрому его сохранению и закрытию.



    Тест 6. Открытие неизменной базы данных в окне Lotus Notes (FrontEnd методом)



    Пожалуй, это один из главных тестов. По опыту нашей работы, наибольшее число проблем производительности Lotus Notes связано с низким значением времени открытия баз данных или отдельных представлений в них. Полученные результаты наглядно демонстрируют, что время открытия БД линейным образом зависит от ее объема. И хотя график зависимости является далеко не однородным, тем не менее, его вид однозначно свидетельствует о том, что приложения Lotus Notes могут успешно хранить и обрабатывать данные действительно огромных размеров.
    Отметим, что время открытия БД значительно зависит не столько от количества документов (и, соответственно, ее объема), сколько от соразмерности этого количества и ее внутренней структуры. Для БД небольшого объема (до 0,5 Гбайт) это влияние не столь заметно. Однако для БД большего объема мы выработали ряд рекомендаций, которые могут значительно снизить время их открытия:
    1. На время открытия БД значительную роль оказывают отметки о прочтении документов – для больших БД следует от них отказаться. Это в некоторых случаях (БД большого объема, содержащая несколько сотен тысяч документов небольшого объема – до 5-10 Кбайт и использующих иерархическую структуру) может привести к сокращению времени открытия БД в 2 и более раза (рисунок ниже).
    2. Следует сократить количество представлений. В любом случае их должно быть не больше 10-15, оптимально – 4-6 представлений.
    3. Следует критически подойти к дизайну представлений – все ли столбцы в них нужны для работы? Во всех ли столбцах имеет смысл использовать сортировку? и т. д. Например, для столбцов, отображающих данные значками, однозначно следует отключить сортировку.
    4. В каждом представлении на закладке «Дополнительно» следует рассмотреть, какой режим обновления необходимо применять (свойство «Обновление» в разделе «Индекс»). Наиболее ресурсоемкий режим – это обновление при каждом изменении документа. По нашему опыту, он может быть реально востребован крайне редко. Более приемлемый вариант – это автоматическое обновление представлений – БД с таким дизайном представлений открывается значительно быстрее. И, наконец, самый подходящий вариант – это ручное обновление представлений. В этом случае БД даже большого объема может открываться практически моментально. Отметим, что применение ручного варианта обновления означает лишь то, что при добавлении новых документов в данном представлении обновление на экране пользователя не будет произведено автоматически – для этого пользователю надо будет нажать F9. Если же он закроет БД и потом откроет снова – это обновление уже будет отражено. Поддержка же индекса представления при добавлении или модификации документов сервер осуществляет как обычно. Фактически, единственным недостатков этого режима является то, что при добавлении документа в БД и использовании поисковых методов, таких как GetDocumentByKey класса NotesView, Lotus Notes может не обнаружить искомый документ – хотя на самом деле он в БД уже присутствует. Для этого, в случае неудачи при поиске есть смыл вызвать метод Refresh класса NotesView и повторить поиск. При этом перед вызовом метода Refresh рекомендуется изменить свойство DelayUpdates базы данных в значение True (db.DelayUpdates = True). Это приводит к фактически моментальному выполнению метода Refresh за счет кэширования изменений в виде – Lotus Notes не ждет окончания выполнения этого метода и переходит к следующему оператору сразу же.


    Эффективность отказа от отметок о прочтении документов. При разработке 3-й версии медицинской информационной системы Кондопога мы отказались от них для баз данных ядра системы – и получили фактически двукратное сокращение времени открытия БД.


    Тест 7. Изменение документов в базе данных и ее открытие с обновлением текущего открытого представления (FrontEnd методами).

      Результаты последнего, 7-го теста аналогичны предыдущему. Отличие состоит в том, что перед открытием БД программа LNMark производила имитацию значительной активности пользователей – меняла значения полей в документах и вызывала обновление представлений. Как и в предыдущем тесте, время открытия БД достаточно сильно зависит от объема БД, однако вид этой зависимости иной – логарифмический. Это свидетельствует в пользу высокой готовности Domino к созданию и обслуживанию сложных и ресурсоемких приложений, способных хранить и успешно обрабатывать базы данных с сотнями тысяч документов объемом в несколько гигабайт.
    Часть первая >>>

      Литература
      1. Watt D., McKnigth G., Clar J.-J., Gatti M., Heuer N. Tunning IBM @server xSeries Servers for Performance. / D. Watt, G. McKnigth, J.-J. Clar, M. Gatti, N. Heuer IBM Corp. 2002. 866 p.
      2. Lotus Notes и Domino 6. Руководство разработчика / Стив Керн, Дебора Линд, Дебора Пенни и др.: Пер. с англ. – К.: ООО «ТИД «ДС», 2005. – 880 с.
      3. Поляков Е. В. Domino Designer R 6.5 – интегрированная среда разработки приложений в Lotus Domino / Интертраст, 2005. – 640 с.


      Об авторах
      Гусев Александр Владимирович – к. т. н., старший инженер-программист вычислительного центра ОАО «Кондопога», e-mail: gusev@kbk.onego.ru
      Дмитриев Александр Геннадьевич – инженер-программист вычислительного центра ОАО «Кондопога», e-mail: dmitriev@kbk.onego.ru

      Материалы этой статьи используются в практической работе программистов вычислительного центра, более детальная информация может быть получена на сайте медицинской информационной системы Кондопога (http://iskondopoga.snw.ru) и на сайте Карельского научно-медицинского центра СЗО РАМН (http://iskondopoga.narod.ru).
    Смотрите также русскоязычные материалы на сайте IBM:
    Производительность сервера Lotus Domino 7. Часть 1. Рабочие нагрузки от клиентов Lotus Notes >>>
    Производительность сервера Lotus Domino 7. Часть 2. Производительность Domino 7 для пользователей Domino Web Access >>>
    Производительность сервера Lotus Domino 7. Часть 3. Производительность корпоративной почты >>>

      Авторы выражают огромную и искреннюю признательность Николаю Норкину за помощь и советы в подготовке этого материала.
       
        Опубликовано — 11/21/2005 |    
    Constantin, 07.01.2007:
    По поводу db.Search: >– документы в этой коллекции распологаются в хронологическом порядке создания документов в этой базе данных. Судя по поведению этого метода с НЕпустым 2-м параметром (поиск в базе из 2 000 000 док-тов занимает доли секунды, если ищем док-ты за последний час), коллекция скорее должна быть отсортирована по дате ОБНОВЛЕНИЯ (по OID?).



    Добавить комментарий
    Имя * :
    e-mail
    Комментарий * :
    Код подтверждения * :

    Мероприятия
    Пресс-релизы
    Биржа труда
    Последнее на форуме
     
    А так же:
    Как удалить профиль?
    16.04.2016 00:08:51
    Скопировать в буфер поле документа
    24.05.2015 08:55:52
    Импорт DXL-описания документов в Lotus Domino. Одноимённые поля
    16.04.2015 16:49:58
     
    © LOGOSPHERE.RU