Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как остановить процесс при превышении времени
 
 автор: добряк   (12.03.2014 в 13:20)   письмо автору
 
 

Как остновить процесс выполнения скриптом ( выйти), если запрос занял много времени.
1. Если это MySQl
2. Если это не MySQl

Или как установить в MySQl максимальное допустимое время выполнения запроса, после чего он прекращает обработку запроса.
Или как установить максимальное допустимое время выполнения скрипта

  Ответить  
 
 автор: cheops   (15.03.2014 в 00:06)   письмо автору
 
   для: добряк   (12.03.2014 в 13:20)
 

1. В самом MySQL почти никак, но вы можете запросить скриптом список выполняющихся запросов

SHOW PROCESSLIST

Оценить запросы, у которых время выполнения больше 30 секунд и снять их при помощи запроса

KILL 2352

2352 - PID процесса (в первом столбце отчета SHOW PROCESSLIST)

Потребуется привилегия SUPER

2. Процесс удобнее всего убить при помощи kill

kill -9 3423

3423 - pid процесса, можно узнать из отчета ps aux

killall php

для выполнения команд потребуются root-овые права доступа

3. Время выполнения php-скрипта, если речь о нем, устанавливается обычно в php.ini при помощи директивы set_time_limit, однако окончание работы скрипта не прервет выполнение SQL-запроса, так как для СУБД важнее всего целостность данных.

PS Если вы подробнее опишите ситуацию, можно поискать обходные пути решения проблемы, так как все эти способы требуют довольно существенных прав доступа, которые не всегда доступны на продакшен-серверах.

  Ответить  
 
 автор: добряк   (15.03.2014 в 13:23)   письмо автору
 
   для: cheops   (15.03.2014 в 00:06)
 

Все очень хорошо
Надо только что-бы какая то програмка проверяла и лог делала, типа ДЕМОНА
Или что бы кто то запускал (перезапускал) её
Или что бы она висела

Чем проще, тем лучше, переносимее, адаптируемость...

  Ответить  
 
 автор: cheops   (15.03.2014 в 14:36)   письмо автору
 
   для: добряк   (15.03.2014 в 13:23)
 

Повесьте PHP/bash-скрипт на cron

  Ответить  
 
 автор: добряк   (15.03.2014 в 20:47)   письмо автору
 
   для: cheops   (15.03.2014 в 14:36)
 

Я это знаю. Об этом знают даже все на Ответах майл http://otvet.mail.ru/question/80613650
Но Ответы майл надо понимать не прфессиональный прграмный форум
Как правильно это сделать они не знают.

ВОт я и спрашиваю на профессиональном форуме программистов
1. Как простейший PHP/bash-скрипт например для архивации написать правильно.
2. Как его правильно протестировать.
3. Как правильно установить

Собственно у меня есть крон у хостера но мин 5 мин, есть на CMS 1 раз в час, а мне надо 1 раз в сек или хотя бы в 5 секунд
Спасибо

  Ответить  
 
 автор: cheops   (16.03.2014 в 10:16)   письмо автору
 
   для: добряк   (15.03.2014 в 20:47)
 

>а мне надо 1 раз в сек или хотя бы в 5 секунд
Тогда cron не годится, у него ограничение 1 раз в минуту - меньше не получится. Нужно демона писать, у вас хостер позволяет запускать свои собственные сервера/демоны?

Хотя, конечно, лучше воспользоваться каким-нибудь готовым решением, например, http://www.percona.com/doc/percona-toolkit/2.1/pt-kill.html

Только скорее всего эту штуку должен ставить хостер - предложите им, возможно они будут только рады ввести такое ограничение (возможно всем клиентам :). Если же у вас VDS, то уже проще - на свою виртуалку можно ставить все что душе угодно.

  Ответить  
 
 автор: добряк   (16.03.2014 в 16:44)   письмо автору
 
   для: cheops   (16.03.2014 в 10:16)
 

5 000 руб в месяц хостеру платить за эту штуку, "hostland"


