Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Лимиты в php

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
alexandr_ftf
Отправлено: 21 Октября, 2013 - 19:07:14
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




Какие лимиты, проставленные в php.ini , или ещё где могут повлиять на то, что скрипт выполняется не полностью.
А именно:
есть txt файл, 16 тысяч строк. Каждая строка обрабатывается регулярным выражением. 3505 сток обрабатывается все, добавляшь следующую, скрипт не обрабатывает ни одну.
Время скрипта - 1сек, localhost

Всем заранее спасибо)
 
 Top
IllusionMH
Отправлено: 21 Октября, 2013 - 19:10:31
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




alexandr_ftf, время исполнения засекали? Так же вариант с доступной памятью расматривали.
 
 Top
alexandr_ftf
Отправлено: 21 Октября, 2013 - 19:25:55
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




IllusionMH
Время примерно секунда, две, думаю не принципиально.
memory_get_usage показавает на максимуме 2278952
Возможно ли, что регулярка переполняется?
 
 Top
OrmaJever Модератор
Отправлено: 21 Октября, 2013 - 19:40:06
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Да не возможно, а так скорее всего и есть. Я понимаю что вы сам файл считываете целиком и затем ещё регуляркой его проходите, это страшные потери памяти.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
IllusionMH
Отправлено: 21 Октября, 2013 - 19:43:22
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




alexandr_ftf, более простые регулярки пробовали? Или построчно читать?
 
 Top
alexandr_ftf
Отправлено: 22 Октября, 2013 - 12:42:29
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




более простые регулярки работаю лучше, но приводят к другим проблемам или возможно потенциально приведут (скорее не вариант)

по строкам нельзя
Огорчение

(Отредактировано автором: 22 Октября, 2013 - 12:42:49)

 
 Top
Мелкий Супермодератор
Отправлено: 22 Октября, 2013 - 12:53:16
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




alexandr_ftf пишет:
по строкам нельзя

alexandr_ftf пишет:
Каждая строка обрабатывается регулярным выражением

?
Т.е. не каждая строка обрабатывается регуляркой, а весь файл целиком разбирается регуляркой?
Тогда скорей всего в backtrack упёрлись: http://php.net/manual/en/pcre.configuration.php


-----
PostgreSQL DBA
 
 Top
alexandr_ftf
Отправлено: 22 Октября, 2013 - 12:59:51
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




Я, наверно, не корректно выразился.
Да обрабатывается целый файл.
(Добавление)
Мелкий
Спасибо, pcre.backtrack_limit помог.

Но:
- время скрипта увеличилось с 1,5 с до 4 с

При этом костыль, заключающийся в разделении текста увеличил всего до 2,5
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Если скрипт не работает »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB