Pull to refresh
2
0
Send message

phpDaemon и runkit: новый уровень

Reading time 3 min
Views 3.8K
Сегодня я поведаю о новых вкусных плюшках phpDaemon, в том числе предоставленных PHP-модулем runkit.

Рад сообщить, что стиль кода в phpDaemon адаптирован к предпочтениям большинства земных программистов, а не только суровых инопланетян. Спасибо за это silentroach. Также теперь адекватно воспринимаются замечания по стилю и читабельности кода.

Разверзнуть врата рая
Total votes 72: ↑63 and ↓9 +54
Comments 61

Потратьте 10 минут — обезвредьте СПАМера

Reading time 1 min
Views 1.6K
Мне часто приходит русскоязычный ICQ-спам, хотя в информации нет ни единой русской буквы, указана Танзания, и аська — шестизнак из первой тыcячи.
Сообщение:
Запрос авторизации:
Все виды противопожарных работ. Решение вопросов любой сложности в органах гос.пож.надзора. Тел. 34596<wipe>, Щекалёв Игорь Владимирович. г. Екатеринбург

Только что я позвонил ему по Skype, спросил как относится к ICQ-спаму, и сказал что это некрасиво и т.д. Игорь Владимирович стал неумело бычить и спрашивать кто я такой буду и кого я представляю. После этого я разъяснил, что сам я из Москвы, и мне в *** не впился его гос. пож. надзор. И если он будет продолжать это делать — я запущу программу которая будет ему дозваниваться, слать на… и класть трубку, и так раз за разом. Человек переменился, сказал что это не он, а его компьютерщики наемные, которым он еще и за это деньги платит по результатам рекламы. Я тоже переключил тон на более доброжелательный, и рассказал ему что его обманывают, и эффективность нулевая… посоветовал обратиться в Google и Яндекс за контекстной рекламой. Мило пообщались и попрощались.

Результат — здорово поднятое настроение, спасенный лемминг, и избавленные от данного СПАМа люди.

Советую всем повторить скромный мой опыт! Также можно поэкспериментировать с программами по изменению голоса.

Лозунг примерно такой: «Это операция СПАМ или кипячение! Вы всё еще спамите? Тогда мы звоним к вам!»
Total votes 189: ↑157 and ↓32 +125
Comments 116

Официальный хабра-фотохостинг — Habrastorage.org

Reading time 1 min
Views 15K
Спешим Вас обрадовать, начал свою работу официальный хостинг картинок Хабрахабра — Habrastorage.org. Рекомендуется использовать именно его, поскольку он не накладывает ограничения на кол-во показов картинки. Загрузка главной странички не будет тормозиться медленными картинками, которые выше хабраката.
Изображения по ширине превышающие 800 px автоматически скукоживаются до этой отметки. Превью делается размером 96x96.
Также стоит отметить, что вы можете выбрать сразу несколько изображений в меню «Выбора файла» — и они все будут загружены.

Удачного дня!
Total votes 277: ↑241 and ↓36 +205
Comments 133

Starcraft II: сказ о том как можно абузить ладдер

Reading time 2 min
Views 3K
Вступление

Сегодня наконец-то выходит StarCraft II: Wings of Liberty. За длительный период бета-тестирования выловлено огромное количество багов, исправлен баланс, сделаны исправления в безопасности.
Однако, слона они всё-таки не заметили…
Читать дальше →
Total votes 146: ↑116 and ↓30 +86
Comments 116

phpDaemon: хорошие новости

Reading time 1 min
Views 3K
В Январе была опубликована статья phpDaemon — фреймворк асинхронных приложений. У многих она вызвала смешанные чувства: с одной стороны проект перспективен, с другой – было трудно вникнуть в недокументированный код, и хуже того – позиция автора была, скажем так, не совсем адекватной требованиям сообщества.
Но позиция автора поменялась, а с ней и многое в проекте.
Проект переехал на GitHub. Теперь методы и свойства задокументированы. API сделано более прозрачным и легким для работы, исправлено множество недочетов, повышена стабильность, изменена структура директорий.
Заполняется WIKI. Добавлено много новых возможностей, включая клиент для Postgresql.
Это принесло свои плоды: phpDaemon твердо обосновался на production-серверах многих проектов, и ведет себя стабильно, что не может не радовать.
Также появилось время на реализацию общественно полезных модулей и других фич, будем рады дельным предложениям.

Заранее благодарю за комментарии!
Total votes 56: ↑50 and ↓6 +44
Comments 35