Нашел тут
Cygwin — бесплатный эмулятор командной строки Unix для Windows, используется для переноса программного обеспечения из UNIX в Windows, запуска скрипов bash, sh и т.п.
http://admin-gu.ru/windows/kak-zapustit-bash-skript-iz-windows

С денвером быстро можно на винде локально сайт запустить или...
Терминал как на линукс
Инсталировать 1 мин.
Быстрый переход новичкам, а так же отладчик скриптов

А уменя на компе findstr ( аналог grep msdos) не работает.

  Ответить  
 
 автор: cheops   (16.03.2014 в 19:29)   письмо автору
 
   для: добряк   (16.03.2014 в 16:44)
 

Погодите... у вас сервер на Windows?

  Ответить  
 
 автор: добряк   (16.03.2014 в 22:44)   письмо автору
 
   для: cheops   (16.03.2014 в 19:29)
 

У меня сайты на виртуальном, наверное Линукс. сейчас hostland.ru. Они мне не нравятся. Год назад после атак прешел к ним и все время рейтинг падает. Часто сбои.
VDS, на мой взгляд, у них в плачевном состоянии. Предустановок нет, ispmanager - не могут подключить правильно.
Один плюс, что телефон есть и бесплатный, но толку то.

Сам я настраивать VDS не умею, человека не найти, линукс не видел и не щупал.
Локально на денвере настраиваю и туда.

Стал искать VDS, только время убил. Стал разбираться. Набрел на хосинг http://www.clodo.ru/ , вроде ничего.
Как я понимаю, VDS это VMware Workstation.
Сейчас немного штурмовал это место, но у http://www.clodo.ru/ есть ispmanager.

Хочу попробовать VMware Workstation поставить, но какую, боюсь, на компе 5 виндов. Надо на чистый комп ставить, потыркаться с недельку две. Пока теоретически готовлюсь.

Основная причина перехода. Нестабильно хостеры деражат виртуальный хостинг из-за чего и падает рейтинг сайтов. Другая, что забивают скиой ерундой и временами стал тормозить по причине неясной, но не важно какая причина, надо сделать снятие висов. Сайты до 2 млн строк, нормально бы, если хостеры не выдавливали на VDS. Я первый раз попробовал MySQL - одни проблемы. Ранее сделал свой индексатор и движок, но надо доработать морфологию Фактически не зная шел за Сфинксом, только я на php получил хорошие результаты, без MySQL и без Питона.

Кто бы посоветовал какую VMware Workstation, что бы не боятся , что на компе 5 виндов и ничего не упадет. Какое место при установке VMware Workstation коварное?

  Ответить  
 
 автор: Саня   (17.03.2014 в 10:22)   письмо автору
 
   для: добряк   (16.03.2014 в 22:44)
 

Если смотреть на облака, то мне нравится Digital Ocean. Они заявляют что у все серваки на SSD работают и похоже это действительно так. Я к ним перенёс почтовый сервер от другого провайдера и массовые рассылки по выходным дням теперь не кладут сервер. Уже 7 месяцев прошло — аптайм 100%. Ни у одного провайдера я таких результатов не получал.
Имеет смысл брать только дешевые тарифы. Если нужно больше мощи, выгоднее арендовать выделенный сервер.
Из минусов — нет IPv6, мало вариантов оплаты.

По поводу экспериментов с виртуализацией. Рекомендую VirtualBox.

> Тогда cron не годится, у него ограничение 1 раз в минуту - меньше не получится.
Вполне получится. Нужно только слипы в скрипте правильно расставить.

> ВОт я и спрашиваю на профессиональном форуме программистов
> 1. Как простейший PHP/bash-скрипт например для архивации написать правильно.
> 2. Как его правильно протестировать.
> 3. Как правильно установить

1. Если скрипт работает корректно и выполняет поставленную задачу — он написан правильно.
2. Как обычные скрипты тестируют — запускаете, смотрите результат и логи.
3. Слишком общий вопрос. Нельзя на него ответить в двух словах. Нужно уточнение.

