6 Ноябрь 2007

Опять многопоточность, но теперь в PERL (часть 3-я и последняя)

Этой статьёй я планирую завершить тему многопоточности в Perl, ибо она меня уже порядком устала :) . Кстати, предыдущие статьи ни в коем случае не претендуют на полный и подробный мануал, вовсе нет. Это скорее HOWTO, дающее, однако возможность подумать и понять сущность процесса (как мне кажется).

Итак, на повестке дня — Многопоточность и расшаренные переменные

6 Ноябрь 2007

Опять многопоточность, но теперь в PERL (часть 2-я)

Преамбула

Вот уже целый месяц нет ничего новенького про всеми любимую многопоточность (впрочем, не только про неё). Придётся срочно исправляться.

Итак, поле для манёвров готово, можно продолжать наши игры. Про терминологию напоминать не буду, просто сошлюсь на пост месячной давности, в котором упомянул про threads и forks. Впредь предлагаю к этой теме не возвращаться :) .

С места в карьер

Теперь собственно о том, как программировать разделение на нити. Начну сразу с примера:
Дальше про многопоточность

6 Октябрь 2007

Опять многопоточность, но теперь в PERL (часть 1-я)

Про многопоточность в PHP мы уже говорили (напомню, что она работает только с сокетами). Пришло время поговорить о чём-нибудь более серьёзном. Например, о многопоточности в PERL.

Однако прежде всего разберемся с терминологией, чтобы потом не возникло путаницы, как это случилось в комментариях к вышеупомянутой статье. Под многопоточностью я буду понимать возможность одновременного выполнения различных операций (сисадмины любят употреблять термин threadнить) в рамках одного процесса. Другая возможность параллельно выполнять задачи — расщепление процесса (когда вместо одного процесса будет запущено два), или fork.

С многопоточностью в моем понимании в PERL дела обстоят куда лучше, чем в PHP: возможность поддержки нитей заложена в ядре языка (хотя по умолчанию многопоточность выключена) начиная с версии 5.6, а в стандартном наборе пакетов имеется объектно-ориентированный модуль, позволяющий легко и просто манипулировать потоками.

В этой статье я расскажу, как проверить, поддерживает ли Perl на вашем сервере работу с нитями и, если не поддерживает, как эту самую поддержку активировать.

Установка поддержки многопоточности в Perl

19 Сентябрь 2007

Многопоточность в PHP: HTTP-клиент

Давненько ничего полезного не писал, посему спешу исправиться.

Собственно, эта тема обсасывалась уже уже не раз и не два (призываю Google в свидетели), поэтому не буду разводить тряхомудиюдемагогию, а сразу приведу исходник класса, который позволяет довольно просто выполнять несколько HTTP-запросов параллельно:

Дальше про многопоточный http-client

27 Август 2007

В продолжение темы про YouTube

Когда-то давным-давно, аж 22 июня 2007 года, на блоге одного хорошего человека появился занятный скрипт, который позволяет получать прямые ссылки на flv-файлы с YouTube для дальнейшего их скачивания себе локально (не мне, видать, одному надоело разгребать кеш Оперы в поисках скачанных флешек :-) ). Идея была классной, но скрипт почему-то работать отказался. Пришлось долго и муторно копаться. Результатом мытарств стала пара классов, написанных на PHP5 (на баяне не играюна PHP4.x, уж извините, не пишу: двадцать первый век на дворе, шестая версия на подходе, а пятой и вообще четвертый год пошёл). Кода получилось несколько больше, чем в оригинале, зато работает как часы. А еще он умеет выдирать название ролика :-) . Всю грязную работу выполняют два класса:

  1. httpClient – объектно-риентированная обёртка к функциям библиотеки cURL. Простенький и чертовски удобный класс (мне так кажется, по крайней мере :-) .
  2. YouTube – непосредственно парсер кода.

Будем считать, что эти классы лежат в файлах httpclient.php и youtube.php соответственно. Тогда скрипт морды будет выглядеть примерно так:
Продолжить чтение →

13 Август 2007

Викторина “Ильф и Петров” на Эхе

Услышал сегодня о викторине, посвященной творчеству Ильфа и Петрова,
которую проводит Эхо Москвы. Шутки ради решил поучаствовать.

Викторина “Ильф и Петров” на Эхе Москвы
Вы ответили правильно на 15 из 15 вопросов. Иначе говоря, Отлично.
Принять участие в викторине

Вроде бы круто, могу считать себя корифеем :) . А на самом-то деле… Не
уверен, что авторы этого теста сами удосужились прочитать книжки,
скорее просто ограничились фильмами. Не знаю, на чем основано это
убеждение, но оно имеет место быть :) .

Особенно первый вопрос порадовал: ”Какую Песню напевает Остап
Бендер на протяжении фильма?”.  По-моему, с Ильфом и Петровым это
мало связано. И даже о каком фильме идёт речь не указали (лично мне,
кстати, известно 5 экранизаций произведений о похождениях Великого
комбинатора).

В общем, хвастаться особо нечем, как и в тесте на грамотность. Но всё
равно приятно :)

9 Август 2007

Русский язык и “всмысле”

Все началось с обычного дружеского спора в привате IRC, есть ли слово «всмысле» (именно так, слитно). Я утверждал, что «всмысле» имеет точно такое же право на жизнь, как и «в смысле» (такую точку зрения я слышал от своей незабвенной учительнцы по русскому языку еще в школе и полностью был с ней согласен). Моя же очаровательная собеседница доказывала, что писать это злополучное словосочетание непременно надо раздельно. Я продолжал настаивать на своём и в итоге мне был брошен вызов:

ты тоже дохера ошибок делаешь

и предложение пройти тест «Российской газеты», в котором моя очаровательная собеседница на тот момент набрала 109 баллов.

Вообще, надо сказать, я считаю, что пишу довольно грамотно. Причем не на уровне
знания правил (их я, как раз, и не знаю), а интуитивно. Поэтому вызов был принят :)

Мой результат “Теста от ульяновского губернатора”

113 из 116

Пройти тест на грамотность

Должен, однако, сознаться: этот тест я прохожу второй раз. Первый был давным-давно, когда он (этот тест) только-только появился (было это, если мне не изменяет память, в феврале сего года). Тогда результат был чуток поскромнее: 106/116. Но все равно неплохо :-) .

Впрочем, как оказалось, ошибался именно я: подняв на уши кучу знакомых филологов, перерыв кучу справочников, я осознал, что слова «всмысле» как алиаса словосочетания «в смысле» не существует. В чём я прямо тут и расписываюсь  :-)  . Придется теперь переучиваться…

Но результаты теста меня все равно порадовали, хоть и спорные там некоторые вопросы.

2 Август 2007

Вот и я!

«Здравствуй, дорогой дневничок!» — cкорее всего, эти слова в своем первом посте пишут процентов пятьдесят (а то и больше) блоггеров. Что ж, не буду оригинальничать и пойду по проторенной дорожке. Если честно, я и сам толком не совсем понимаю, для чего создавал этот блог. Из первопричин, пожалуй, могу выделить следующее:

  • Свободное имя… Моё родное имя
  • Потому что это модно, глупенькие :-)

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

Вторая причина а комментариях, понятно, не нуждается. Оно и понятно: иногда можно просто слепо поддаться веянию моды, какой бы глупой она не была :-)

В общем, достопочтимое сообщество WordPress, принимайте в свои ряды очередного программиста, системного администратора, зануду и влюбленного по уши романтика :-)