Заваливается сервер после исполнения большого объема данных

Тема в разделе "Lotus - Программирование", создана пользователем fedotxxl, 24 июл 2009.

  1. fedotxxl

    fedotxxl Well-Known Member

    Репутация:
    0
    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Привет всем
    Есть агент, который за раз обрабатывает большое объем данных. Этот агент произвольным образом валит сервер. Как можно решить проблему? Вот такая задачка...
     
  2. Omh

    Omh Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Если глобально - переписать агента :)
    Что за агент, какие конструкуции тяжёлые используются (list of NotesDatabase/NotesDocument/..., ещё что-нить)
     
  3. Klido

    Klido Гость

    Репутация:
    0
    обработчик ошибок подключен? что в консоли сервака при падении? там где Panic...
     
  4. fedotxxl

    fedotxxl Well-Known Member

    Репутация:
    0
    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Omh
    Если глобально, то да... но не получится
    Агент по-расписанию, который обрабатывает отложенные в системе запросы. Может распределить его нагрузку между несколькими агентами по-расписанию?

    Klido
    Прости, можешь по-подробнее рассказать...

    Может есть какие тулзы, четко указывающие причину падения?
     
  5. ToxaRat

    ToxaRat Чёрный маг
    Команда форума Lotus team

    Репутация:
    0
    Регистрация:
    6 ноя 2007
    Сообщения:
    3.170
    Симпатии:
    21
    была какая-то утилика, которая nsd после падения расшифровует..
     
  6. fedotxxl

    fedotxxl Well-Known Member

    Репутация:
    0
    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    ToxaRat
    Очень интересно посмотреть... я её тоже где-то видел, но вот где?...

    Люди, никто не исследовал, как LN использует память? Как правильно убивать объекты?... вот такая инфа меня интересует
     
  7. Klido

    Klido Гость

    Репутация:
    0
    обработчик ошибок типа подключен класс (или на пальцах)
    On Error Goto errorHandler
    Dim RTE As RunTimeError
    .....
    errorHandler:
    Set RTE = New RunTimeError(Err, Error, Erl, "{Имя агнета}", True, True)
    Call RTE.SendToErrorsDB()
    Call RTE.LogToMail()
    Exit Sub
    хорошо бы во всех кодах ставить - может успеет сообщить проблему перед падением...

    консоль сервера - системный лог домино, там при падении можно в 80% случаев заметить отчего падает (либо последняя команда, либо в теме когда система говорит Panic...)

    честно говоря, за всё время жизни с лотусом у меня ровно 1 раз дошло до раскапывания nsd :) более того, в целях восстановляемости мы его нафиг нигде не делаем, вот разве что уже когда думать не на что - можно включить и сделать...
     
  8. RAJ

    RAJ Well-Known Member

    Репутация:
    0
    Регистрация:
    17 янв 2007
    Сообщения:
    440
    Симпатии:
    0
    Lotus Notes Diagnostic Tool
     
  9. fedotxxl

    fedotxxl Well-Known Member

    Репутация:
    0
    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Klido
    Это, конечно, есть. Код отрабатывается без ошибок...

    RAJ
    Пасиба! оно, ща посмотрим, что делает
     
  10. Klido

    Klido Гость

    Репутация:
    0
    фиксап базе делали? мож какой-то плохой док встречается по пути... мож принт вывести в лог, чтоб понять в какой момент валится...
    в момент работы агента больше ничего не происходит с документами? другой агент, репликация?
     
  11. fedotxxl

    fedotxxl Well-Known Member

    Репутация:
    0
    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Klido
    Ошибка может вообще не возникнуть. Я подозреваю, что неправильно расходуется память.
     
  12. Klido

    Klido Гость

    Репутация:
    0
    это запросто и сколько угодно :(
    а если вручную запустить с клиента? или не выйдет?
     
  13. fedotxxl

    fedotxxl Well-Known Member

    Репутация:
    0
    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Klido
    Вручную видно, что память летит хорошо... сейчас добавляю везде delete. Клиент вроде не хочет падать
     
Загрузка...

Поделиться этой страницей