Заметка о том как лучше сидеть перед компьютером

Reading time 4 min
Views 112K
Большинство из нас, включая тебя, %username%, проводит много времени в сидячем положении перед монитором. Многие люди в то же время выполняют физические упражнения и занимаются в спортзале — это решает проблему, но лишь отчасти. Долго сидеть вообще вредно (противоестественно), но неправильно сидеть — на порядок вреднее. Поскольку большинство из нас не могут отказаться от долгих посиделок, мы поговорим о том как же все-таки правильно и удобно сидеть — так чтобы при этом не болели глаза, спина, и руки.
Читать дальше →
Total votes 140: ↑123 and ↓17 +106
Comments 201

phpDaemon — фреймворк асинхронных приложений

Reading time 6 min
Views 44K
Сегодня речь пойдет о phpDaemon — асинхронном модульном демоне-фреймворке, который берёт на себя обработку I/O (libevent) и другие низкоуровневые задачи, присущие демонам. С его помощью легко писать правильные сетевые приложения с блэкджеком и шлюхами.
Из коробки идут сервера FastCGI, HTTP, CGI, FlashPolicy, Telnet, WebSocket (!) — да-да тот самый волшебный пендаль новый протокол от Google. И клиенты mysql, memcached, mongodb… И многое другое, полный список под катом. Работать с сетью действительно просто. Программист средней руки может написать, к примеру, IRC-бота за считанные часы.
В качестве наглядного примера я реализовал вот этот чат на phpDaemon + WebSocket + MongoDB + jQuery. Он наглядно демонстрирует преимущества этой технологии: доставка сообщений мгновенна, накладные расходы при обмене данными минимальны, высока производительность, приложение масштабируется горизонтально. Исходники этого чата (в данный момент 17 кб). Прошу заметить, чат тестировался и работает в Chrome, FF, IE6+, Iron, Safari.
Читать дальше →
Total votes 114: ↑99 and ↓15 +84
Comments 103

МТС и ЯД: ошибочный платеж. В поисках здравого смысла

Reading time 1 min
Views 2.4K
Для пополнения мобильного я давно пользуюсь Яндекс.Деньгами, там для проведения платежа необходимо заполнить Префикс, Номер, и имя владельца телефона. Соответственно, в моем броузере форма давно на авто-заполнении, и сегодня я по невнимательности указал «916» вместо «915» в префиксе.
Читать дальше →
Total votes 15: ↑10 and ↓5 +5
Comments 33

Делаем правильную платформу или Как повторить Google

Reading time 5 min
Views 2.6K
Введение
Сегодня я расскажу о проектировании высоко-нагруженных отказоустойчивых систем. Акцент будет поставлен практическую разработку и жареные факты, а не на сухую теорию. После прочтения вы не испугаетесь разработки сервиса с миллиардом пользователей, если у вас будет достаточное количество серверов. Тема весьма обширна, но я постараюсь быть кратким и лаконичным.
Читать дальше →
Total votes 131: ↑76 and ↓55 +21
Comments 299

ХабраЛоггер — статистика для вас

Reading time 1 min
Views 734
Предлагаю вашему вниманию быстрый и простой способ собрать статистику посещаемости ваших (и не ваших) Хабратопиков да и вообще любых страниц.
Достаточно вставить в топик или в комментарий следующий код:

<img src="http://root.loopback.su/habralogger/empty.gif" />

Картинка — 1x1 прозрачный GIF. Теперь каждая загрузка страницы будет учтена в статистике.
Статистика доступна по адресу по аналогии с этим: _http://root.loopback.su/habralogger/?url=http://habrahabr.ru/blogs/statistics/74405/ (жмякать тут)
Список всех страниц на http://root.loopback.su/habralogger/

Изначально, он задумывался как пример к статье «MongoDB — варим хороший кофе», однако обрел практическое применение.

Помните что это Open Source, AS IS, near bird. Аминь. Если что-то вдруг сломается на моем сервере или счетчик вдруг будет выключен по каким-либо причинам, претензии не принимаются :-) Вы в любой момент можете скачать и поставить его к себе на сервер.
Total votes 2: ↑1 and ↓1 0
Comments 3

MongoDB — варим хороший кофе

Reading time 4 min
Views 18K
Введение

Друзья, в первую очередь хочу поблагодарить вас за высокую оценку моего труда, это приятно, и мотивирует меня продолжать. Итак, почему надо покупать наших слонов я думаю вы уже поняли из первой статьи, кто-то уже скачал и попробовал на вкус, а кто-то только собирается. Как бы там ни было, начнем.

Сегодня мы поставим MongoDB, ниже рассмотрим свежеиспеченный ХабраЛоггер и пошпионим за главной страницей Хабра в реальном времени.
Читать дальше →
Total votes 51: ↑48 and ↓3 +45
Comments 51

MongoDB или как разлюбить SQL

Reading time 6 min
Views 66K
Введение

Коллеги, при разработке приложений, мы каждый день сталкиваемся с потребностью в гибком хранении информации (обновлении, поиске по ней, и т.д.). Класс продуктов, которые решают этот круг задач, как все мы знаем — Базы данных. Но что это такое в нашем понимании? У многих «база данных» твердо ассоциируется с MySQL, таблицами и SQL-запросами. И это устраивает до определенного момента. Действительно, реляционные базы данных дают массу преимуществ в работе: поскольку данные имеют сильную связанность, не нужно контролировать целостность базы данных. Используя простой под-запрос можно выбрать количество комментариев к каждому посту в блоге. Используя JOIN нетрудно делать сложные связанные выборки и получать данные сразу о нескольких сущностях.
Читать дальше →
Total votes 129: ↑122 and ↓7 +115
Comments 99

phpFastCGI: настоящий FastCGI для PHP

Reading time 2 min
Views 10K
— Добрый день. Вы наверняка уже наслышаны о протоколе FastCGI, он связывает Веб-сервер и сервер приложений, его реализации есть во множестве языков. Однако, в PHP реализация FastCGI до недавних пор была представлена лишь патчем PHP-FPM, который фактически не давал прироста производительности перед mod_php, поскольку он, вопреки идеологии FastCGI, перезапускает скрипт каждый раз заново. Идеология FastCGI подразумевает единовременную инициализацию приложения при запуске (подгрузку нужных классов, соединение с базой данных, и т.д.), и выполнение запросов один за другим.
phpFastCGI — правильная реализация FastCGI, которая позволяет добиться немыслимой производительности.
Разработка идёт очень активно, и новые фичи появляются очень быстро.
Страничка проекта — phpfastcgi.googlecode.com
Пример простого приложения — code.google.com/p/phpfastcgi/source/browse/trunk/example.php
В действии пример можно увидеть здесь — ya-tv.ru/phpfastcgid (может переодически лежать, это нормально, идёт тестирование). Страничка-пример легко выдерживает 5,000 запросов в секунду всего на 20-ти воркерах.
Проект пока в стадии тестирования и живёт только в SVN.
Приглашаю всех заинтересовавшихся принять в нем посильное участие!
$ svn checkout phpfastcgi.googlecode.com/svn/trunk phpfastcgi

Читать дальше →
Total votes 80: ↑74 and ↓6 +68
Comments 197

Действительно умные сессии и авторизация

Reading time 3 min
Views 11K
Добрый день. Увидев статейку на тему «умных сессий», я решил поделиться действительно умной схемой, которая по всем параметрам превосходит предложенную.

Задача
Реализовать оптимальную систему пользовательских сессий и авторизации, с возможностью «Выйти на всех компьютерах». Защитить систему от сбоев (перезагрузки memcached), обеспечить эффективное использование памяти.

Читать дальше →
Total votes 37: ↑23 and ↓14 +9
Comments 29

phpThread: нити в PHP? Запросто

Reading time 2 min
Views 2.1K
Если вы хотите научиться писать многопоточные приложения на PHP или здорово упростить себе жизнь — статья для вас.

Раньше для этих целей я пользовался либо запуском несколько копий скрипта, либо же использовал pcntl на более низком уровне, чем хотелось бы. Это, а от части и Java-идеология работы с потоками, побудили меня к написанию пакета phpThread.
Читать дальше →
Total votes 75: ↑61 and ↓14 +47
Comments 78

IMemcacheClient: нереляционность как религия

Reading time 2 min
Views 926
Никакой проект не обходится без базы данных. Мы привыкли видеть в ней хранилище множества связанных объектов, с множеством условий. Это бесспорно очень удобно, но в силу разных обстоятельств, в нагруженной системе, чаще всего приходится прибегать к другим методам, т.к. кол-во выборок и транзакций ограничено современным железом, а запросто распределить на несколько серверов не получится. В ряде случаев можно использовать репликацию, но и это не паноцея на данный момент.
Читать дальше →
Total votes 6: ↑5 and ↓1 +4
Comments 3

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity