Как стать автором
Обновить
0
0
blink @blink

Пользователь

Отправить сообщение

LogParser — привычный взгляд на непривычные вещи

Время на прочтение5 мин
Количество просмотров56K
Когда я в очередной раз использовал LogParser, то чтобы проникнуться и чужим опытом, ввел его название в поиск на Хабре. Как результат — сообщение «Удивительно, но поиск не дал результатов». Вот уж воистину удивительно, когда столь интересный инструмент обойден вниманием. Пришла пора восполнить этот пробел. Итак, встречайте LogParser. Маленькая, но чертовски полезная утилита для любителей SQL.

Из названия инструмента, казалось бы, очень непросто понять, что он делает в разделе SQL. А правда заключается в том, что он такой же LogParser, как и ChartGenerator. В то смысле, что он справляется с обоими задачами с одинаковыми успехом. В целом я бы его охарактеризовал как SQL-процессор гетерогенных данных. Концепция работы в общем такова, что он берет данные из некоторого формата и преобразует их в табличный вид (собственно говоря, только на этом этапе и выполняется иногда парсинг). Затем, посредством выполнения над этими табличными данными некоторого SQL-запроса формирует таблицу с результатом и сохраняет ее опять же в некотором формате. Если коротко, то цепочка выглядит как подготовка входных данных->SQL-процессинг->генерация выходных данных.
Читать дальше →
Всего голосов 56: ↑46 и ↓10+36
Комментарии17

Простой и эффективный метод отразить http DDoS от 50мбит с помощью nginx и iptables

Время на прочтение7 мин
Количество просмотров67K
Здравствуй, Хабр!
Предлагаю твоему вниманию простой и в то же время эффективный метод борьбы с http DDoS. На основе сервера Xeon 2.5GHz / 4Gb RAM / SAS можно отражать атаку примерно до 300 Мбит/с (значение получено методом экстраполяции).

Способ реализация

Производится тонкая настройка параметров системы. Так что север будет способен выдерживать больше подключений от ботнета, чем канал до сервера сможет пропустить.

Область применения

Борьба с Http DDoS на выделенном сервере или ВПС. Максимальная возможная мощность сдерживания DDoS атаки ограничивается физическими возможностями сервера и пропускной способностью канала.

SEO под DDoS-ом

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

Стоимость и эффективность

На время атаки придется отказаться от некоторых сервисов вашего сайта. Возможно, придется расширить полосу канала, перенести сайт на более мощный сервер. Эффективность достигается максимизацией коэффициента масштабируемости системы. Обеспечивается быстрое наращивание аппаратных ресурсов при увеличении мощности атаки.
Читать дальше →
Всего голосов 193: ↑179 и ↓14+165
Комментарии78

Дайджест по итогам 2009 года на рынке веб-разработок

Время на прочтение5 мин
Количество просмотров615
Привет, Хабр!

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

Ситуация на рынке:

Объем рынка в 2009, по нашим оценкам, вырос по отношению к 2008 году (напомним, объем рынка в 2008 был оценен на уровне 6,8 млрд. руб.). На рынке действует порядка 4 000 игроков (в подавляющем большинстве — небольших компаний), что делает его по-прежнему весьма непрозрачным. Финансовый кризис сыграл определяющую роль в развитии отрасли в 2009, в положительном смысле повлияв на скорость взросления рынка и среднее качество оказываемых услуг, а также на эффективность взаимодействия с клиентом.

Консолидация

Практически с самого начала 2009 года отдельные представители крупных и средних компаний начали вести переговоры о формировании различных объединений, которые бы способствовали защите их интересов и росту рынка в целом. Некоторые из этих начинаний не закончились ничем, а ряд инициатив был доведен до логического завершения и получил статус ключевых событий в отрасли.
Читать дальше →
Всего голосов 61: ↑44 и ↓17+27
Комментарии105

Генератор иконок — Iconizer.net

Время на прочтение1 мин
Количество просмотров6.7K
Недавно я и Тимур Гаффоров запустили наш новый сервис для генерации иконок Iconizer.net.

image

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

Сервис немного похож на наш Preloaders.net, так как выполняет похожие функции. Но, самое главное, он перенял с него простоту дизайна и легкость использования.
Всего голосов 58: ↑48 и ↓10+38
Комментарии57

Где погрызть гранит науки

Время на прочтение4 мин
Количество просмотров28K
image Здравствуй, хабрасообщество. Я знаю, ты любишь халяву. А еще ты любишь учиться. Ведь так? А что может быть лучше для хабравчанина бесплатного образования? Вот и решил собрать специально для тебя подборку из ссылок, где можно набраться уму-разуму в области IT.
Все нижеперечисленные ресурсы абсолютно и официально бесплатны и свободны, что не может не радовать.

UPD. Переранжировал сайты. В категорию «Компьютерные науки» попали те сайты, которые можно внести более, чем в одну из нижеперечисленных категорий. Ранжировка производилась по большинству содержимого, то есть в некоторых сайтах, отнесенных к определенной категории, могут попадаться статьи не относящиеся к определенной, но они будут составлять абсолютное меньшинство

Большое спасибо в помощи добавлении ресурсов vansickle, RedFox, kagen, theinterman, sM1Le.

Англоязычные ресурсы



Компьютерные науки



OpenCourseWare MIT




Одно из самых больших хранилищ учебных курсов. Здесь собраны практически все курсы, которые преподаются в Massachusets Institute of Technology, который по праву считается одним из лучших в мире. На сайте всего 1900 курсов, а тех, которые преподаются на факультете Electrical Engineering and Computer Science я насчитал более 200. Состав большинства курсов: краткие конспекты лекций, подробное описание курса, календарный план, задания на лабораторные работы, задания на курсовые проекты и экзамены, промежуточные модули. К некоторым курсам прилагаются и видеолекции.

смотреть другие сайты
Всего голосов 223: ↑213 и ↓10+203
Комментарии69

Список Javascript библиотек для рисования графиков и диаграмм

Время на прочтение1 мин
Количество просмотров22K
О визуализация графов в вебе говорили здесь, навеяно этой статьей.

Под катом обзор JavaScript библиотек для рисования графов, диаграмм и прочей красоты.
Читать дальше →
Всего голосов 93: ↑89 и ↓4+85
Комментарии36

Highcharts: Красивые, динамические чарты за 5 минут!

Время на прочтение2 мин
Количество просмотров66K
image
Highcharts — библиотека для создания чартов написанная на JavaScript, позволяет легко добавлять интерактивные, анимированные графики на сайт или в веб-приложение. На данный момент чарты поддерживают большое количество диаграмм линейных, круговых, колоночных рассеивающих и многих других типов.

Чарты работают со всеми популярными браузерами, включая Safari на iPhone.
Минимальная версия для IE составляет 6+. Также браузеры поддерживающие Canvas элемент, и в некоторых случаях SVG для графического рендеринга.
Читать дальше →
Всего голосов 139: ↑132 и ↓7+125
Комментарии49

Универсальная on-line проверка грамматики с помощью google ajax search api

Время на прочтение2 мин
Количество просмотров2.7K
Обычно я проверяю английскую грамматику, вбивая в Google куски фраз, и смотрю, что получится.
Если найдено много вариантов, то фраза правильная, если не очень много — то неправильная.

image

Вот, написал сервис, который отсылает запросы в Google, а сам подсвечивает, «правильно», или «неправильно» написаны куски предложения, и местами даже подсказывает — какое слово можно поставить на то, или иное место в предложении.
Еще он показывает в каком именно контексте найдено слово.

Замечательно то, что ему все равно, какой язык вы проверяете.

Читать дальше →
Всего голосов 164: ↑157 и ↓7+150
Комментарии114

EXPLAIN — Самая мощная команда MySQL

Время на прочтение2 мин
Количество просмотров159K
Самая мощная команда в MySQL – это EXPLAIN. EXPLAIN может в точности рассказать вам, что происходит, когда вы выполняете запрос. Эта информация позволит вам обнаружить медленные запросы и сократить время, затрачиваемое на обработку запроса, что впоследствии может значительно ускорить работу вашего приложения.
Читать дальше →
Всего голосов 26: ↑22 и ↓4+18
Комментарии33

