Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Стоит ли удерживать файл хендлер? 
:(
    Опции темы
infarch
Дата 29.4.2015, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 13.3.2009

Репутация: нет
Всего: 1



Здравствуйте.

Как, по вашему, правильнее: удерживать открытый файл хендлер в скрипте для периодической записи лога, или открывать его по мере необходимости на запись и сразу закрывать? Как будет производительнее и стабильнее? Предполагаемая частота записей - от трех до 30 в минуту.
PM MAIL   Вверх
tzirechnoy
Дата 29.4.2015, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: нет
Всего: 16



Всё время открытый.

Правда, при условии, что скрипт не под виндой. Под виндой там всё странно как-то сделано.
PM MAIL   Вверх
infarch
Дата 29.4.2015, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 13.3.2009

Репутация: нет
Всего: 1



В том то и дело что скрипт как под виндой, так и под убунтой. Видимо, надо протестировать в течении долгого времени чтоб убедится в стабильности.
PM MAIL   Вверх
noize
Дата 29.4.2015, 23:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


5.18.2
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 10.7.2010
Где: СПб

Репутация: 3
Всего: 3



Цитата(infarch @ 29.4.2015,  14:25)
Здравствуйте.
...

Использовать Log::Log4perl и не париться по ерунде
PM MAIL   Вверх
infarch
Дата 30.4.2015, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 13.3.2009

Репутация: нет
Всего: 1



Цитата(noize @  29.4.2015,  23:19 Найти цитируемый пост)
Использовать Log::Log4perl и не париться по ерунде 


Я ценю ваше желание помочь, но уж поверьте: если я его НЕ использую, на то есть причины. В скучные подробности вдаваться не буду, но понадобился именно свой логер.

Допустите на минутку, что речь идет не о логах, а просто о записи в файл. Какой метод работы вы бы выбрали? Почему? Мне правда интересно мнение общественности в этом вопросе.
PM MAIL   Вверх
noize
Дата 30.4.2015, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


5.18.2
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 10.7.2010
Где: СПб

Репутация: 3
Всего: 3



Цитата

Допустите на минутку, что речь идет не о логах, а просто о записи в файл

Ну вы же пишете в файл не просто нечто абстрактное, а, судя из раннего сообщения, лог работы программы.
Лично я предпочитаю использовать проверенные решения вместо построения собственных велосипедов. Максимум, что делаю - небольшую обёртку для удобной инициализации лог4перл в своём проекте. Плюс этого решения в том, что освоив один раз Log4perl можно потом без проблем работать с либами Log::* в других языках. Ну и удобный форматированный вывод тоже является плюсом.

Что касается первого вопроса, то лучше наверное открыть один раз файл и потом держать его открытым всю работу программы.
PM MAIL   Вверх
infarch
Дата 30.4.2015, 13:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 13.3.2009

Репутация: нет
Всего: 1



Раз уж мы заговорили про лог4перл, то как у него с многопоточностью? Если писать из нескольких тредов в один файл, блокировки будут?
PM MAIL   Вверх
noize
Дата 30.4.2015, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


5.18.2
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 10.7.2010
Где: СПб

Репутация: 3
Всего: 3



нормально работает с несколькими параллельными процессами, пишущими в один лог-файл.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1126 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.