Вам вряд ли поможет этот демон в долгосрочной перспективе. Лучше разобраться с причиной зависов, чем бороться с её последствиями.

  Ответить  
 
 автор: добряк   (17.03.2014 в 12:07)   письмо автору
 
   для: Саня   (17.03.2014 в 10:22)
 

По-поводу VDS. Мне сегодня самому не настроить. У них там (Hostland) дурные и мутные цены. А на хостинге VDS 64 после первой оплаты, в системе стали образовываться глюки. Мне стали говорить плати, плати, плати. Пошли они ..

У меня есть хорошие админы, но не знают WEB. Один даже в Газпроме работал, у нас хорошие отношения, но ...
Найти порядочного, обязательного и ответственного человека для настройки VDS - Это беда.
Я может взыскателен, но и к себе я жесток и педантичен

На моем, нынешнем хостинге Hostland, все в тумане. Они дают что-то там установленное или правильно или криво - это не известно. В открытом прайсе цен по настройке VDS нет.
Если искать на сайте, то разбросаны как у курицы драной услуги в разных местах, по замутненным ценам и еще более туманным услугам. ВИдать отбоя нету, что в тумане продают.

Если с ними по тлф говорить, то начинается базар: пишите задание, мы оценим и назовем цену.
ВО КАК !!!! Цена ТИПОВОЙ УСТАНОВКИ Apache, MySQL, php у них зависит от ...обстоятельств и за результаты не отвечают.
Ощущение, что эти специалисты появлялись после разового просмотра VMware Workstation наhttps://www.youtube.com/results?search_query=VMware%20Workstation&sm=12
Слава богу, что ушел (почти) от MySQL с его миллионными настройками - дырами. Любой админ крутнет, и все ищи потом, где намутили.
Да еще у MySQL есть предел и поднимать характеристики дальше только компромиссом:
Улучшишь одно, ухудшится другое, а третье вообще неизвестно, как себя проявит.
Это компромисс, оптимум, когда шаг влево или шаг в право приводит.... к неустойчивой ситуации Любой хакер новичок выведет систему из стабильной работы.

Я это уже проходил на VDS 64.

Спасибо Саня за совет VirtualBox, но так как я человек без опыта, и нахожусь на стадии проясняющей (новичок), то не смогу воспользоваться наверное советом без дополнительной информации, типа видео по установке. Дорого конечно внимание и совет, хоть мне он как козе баян. Спасибо за искренность и отзывчивость.

Я сейчас штурмую VMware Workstation http://rutracker.org/forum/tracker.php?nm=VMware%20Workstation, есть видео по установке и настройке. Локально буду пробовать сначала, потом уже на VDS.
Хотя административная работа меня не интересует, но от жизни похоже не уйдешь.
Я бы в паре с кем нибудь сел на какой нибудь VDS, что бы легче отражать удары судьбы

Саня, ВЫ написали мне:
>>Вам вряд ли поможет этот демон в долгосрочной перспективе. Лучше разобраться с причиной зависов, чем бороться с её последствиями.

Мой ответ:
Перввое что важно. Локально, на тестах 1 запрос не более 0.0001 сек.
На реальной дороге, появляются ухабы. Какие?
Число внутренних причин может быть миллион и еще в кубе, число атак на истощение ресурсов и забитие каналов - миллион и умножить на куб. Извините, я с удовольствием обсужу и изучу объективные факты, что демон не спасет, и что лучше каждый раз причину устранять, как вы написали.
Если, Саня, Вы подберете убедительные и неотразимые аргументы, то честь и слава вам во веки веков. То ВЫ человек с фишкой, равной которой ни у кого нет.
Но все должно быть логично аргументировано.
Вы практически каждый раз давали полезный совет и каждый раз это помогало, и за каждый раз большое вам спасибо и в каждом случае я буду это помнить. Но простая декларация ( типа Вряд ли..) - это не доказательство, это не опыт и не не теория, это подпора для инвалидов или слишком чувствительных.
Тут для меня, опыт молчит, а теория мне подсказывает, что такое лекарство, может быть хуже болезни и может перейти в хроническое течение с частыми и тяжелыми осложнениями.
Я конечно человек и могу очень ошибаться, в столь деликатном вопросе. Извините, если покажется, что не тактично выражаюсь.
Я же пока лучше демоном буду выбивать все ситуации, у которых больше n sec.
Для остальных ситуаций есть другие меры, а если нет, то буду делать.
Вообще в теории автоматизации, такой подход называется следящей сиcтемой.
http://nashaucheba.ru/v21040/васильев_к.к._теория_автоматического_управления_следящие_системы
http://slovari.yandex.ru/~книги/БСЭ/Автоматическое%20управление/
Изходя из парадигмы, сегодня мне кажется это перспективным

С удовольствием с кем нибудь спарился, хотя сейчас чаще "парятся" мужчины с женщинами в семейных вопросах, нежели мужчины в деловых или творческих
Два медведя не уживаются в одной берлоге - одно из наблюдений, один постулат
Но если у каждого есть своя фишка, свое что-то , то система становится устойчивей и прочней, в рамках проекта, другой постулат.
Такова, вот диалектика получается

  Ответить  
 
 автор: Саня   (17.03.2014 в 20:47)   письмо автору
 
   для: добряк   (17.03.2014 в 12:07)
 

MySQL - сложная и большая система, разрабатывающаяся годами большим количеством людей. Большое количество настроек позволяет очень гибко реализовать любую конфигурацию под любые цели и задачи. А баги? Баги и уязвимости есть в любом ПО. От этого никуда не деться. А компромиссы бывают разными и задача сводится лишь к выбору наиболее выгодного из них.

> Перввое что важно. Локально, на тестах 1 запрос не более 0.0001 сек.
> На реальной дороге, появляются ухабы. Какие?
На локале вы выполняете один запрос. На бою запросы выполняются сотнями одновременно. Разница между этими двумя профилями нагрузки очевидна.
Но конкретно и точно на ваш вопрос я ответить не смогу, так как не владею полной информацией о вашей системе. Поэтому приходится строить предположения и догадки.

> Но простая декларация ( типа Вряд ли..) - это не доказательство, это не опыт и не не теория,
> это подпора для инвалидов или слишком чувствительных.
Вы вольны использовать любое решение, если оно помогает. Но является ли это решение лучшим? Я не знаю. Имея на руках лишь ту информацию, которую вы предоставили и опираясь на свой опыт, я считаю ваше решение не лучшим. Это лишь моё личное мнение и оно может не совпадать с вашим. Навязывать его я вам не собираюсь.

  Ответить  
 
 автор: добряк   (17.03.2014 в 23:54)   письмо автору
 
   для: Саня   (17.03.2014 в 20:47)
 

Windows - сложная и большая система, разрабатывающаяся годами ... дальше ответ читайте про MySQL. то что вы писали
Собственно истины тут нет, так как шаблонно подходит ко всем сложным системам.
Обычный научно публицистический газетный стиль для обывателей. Извините их всегда большинство. Извините, но это не анализ у вас, а гимн.
Это не факты.

Вы представьте, нарушился динамический круговорот воды в природе. Т.е осадков в году больше, чем испарений, или наоборот.
Но в природе кроме равновесных динамических и статических процессов есть и переходные, лавинообразные, когда после разрушений динамическое и статическое равновесие восстанавливается. Это Экологические, Экономические, Геологические, космические, Исторические. История развития науки и техники, искусства также идет кругами со скачками.

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

Я раньше наблюдал в электронике. Сначала бурно развивались
РАДИОЛАМПЫ.
Пришли транзисторы и радиолампы стали не повсеместно, а только в некоторых редких случаях.
На смену транзисторам..пришли микросхемы... потом большие микросхемы... потом потом

Тоже в Моде, тоже в истории, кругом
Мы сегодня видим очередную гибель и возрождение фашизма.
Война, если должна быть - значит будет. Неизвестны масштабы зачистки, что-бы восстановилось динамическое и статические равновесия, но она идет и будет сильнее.
Разрушения нарастают также быстро, как и созидания, сметая на своем пути все, что не вписывается в идею будущего

Я в 1с работал. Переходный процесс. 7.7 отмирает переходят на 8.0 Почти всех трясет от 8.0
Ошибок тьма, зато появились возможности, зачатки возможностей для будущей системы.

Я ушел тогда, еще тогда кругом все плевались от MsSql.
Уже сегодня Sphinx забрал, втянул ту сложную часть которую MySQL не тянет.
На чем сделан Гугл - на плоских файлах, никаких баз .
MySQL займет свое место, на всем оставшемся его будут вытеснять системы.

Фильм 31 июня.
Так было всегда, так будет всегда
За безмятежным летом
Осень приходит следом
Рядом со счастьем ходит беда.

Сейчас новая волна поднимается, так как и программисты уже грамотнее и компьютеры быстрее и новые технологии. Все это требует смены поколений и это было так и будет.
Одни ничего не заметят так и будут сидеть на MySQL.
Другие займутся системами высокоскоростными, с медленным стартом но быстрым развитием. Sphinx в себя забирает все больше и больше, кто му же появляются сети нового типа.

Мне просто не имеет смысла новичком быть в MySQL, лучше я на гребне волны вперед пойду.
Хотя среди сегодняшних систем для данного круга задач она лучшая. Но СЕГОДНЯ, НО ДЛЯ ДАННОГО КРУГА!!! Время меняет все сначала плавно, потом скачкообразно
Вокруг меня так было не раз. В детстве я фанатом был радиоэлектроники. А когда мне 14-30 лет было деньги сами сыпались. Потом я стал лохом, переучивался. Сейчас есть шанс, правда нет желания денег.

Мне просто не имеет смысла новичком быть в MySQL, лучше я на гребне волны вперед пойду. Вас мне уже не догнать в ЭТОМ ПОТОКЕ, НА ЭТОЙ ДОРОЖКЕ, В ДАННОМ НАПРАВЛЕНИИ РАЗВИТИЯ.

Извините, но уменя одна философия природы получилась. Но ничего не поделаешь. Как говорил Стив Джобс: "смерть - это лучшее изобретение жизни. Она причина всех перемен в жизни, она расчищает дорогу всему новому. Но когда то вы тоже станете старыми ( это Стив говорит) и от вас избавятся. Ваше время ограничено, не пытайтесь прожить чужую жизнь.
Не попадайте в ловушку догмы, которая учит жить в соответсвием с мыслями других людей...
все остальное второстепенно

http://www.youtube.com/watch?v=EAc9tEvCCoI
Послушайте, вспомните.
Желаю удачи, искренне и от души. Всех благ

  Ответить  
 
 автор: cheops   (18.03.2014 в 23:36)   письмо автору
 
   для: добряк   (17.03.2014 в 23:54)
 

Вы правы, волна действительно есть. Волна эта вызвана обилием дешевой оперативной памяти на современных серверах. Поэтому новые NoSQL-решения сильно на коне. Посмотрите в сторону Redis - он полностью расположен в оперативной памяти и держит бешенное количество одновременных обращений.

Вы так же правы в том, что MySQL возможно сейчас не самый лучший выбор для изучения СУБД, база данных попала в Oracle и её развитие стагнацирует, качество упало, главный архитектор покинул проект. Однако, NoSQL решения не могут полностью заменить реляционные базы данных. Будучи новичком вам это сложно оценить, но потом вы придете к этому выводу. Просто схема перемещается из базы данных в код и в головы - где-то это не страшно, где-то это критично. Однако вы абсолютно правы, доля MySQL на рынке падает по многим причинам и не может не падать. Я бы на месте новичка смотрел в сторону PostgreeSQL, хотя некоторые моменты у неё реализованы хуже чем у MySQL (а некоторые лучше), а то и в сторону коммерческой СУБД, лицензию Oracle для разработчиков вообще чуть не за копейки сейчас отдают - что-то в районе 2000 рублей. Вот уж где впереди всех волн идут - они ПО для облаков еще 10 лет назад разрабатывали и выпускали на рынок, а вы об этом только через 3 года думать начнете, когда окончательно убедитесь, что в нельзя все втискивать в один сервер - безумного дорого это и рано или поздно сервер заканчивается, какой бы большой и мощный он ни был - вот в этом последнем пункте и кроется то, в чем вы не правы, потому что MySQL обладает одним из лучших среди свободных проектов механизмом репликации и дает широкий простор для построения масштабируемых проектов не то что на жалких 2 млн строк, а на террабайтные базы данных. Волна есть, но MySQL в этой волне очень надежный и хороший кирпич, который никто выкидывать не собирается.

  Ответить  
 
 автор: добряк   (27.03.2014 в 12:40)   письмо автору
 
   для: Саня   (17.03.2014 в 10:22)
 