The Passenger: 7 минут за 8 лет

Время на прочтение1 мин
Количество просмотров3.7K
image

Продакшен этого великолепного 7-ми минутного мульта, шел на протяжении 8-ми лет.
Делал его всего один человек, в свободное от работы время как хобби. Работа над проектом начиналась в Lightwave3D 5, а в качестве рабочей станции использовался Pentium 133. Полноценный мультфильм, а также и Making Of смотрите под катом.
Читать дальше →
Всего голосов 169: ↑157 и ↓12+145
Комментарии124

Верстка повторяющихся блоков

Время на прочтение3 мин
Количество просмотров14K
Довольно часто при верстке сайта возникает необходимость размещать блоки одинаковой ширины, но разной высоты в контейнере с переменной шириной (читай резиновом). Плюс на этот список может применяться фильтр, который JS-ом скрывает или показывает элементы списка, при этом он не должен разрушать «строки», верстку, или образовывать дыры, поэтому решения на таблицах не катят сразу. Простейший пример — каталог товаров:


Читать дальше →
Всего голосов 109: ↑95 и ↓14+81
Комментарии63

Быстрое добавление ссылок или «прощай Add Reference»

Время на прочтение10 мин
Количество просмотров4.8K
Недавно я допилил одну проблему, которая меня уже очень давно достает. Суть ее в том, что диалог Add Reference в Visual Studio не нужен, если вы берете сборку из одного из тех мест, где их ищет студия. Не нужен он потому, что студия вполне могла бы сама проиндексировать все пространства имен в этих сборках и при написании using Biztalk дать мне возможность добавить ссылку автоматически. Поскольку студия это делать не умеет, пришлось ей помочь.

Если интересно...
Всего голосов 40: ↑28 и ↓12+16
Комментарии23

Дао Вебсервиса. (Или да хватит же изобретать велосипеды!)

Время на прочтение12 мин
Количество просмотров58K
image Недавно на Хабре была опубликована статья под провокационным заголовком и призывом к прекращению изобретений велосипедов в API-строении. Поскольку тема мне интересна, то я просто не мог пройти мимо.
Увы, реальность за хабракатом меня сильно разочаровала — я увидел очередной велосипед, да еще и с квадратными колесами. (Коллеги, ничего личного, только техническое обсуждение.) Правда, авторы честно сказали, что увидели на нескольких сайтах модное слово REST и решили сделать по нему. Только вот поняли они этот «РЭСТ» по-своему, примерно как Дед Щукарь читал и понимал толковый словарь.
В этом топике я призываю по-настоящему покончить с велосипедами в API сайтов. Ведь получается какой анекдот: АПИ разрабатывается для упрощения доступа к сайту и легкости подключения внешних систем, а получается такой, что с ним еще сложнее, чем без него :)

Чуть ниже под катом я подпишу смертный приговор всем велосипедам в универсальных API. Чтобы не быть голословным, я все проиллюстрирую примерами.
Но должен предупредить сразу — после прочтения статьи вы не сможете без рвотного рефлекса смотреть на очередной велосипед Васи Пупкина под гордым названием «универсальное API сайта».

В повествовании будут рассмотрены следующие вопросы:
  1. Базовые технологии: XML-RPC, REST, SOAP и краткое сравнение
  2. Дао вебсервиса
  3. Просветленные API
  4. Как отличить сайтовое API от говна
  5. Выводы

Кто не испугался суровых реалий - вперед
Всего голосов 315: ↑289 и ↓26+263
Комментарии206

Сервер на стероидах: FreeBSD, nginx, MySQL, PostgreSQL, PHP и многое другое

Время на прочтение16 мин
Количество просмотров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. Минусы оптимизации

Кому что-нибудь из этого списка интересно, жмём сюда...
Всего голосов 375: ↑368 и ↓7+361
Комментарии105

Исследование дизайна сайтов портфолио — закономерности и современная практика

Время на прочтение13 мин
Количество просмотров38K
Для этой статьи мы отобрали 55 дизайн студий и студий веб-разработки, проанализировали их сайты портфолио и определили популярные закономерности дизайнов для таких сайтов. Основной целью этого изучения было предоставление фрилансерам и дизайн студиям полезных ориентиров для создания своего собственного портфолио.

Мы сделали мозговой штурм самых важных вопросов касающихся дизайна и задали вопрос дизайнерам со всего света – какие решения они чаще всего должны принимать при создании дизайна для сайта портфолио. Мы также попросили дизайнеров сказать нам какие именно вопросы они бы хотели увидеть проанализированными в данной статье. В итоге у нас получился список из 40 вопросов касающихся дизайна сайта портфолио, которые мы сгруппировали по важности. И, в конце концов, мы искали хорошие сочетания состоявшихся дизайн студий и красивых сайтов портфолио малых и больших агентств.
Идем дальше...
Всего голосов 109: ↑100 и ↓9+91
Комментарии44

Список полезных инструментов для php разработчика

Время на прочтение10 мин
Количество просмотров148K
PHP один из самых широко используемых языков для создания вебсайтов. PHP фреймворки, такие как Zend, CakePHP, CodeIgniter и т.д и open source классы и библиотеки упростили разработку.
Независимо от того, являетесь ли вы опытным разработчиком или новичком, инструменты, которые вы используете, имеют прямое влияние на вашу продуктивность. Здесь собран список действительно полезных утилит и расширений для PHP разработчиков, которые помогут ускорить разработку, и улучшит итоговое качество кода.
Читать дальше →
Всего голосов 214: ↑200 и ↓14+186
Комментарии131

Data Extracting SDK: Часть 1

Время на прочтение4 мин
Количество просмотров1.6K
Data Extracting SDK написан на .NET Framework 3.5 и содержит средства для извлечения и анализа данных из текстовых файлов и web-ресурсов. Прислушиваясь к результатам опроса выкладываю первую версию Data Extracting SDK CTP (Community Technical Preview) на всеобщее обозрение.

Основные возможности:
  • Html Processing — загрузка, анализ html
  • DOM анализ — получение ссылок, изображений, таблиц
  • извлечение ссылок, фильтры, возможность написания своих фильтром, глубокий анализ сайта
  • извлечение электронных адресов, телефонов, urls и т.д.
  • анализ контента сайта (количество элементов, плотность слов)
  • возможности для SEO анализа
Остановимся на основных возможностях SDK.
Читать дальше →
Всего голосов 47: ↑37 и ↓10+27
Комментарии24

8 полезных регэкспов с наглядным разбором

Время на прочтение2 мин
Количество просмотров273K
О мощи и гибкости регулярных выражений написано много, и их использование давно уже является стандартом для различного рода операций над текстом. Пожалуй, чаще всего регэкспы работают при валидации вводимых данных — здесь им практически нет альтернативы, если не считать громоздкий циклический разбор с кучей неочевидных проверок. Начнём с самого простого:

1. Часть ЧПУ (человекопонятный URL)


По сути, слово с дефисами.

Паттерн: /^[a-z0-9-]+$/
short_url

Примеры посерьёзнее
Всего голосов 176: ↑132 и ↓44+88
Комментарии119

Explay CMS 3.0 alpha

Время на прочтение4 мин
Количество просмотров1.2K
Explay CMSСегодня у меня лопнуло терпение и захотелось показать миру Explay CMS 3.0. Прошло уже 8 месяцев с того момента, как я начал делать 3-ю версию. В январе было готово ядро, только вот тогда еще рано было говорить о том, что на нем можно сделать. CMS свою социальность, естественно, не потеряла, и даже приобрела несколько новых и интересных функций. Сейчас же я расскажу вам о том, что достигнуто. Посмотрите и попробуете, надеюсь, сами:)
Читать дальше →
Всего голосов 61: ↑49 и ↓12+37
Комментарии48

Информация

В рейтинге
Не участвует
Откуда
Вильнюс, Литва, Литва
Зарегистрирован
Активность