Search
Write a publication
Pull to refresh
0
@scriptbunnyread⁠-⁠only

User

Send message

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

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

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

Разверзнуть врата рая

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

Reading time6 min
Views45K
Сегодня речь пойдет о 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.
Читать дальше →

Ускоряем раздачу фоток

Reading time8 min
Views14K

С проблемой медленной отдачи статического контента рано или поздно сталкивается каждый сисадмин.

Проявляется это приблизительно так: иногда 3Kb картинка грузится так, как будто бы она весит 3Mb, на ровном месте начинают «залипать» (отдаваться очень медленно) css-ы и JavaScript-ы. Вы нажимаете ctrl + reload — и уже, вроде, проблемы нет, потом спустя всего несколько минут все повторяется опять.

Не всегда истинная причина «тормозов» очевидна и мы косо поглядываем то на nginx, то на хостера, то на «забитый» канал, то на «тормозной» или «глючный» браузер :)

На самом деле проблема в несовершенстве современного винчестера, который до сих пор не расстался с механическими подсистемами вращения шпинделя и позиционирования головок.

В этой статье я предложу Вам свое решение этой проблемы, основанное на практическом опыте использования SSD дисков совместно с web-сервером nginx.
Читать дальше →

Как на самом деле работает mod_rewrite. Пособие для продолжающих

Reading time17 min
Views281K
image
Эта статья выросла из идеи продвинутого обучения наших сотрудников технической поддержки работе с mod_rewrite. Практика показала, что после изучения имеющихся в большом количестве учебников на русском языке саппортам хорошо дается решение шаблонных задач, но вот самостоятельное составление правил происходит методом проб и большого количества ошибок. Проблема заключается в том, что для хорошего понимания работы mod_rewrite требуется изучение оригинальной англоязычной документации, после чего — либо дополнительные разъяснения, либо часы экспериментов с RewriteLog.

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

Я предполагаю, что читатель уже знаком с тем, что такое mod_rewrite, и не буду описывать его основы, которые легко найти в интернете. Также нужно отметить, что в статье освещается работа mod_rewrite при использовании его директив в файле .htaccess. Отличия при работе в контексте <VirtualHost> изложены в конце статьи.

Итак, вы изучили mod_rewrite, составили несколько RewriteRule и успели столкнуться с бесконечными перенаправлениями, со случаем, когда правило почему-то не ловит ваш запрос, а также с непредсказуемой работой группы правил, когда последующее правило неожиданно изменяет запрос, кропотливо подготовленный правилами предыдущими.

Почему так происходит?
Читать дальше →

Начата разработка LibreOffice для веба, Android и iOS

Reading time1 min
Views2.2K


Document Foundation на прошедшей LibreOffice Conference объявил о начале разработки интернет-версии офисного пакета LibreOffice. Видео работы прототипа можно посмотреть по этой ссылке.

Интернет-версия LibreOffice основана на фреймворке GTK+ и canvas из HTML5. Она разработана сотрудником Novell Майклом Миксом на broadway GTK+ Алекса Ларсона из RedHat.
Читать дальше →

Имеют ли право пренебрегать безопасностью пользователей крупные компании?

Reading time6 min
Views1.5K

Лирическое отступление


Представим себе ситуацию… Вы простой пользователь интернета. Ежедневно посещаете различные сайты, читаете там новости, общаетесь в социальных сетях, просматриваете почту и т.д. Все как обычно. Но в один прекрасный день в дверь вашей квартиры стучат. На вопрос «кто там?» вам отвечают: «Откройте, полиция!». Берут вас под белы рученьки и сопровождают в ближайший отдел. Вы недоумеваете «за что?». В ответ слышите: «Систематическая публикация в интернете сообщений призывающих к разжиганию межнациональной розни». Как? Почему? Никогда не писал подобного рода сообщений! В ответ на эти претензии вам показывают ряд сообщений на некоторых известных информационных ресурсах которые действительно написаны из под вашего аккаунта и содержание которых явно противоречит законам РФ. Что самое интересно, даже IP-адрес с которого были отосланы сообщения совпадает с вашим домашним. Возможно, это кошка, которая живет с вами, гуляя по клавиатуре, случайно набрала эти сообщения за вас и разослала по разным сайтам. Возможно, вам даже поверят… И срок в 2 года лишения свободы неявно замаячил на горизонте.
Так что же все-таки произошло? А произошло следующее…
Читать дальше →

Typekit приобретён Adobe

Reading time1 min
Views8.1K
3 октября 2011 года сервис Typekit, бизнес которого построен на платном предоставлении доступа к коммерческим шрифтам для оформления сайтов в Паутине при помощи директивы @font-face на языке CSS, был приобретён Adobe. В тот же день об этом можно было прочесть во блоге у Typekit и в пресс-релизе Adobe. По заявлению Adobe, сервис Typekit (в настоящее время насчитывающий около четверти миллиона пользователей, в их числе «Нью-Йорк Таймс» и Wordpress) со временем станет частью проекта Adobe Creative Cloud.

Следует заметить, что Adobe и без того можно было причислить к интернетовским шрифтоторговцам; просто в их коллекции Adobe Web Fonts число шрифтов перевалило за пару сотен, тогда как Typekit торгует тысячами. Полезно сопоставить это с количеством шрифтов в коллекции Adobe Type Library, которые продаются для внеинтернетовского употребления — число их превосходит 2300.

Читать дальше →

CSS Shaders: 3D-эффекты для веба

Reading time3 min
Views13K
Компании Adobe, Apple и Opera совместно разработали спецификации CSS Shaders для генерации качественных видеоэффектов в браузере, причём фильтры можно накладывать на любой HTML-элемент. Они выглядят знакомо для всех, кто применял эффекты в редакторе Flash-анимации, или для тех, кто знает элемент filter из стандарта Filter Effects 1.0 для SVG. Здесь то же самое, только гораздо лучше.



Читать дальше →
12 ...
53

Information

Rating
Does not participate
Registered
Activity