VirtualBox. вариант очень оказался интересным. ЧРезвычайно полезная вещь
Но как на него поставить Centos

  Ответить  
 
 автор: cheops   (18.03.2014 в 23:19)   письмо автору
 
   для: добряк   (16.03.2014 в 22:44)
 

1. clodo.ru очень не стабилен, много сбоев, но там обалденная техническая поддержка. Очень компетентные и очень отзывчивые.
2. Если есть хоть какая-то уверенность в Linux, тоже бы посоветовал DigitalOcean.

PS У меня сейчас есть действующие виртуалки и там и там.

>Я первый раз попробовал MySQL - одни проблемы.
Любую реляционную базу данных нужно настраивать, у меня под присмотром есть гигабайтная база данных, как раз 2 млн строк полностью лежит в оперативной памяти - все летает, но эту память MySQL нужно выделить, базу данных проиндексировать и настроить. Причем настроить и забыть не получается, базу данных нужно сопровождать - она живая и постоянно меняется.

  Ответить  
 
 автор: добряк   (28.03.2014 в 22:01)   письмо автору
 
   для: cheops   (18.03.2014 в 23:19)
 

Оказалось, что [url]clodo.ru[/url] не только не стабилен. Я у них неделю пытаюсь получить конфигурацию Centos, так все Debian-7-64 bits.
Пока не звонил, но все чаще приходят мысли о Windows на ноутбуке.

Испробую Ваш совет DigitalOcean. Вопрос для меня: какую сторону он мне покажет( каковы условия установки для меня будут), каков уровень моего опыта, тео. подготовки, совмещаемости с персоналом и их мировозрением, способностью захватывать процесс мною и направлять в нужную мне сторону, окажется для данной ситуации .

Только честно скажу, разговор о базах мне наскучил. В основе всех баз одни принципы. Я перепробовал очень много и не вижу в них необходимости... для меня.
Смешно смотреть, как из языка этих баз данных удаляют привычное слово, заменяя каким то другим. Ни читабельность, ни функциональность не меняется, кроме. МУТАБЕЛЬНОСТИ.
Извините, мне не здоровится.

  Ответить  
 
 автор: cheops   (29.03.2014 в 16:49)   письмо автору
 
   для: добряк   (28.03.2014 в 22:01)
 

Хм... а почему Centos выбрали? Я бы даже Debian для начала не стал ставить, поставил бы что-то очень распространенное и бронебойное вроде ubuntu... Просто ответы будет сложно искать, для той же Ubuntu мне кажется на порядок будет проще.

>Ни читабельность, ни функциональность не меняется
Ага, есть такое дело. Дело в том, что это технология 70-х годов, когда машинное время ценилось выше времени разработчика. Все от туда ориентировано на высокую скорость и эффективность в ущерб читабельности и простоте. Было очень мало памяти, были медленные процессоры, все это очень дорого - в общем не до жиру. Сейчас создают принципиально другие технологии и языки - они действительно удобнее. В этом плане да, невооруженным взглядом видно, что С, SQL - это старые технологии не из нашего времени.

  Ответить  
 
 автор: добряк   (31.03.2014 в 21:21)   письмо автору
 
   для: cheops   (29.03.2014 в 16:49)
 

Centos выбрал по неопытости. У хостера Centos .
Он глючит во всех местах.
Пришлось читать книги и сейчас выбрал ubuntu

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования