Вот мой список днс сервисов. Собирал около года назад, но все до сих пор актуально.
Михаил @sky_lordread-only
User
Список полезных PHP классов и библиотек
4 min
64K- Swift Mailer
Swift Mailer легко интегрируется в любое PHP-приложение. Это гибкий и элегантный ООП-подход к отправке писем с множеством функций: отправка эл.почты, используя SMTP, SendMail, Postfix, поддержка серверов и др.
- PHPMailer
Лучший класс для работы с эл. почтой. Поддерживает сообщения в цифровой форме, S/MIME шифрование, текстовые и HTML-письма, изображения, поддерживает несколько Email’ов, SMTP-аутентификация.
+115
Сервер на стероидах: FreeBSD, nginx, MySQL, PostgreSQL, PHP и многое другое
16 min
40KВведение
С момента написания мной предыдущей статьи по оптимизации этой связки прошло довольно много времени. Тот многострадальный Pentium 4 c 512Мб памяти, обслуживающий одновременно до тысячи человек на форуме и до 150,000 пиров на трекере уже давно покоится на какой-нить немецкой, свалке, а клуб сменил уже не один сервер. Всё сказанное в ней всё ещё остаётся актуальным, однако есть вещи которые стоит добавить.
Статья большая, так что будет поделена на логические блоки:
0. Зачем вообще что-то оптимизировать? 1. Оптимизация ОС (FreeBSD) 1.1 Переход на 7.х 1.2 Переход на 7.2 1.3 Переход на amd64 1.4 Разгрузка сетевой подсистемы 1.5 FreeBSD и большое кол-во файлов 1.6 Softupdates, gjournal и mount options 2. Оптимизация фронтенда (nginx) 2.1 Accept Filters 2.2 Кеширование 2.3 AIO 3. Оптимизация бэкенда 3.1 APC 3.1.1 APC locking 3.1.2 APC hints 3.1.3 APC fragmentation 3.2 PHP 5.3 4. Оптимизация базы данных 4.1 MySQL 4.1.1 Переход на 5.1 4.1.2 Переход на InnoDB 4.1.3 Встроеный кеш MySQL - Query Cache 4.1.4 Индексы 4.2 PostgreSQL 4.2.1 Индексы 4.2.2 pgBouncer и другие. 4.2.3 pgFouine 4.3 Разгрузка базы данных 4.3.1 SphinxQL 4.3.2 Не-RDBMS хранилище 4.4 Кодировки 4.5 Асинхронность Приложение. Мелочи. 1. SSHGuard или альтернатива. 2. xtrabackup 3. Перенос почты на другой хост 4. Интеграция со сторонним ПО 5. Мониторинг 6. Минусы оптимизации
+361
Comstar Wi-Max: it works!
2 min
975Весьма заманчивое предложение сделал мне сайт «Комстар», на который я зашёл, чтобы узнать, чем же может нас порадовать единственный в Москве конкурент Yota.
А он действительно порадовал: модем за 490 рублей и бесплатные 5 Гб в месяц ближайшие 2.5 месяца для студентов — очень неплохая приманка для пользователей.
На самом же деле не всё так сказочно, но в целом неплохо.
А он действительно порадовал: модем за 490 рублей и бесплатные 5 Гб в месяц ближайшие 2.5 месяца для студентов — очень неплохая приманка для пользователей.
На самом же деле не всё так сказочно, но в целом неплохо.
+18
Пример построения неблокирующего веб-приложения
7 min
5.6KЗа последнее время видел пару хабратопиков (раз, два), в которых описывается использование неблокирующих сокетов и событийно-ориентированного программирования в вебе. Хочу поделиться своим опытом создания веб-приложения на этой технологии.
Недавно захотел создать свой сервис проверки номеров ICQ на невидимость. Алгоритм проверки старый и известный, но до сих пор работающий — отправка специально сформированного служебного сообщения и анализ ответа сервера. Необходимо было держать несколько постоянных подключений к серверу ICQ, а также иметь веб-интерфейс для запросов на проверку. Очевидное решение — создание демона, который создает несколько потоков для ICQ-соединений, и как-либо получает команды от веб-приложения, использующего несколько процессов-воркеров (или на preforked архитектуре) — для возможности обрабатывать http-запросы от нескольких клиентов. Но я решил освоить новую для себя технологию и сделать приложение, поддерживающее несколько соединений и отвечающее клиентам, используя всего лишь один поток.
Недавно захотел создать свой сервис проверки номеров ICQ на невидимость. Алгоритм проверки старый и известный, но до сих пор работающий — отправка специально сформированного служебного сообщения и анализ ответа сервера. Необходимо было держать несколько постоянных подключений к серверу ICQ, а также иметь веб-интерфейс для запросов на проверку. Очевидное решение — создание демона, который создает несколько потоков для ICQ-соединений, и как-либо получает команды от веб-приложения, использующего несколько процессов-воркеров (или на preforked архитектуре) — для возможности обрабатывать http-запросы от нескольких клиентов. Но я решил освоить новую для себя технологию и сделать приложение, поддерживающее несколько соединений и отвечающее клиентам, используя всего лишь один поток.
+34
Использование snort для блокирования атак скрипт-киддисов
3 min
13KДанная статья не претендует на полноту описания системы snort, а всего лишь предлагает пользователю готовое решение для защиты своего сервера от маленьких шаловливых ручек.
Я лично ставил всё это дело на OpenBSD, но от смены системы суть не меняется.
Лирическое отступление
snort (http://snort.org) — система обнаружения атак (NIDS) для сетей ipv4 на базе libpcap. Сам по себе — обычный tcpdump. Но к нему можно создавать правила, по которым он будет блокировать вредный траффик и создавать события безопасности (alert).
У меня стоит связка snort-сенсоров, связанных между собой через коллектор на базе дописанного prelude (http://prelude-ids.org). Все правила написаны собственноручно.
Результаты (по статистике работы за 4 месяца):
Ложных срабатываний — около 2% (средний траффик — 120 мбит/сек).
Блокировок за день — около 15.
Количество пропущенных атак — 0 (после внедрения системы безопасности ни один сервер не был взломан. Под защитой стоят хостинг и VDS).
В дополнение дописаны модули автоабьюса по базе данных RIPE и блокировки траффика на корневой циске.
Итак, имеем:
Некий сервер с установленным на нём snort-inline (в случае *BSD устанавливается из портов, в случае Linux'а — из исходников с указанием опции --enable-inline).
Для начала настраиваем сам snort (для вашей ОС пути могут отличаться — смотрите дефолтный конфиг). /etc/snort/snort.conf
Я лично ставил всё это дело на OpenBSD, но от смены системы суть не меняется.
Лирическое отступление
snort (http://snort.org) — система обнаружения атак (NIDS) для сетей ipv4 на базе libpcap. Сам по себе — обычный tcpdump. Но к нему можно создавать правила, по которым он будет блокировать вредный траффик и создавать события безопасности (alert).
У меня стоит связка snort-сенсоров, связанных между собой через коллектор на базе дописанного prelude (http://prelude-ids.org). Все правила написаны собственноручно.
Результаты (по статистике работы за 4 месяца):
Ложных срабатываний — около 2% (средний траффик — 120 мбит/сек).
Блокировок за день — около 15.
Количество пропущенных атак — 0 (после внедрения системы безопасности ни один сервер не был взломан. Под защитой стоят хостинг и VDS).
В дополнение дописаны модули автоабьюса по базе данных RIPE и блокировки траффика на корневой циске.
Итак, имеем:
Некий сервер с установленным на нём snort-inline (в случае *BSD устанавливается из портов, в случае Linux'а — из исходников с указанием опции --enable-inline).
Для начала настраиваем сам snort (для вашей ОС пути могут отличаться — смотрите дефолтный конфиг). /etc/snort/snort.conf
+25
CKEditor файловый менеджер
4 min
27KВ связи с выходом новой версии популярного и весьма функционального WYSIWYG редактора, пришлось сделать небольшой файл менеджер.
Причиной тому послужило отсутствие по умолчанию стандартного файл менеджера, есть конечно CKFinder но он на платной основе.
Поискав разные альтернативы решил потратить время на создание простенького но своего файл менеджера на манер CKFinder'а, что вам и представляю.
Пришлось поискать как интегрировать его с редактором, документации мало, но в конце концов вроде получилось :)
Возможности: Загрузка нескольких файлов, создание папок, транслит закачиваемых файлов, переименование, хотя чего перечислять стандартно всё :)
Общий стиль на манер CKFinder в гамме ACDSee 3
Причиной тому послужило отсутствие по умолчанию стандартного файл менеджера, есть конечно CKFinder но он на платной основе.
Поискав разные альтернативы решил потратить время на создание простенького но своего файл менеджера на манер CKFinder'а, что вам и представляю.
Пришлось поискать как интегрировать его с редактором, документации мало, но в конце концов вроде получилось :)
Возможности: Загрузка нескольких файлов, создание папок, транслит закачиваемых файлов, переименование, хотя чего перечислять стандартно всё :)
Общий стиль на манер CKFinder в гамме ACDSee 3
+35
Налоговая отчетность через интернет. Как платить налоги без Windows?
3 min
3.6KФормулировка парадокса.
Эта небольшая статья посещена проблеме отсутствия решений для сдачи налоговой отчетности через интернет. На сегодняшний день вопрос особенно актуален, в связи с легализацией софта у многих коммерческих предприятий. Как известно, самый недорогой способ легализовать софт — поставить OpenSource, в частности GNU/Linux. Уже давно решены основные проблемы запуска продуктов от 1С, Гарант, Консультант. Но все еще не решена проблема отсутствия готовых решений для сдачи налоговой отчетности через интернет, ориентированных на Linux-системы. Причем как со стороны государства, так и со стороны разработчиков такого софта, никаких шагов для изменения ситуации не делается.
+28
Использование градиента в качестве фона страницы
12 min
10KЗа время существования web 2.0 в сети появились некоторые приемы так называемого web 2.0 дизайна, один из которых это градиент.
Создание подобного эффекта, если не брать в расчет элементы с фиксированной высотой доставляет верстальщику не мало сложностей. Ключевым моментом реализации является оптимизация графики, но с другой стороны слишком "пережатый" файл теряет качество, что особенно заметно при использовании такого элемента с нефиксированной высотой. А что делать если эффект градиента необходимо использовать в фоне страницы ?
Создание подобного эффекта, если не брать в расчет элементы с фиксированной высотой доставляет верстальщику не мало сложностей. Ключевым моментом реализации является оптимизация графики, но с другой стороны слишком "пережатый" файл теряет качество, что особенно заметно при использовании такого элемента с нефиксированной высотой. А что делать если эффект градиента необходимо использовать в фоне страницы ?
+64
Список полезных инструментов для CSS разработчика
8 min
71KTranslation
Это не попытка создать список всех существующих инструментов для CSS разработки. Только некоторые, наиболее полезные были отобраны и размещены в соответствующих категориях.
Чтобы инструмент был по-настоящему полезен, у него должна быть хорошая документация и дружелюбный интерфейс. К сожалению, некоторые инструменты в списке не полностью попадают под данные критерии. Если кто-то знает лучшие альтернативы с более дружелюбным интерфейсом и большей функциональностью, пишите в комментариях.
Чтобы инструмент был по-настоящему полезен, у него должна быть хорошая документация и дружелюбный интерфейс. К сожалению, некоторые инструменты в списке не полностью попадают под данные критерии. Если кто-то знает лучшие альтернативы с более дружелюбным интерфейсом и большей функциональностью, пишите в комментариях.
+161
Кроссбраузерный min- и max-width на чистом HTML+CSS
1 min
15KДавно хотел поделиться одной интересной наработкой — а именно эмуляцией свойств min и max-width без использования expression и подобных вещей. Обвязка может показаться громоздкой, но главный ее плюс — она работает. Плюс подобные вещи можно с легкостью внедрять с помощью шаблонизатора одной строчкой кода.
Суть трюка проста:
‹table›‹tr›‹td width=1100› — максимальная ширина
‹div width=900 /› — распорка, минимальная ширина
Причем именно так, ширина не у таблицы, а у ячейки. Таким образом шире, чем 1100 таблица не будет (в данном случае), но при этом если она уже — скроллер не появляется. При этом если ширина рабочей области менее 900 — скроллер уже отобразится.
Суть трюка проста:
‹table›‹tr›‹td width=1100› — максимальная ширина
‹div width=900 /› — распорка, минимальная ширина
Причем именно так, ширина не у таблицы, а у ячейки. Таким образом шире, чем 1100 таблица не будет (в данном случае), но при этом если она уже — скроллер не появляется. При этом если ширина рабочей области менее 900 — скроллер уже отобразится.
+69
HowTo: Skype-шлюз на базе FreeSwitch
8 min
29KВ этой статье я бы хотел рассмотреть создание SIP<->Skype шлюза для проброса входящих skype-вызовов на корпоративную IP АТС (в данном случае это будет Asterisk). Так как Skype на данный момент является, пожалуй, самым популярным клиентом VoIP среди пользователей, возможность позвонить в Вашу компанию через Skype будет дополнительным плюсом для клиентов.
+36
Список полезных инструментов для php разработчика
10 min
147KTranslation
PHP один из самых широко используемых языков для создания вебсайтов. PHP фреймворки, такие как Zend, CakePHP, CodeIgniter и т.д и open source классы и библиотеки упростили разработку.
Независимо от того, являетесь ли вы опытным разработчиком или новичком, инструменты, которые вы используете, имеют прямое влияние на вашу продуктивность. Здесь собран список действительно полезных утилит и расширений для PHP разработчиков, которые помогут ускорить разработку, и улучшит итоговое качество кода.
Независимо от того, являетесь ли вы опытным разработчиком или новичком, инструменты, которые вы используете, имеют прямое влияние на вашу продуктивность. Здесь собран список действительно полезных утилит и расширений для PHP разработчиков, которые помогут ускорить разработку, и улучшит итоговое качество кода.
+186
Защищаемся от HTTP DDoS и прочих Хабраэффектов
5 min
10KПростой способ защиты от HTTP DDoS — включить syn-cookies и заблокировать подонков. Но что делать если атакует 5к-10к хостов да еще и с динамическими IP? Тут нам на помощь придет frontend-backend архитектура c промежуточным кэшированием! Почему с промежуточным кэшированием? А потому что в моем случае от шквала запросов от frontend'а backend умирал унося за собой систему.
+144
Шрифты, общие для всех (актуальных) версий Windows, и их Mac-эквиваленты
3 min
339KTranslation
Введение
В данном списке перечислены шрифты, общие для всех актуальных на данный момент операционных систем Windows (фактически начиная с Windows 98), и их эквиваленты в Mac OS. Такие шрифты иногда называют «безопасными шрифтами для браузеров» (browser safe fonts). Это небольшой справочник, которым я пользуюсь, когда делаю Web-страницы и думаю, что он будет полезен и Вам.
+47
Черная дыра рынка в диапазоне стоимости сайтов?
3 min
16KНа сегодняшний день диапазон цен на рынке веб-сайтов колеблется от 500 рублей до 50 000 евро и выше. Давайте разберемся, сколько стоит сайт и почему. Простой расчет поможет убедиться в справедливой стоимости профессионально выполненного сайта и наведет заказчиков на несколько полезных жизненных выводов. Выводы навеяны опытом работы и отзывами наших клиентов. Интервалы цен приведены, по большей части, для региона «Центр».
+61
Собеседование. Сегодня
5 min
24KВ сферу моих профессиональных обязанностей входит проведение собеседования для соискателей на должность PHP разработчика. И дальше речь пойдет о собеседовании…
+68
Никогда не говорите слово …, или регистрация в 2 щелчка мышью
4 min
3.4KЛюди не очень любят регистрироваться. Это же нужно (в общем случае) придумать логин и пароль, зайти в свою почту, дождаться письма, открыть его, перейти по ссылке активации аккаунта, а потом еще этот логин с паролем не забыть. Но ведь уже давно есть способ, с помощью которого все эти шаги не нужны. Более того, не нужно вообще ничего вводить с клавиатуры, 2 щелчка мышью и все, человек зарегистрирован.
+189
Выбор хостинга для LiveStreet: на повестке дня TrueVDS.ru
3 min
4.5KНа сайте LiveStreet периодически возникают вопросы производительности. Рано или поздно все приходят к тому, что обычный хостинг не тянет движок в силу некоторых его особенностей. бывают исключения из правил, но редко — обычно у новых хостеров с «пустыми» серверами.
Пару дней назад я говорил, что перешёл на ганди.нет, где тестировал разный софт. К сожалению, тесты не сохранились и в заметке я ограничился описанием установки софта под FreeBSD.
Совершенно неожиданно мне поступило предложение от TrueVDS.ru написать инструкцию по установке софта под Дебиан для новичков и протестировать некоторые тарифные планы. Инструкцию и тесты решил разбить на два поста, т.к. кому-то интересно одно, кому-то другое, а текста получилось многовато, тяжело для восприятия. Установка софта под Дебиан тут,
Пару дней назад я говорил, что перешёл на ганди.нет, где тестировал разный софт. К сожалению, тесты не сохранились и в заметке я ограничился описанием установки софта под FreeBSD.
Совершенно неожиданно мне поступило предложение от TrueVDS.ru написать инструкцию по установке софта под Дебиан для новичков и протестировать некоторые тарифные планы. Инструкцию и тесты решил разбить на два поста, т.к. кому-то интересно одно, кому-то другое, а текста получилось многовато, тяжело для восприятия. Установка софта под Дебиан тут,
+19
Оплата через VISA. Liqpay, неделю спустя
2 min
8.4KПрочитав обзор хабраюзера natuzzi о столь замечательной системе — Я решил попробовать её в деле и подключил к ней один из своих магазинов.
1. На осваивание и написание API ушло 3-4 часа.
2. Саппорт моментально отвечает, даже в 2 часа ночи.
3. Деньги можно вывести на любую банковскую карту или снять в банкомате Приватбанка (банкоматы есть как в Украине, так и в России)
4. Есть приложение для iPhone с помощью которого можно управлять liqpay счетом
5. Саппорт реализван через siteheart.com (тоже проект Приватбанка) в режиме реального времени. Чат поддерживает заполнение форм, коллективные чаты и выставление рейтинга и комментария после беседы.
6. Платежи с карточек действительно проходят! :)
Резюме:
Плюсы:
1. На осваивание и написание API ушло 3-4 часа.
2. Саппорт моментально отвечает, даже в 2 часа ночи.
3. Деньги можно вывести на любую банковскую карту или снять в банкомате Приватбанка (банкоматы есть как в Украине, так и в России)
4. Есть приложение для iPhone с помощью которого можно управлять liqpay счетом
5. Саппорт реализван через siteheart.com (тоже проект Приватбанка) в режиме реального времени. Чат поддерживает заполнение форм, коллективные чаты и выставление рейтинга и комментария после беседы.
6. Платежи с карточек действительно проходят! :)
+21
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Registered
- Activity