Pull to refresh
8
0
Zitrix @Zitrix

User

Send message

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

Reading time8 min
Views14K

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

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

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

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

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

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

Reading time6 min
Views67K
Введение

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

Настоящее семантической паутины

Reading time3 min
Views3.4K

Насколько все быстро растет


Я позволю себе опустить некоторые технические тонкости и лишь приведу интересные факты. Да, он оказывается жив и развивается, это я про семантик веб. Здесь есть хорошее описание технического устройства семантической паутины (английский язык, да и вобще слабонервным лучше не открывать и читать лишь вдумчиво).

Далее я расскажу о реальном использовании.
Читать дальше →

Canvas-трансформации доступным языком

Reading time3 min
Views53K
Доброго времени суток, хабравчане! В этой статье я подробно расскажу вам о трансформации и вращении в javascripte. Матрица трансформаций, на первый взгляд, штука непонятная и многие ею пользуются даже не осознавая, что она делает на самом деле, используя готовые значения из интернета. На MDC об этом рассказано скудненько, а информацию в английской Википедии тяжело назвать общедоступной. Постараемся разобраться в этом вместе.
Читать дальше →

Шпаргалка: кеширование картинок, CSS и JS в NGINX

Reading time1 min
Views79K
Заметка для тех, кто не специалист в NGINX, а проблему нужно решить быстро.

Допустим, у вас на сервере стоит NGINX и вы хотите, чтобы вся статика кешировалась у клиента. В конфиге хоста NGINX пропишите это:

server {
listen 80;
server_name mysite.com;
...
# Задаем правила обработки статического контента (типов файлов можно поставить и больше)
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|pdf|ppt|txt|bmp|rtf|js)$ {
root /path/to/document/root/; # Путь к корню вашего сайта
access_log off; # не пишем логи
expires 3d; # кешируем у клиента на 3 дня
}
}

Проверить можно в FireBug во вкладке NET: обновите страницу 2 раза и посмотрите код ответа. Если 200 ОК, то не работает. Если 304 Not Modified, то работает.

Неплохо ускоряет работу сайта.

Лучшие сайты 2010 года по версии TIME

Reading time19 min
Views71K


От полезного до сбивающего с толку, для игроков «по крупному» и для неизвестных личностей, TIME представляет «путеводитель» ко всему самому лучшему, что есть в интернете.
Читать дальше →

Отчёт о Web Standards Days в Киеве. Теперь официально

Reading time2 min
Views919

Не прошло и десяти дней, как мы публикуем официальный отчёт о встрече Web Standards Days, прошедшей в Киеве 18-го сентября. Как это обычно случается, финальная программа сильно отличалась от заявленной ранее — но только в сторону её улучшения. На встрече прозвучало шесть докладов:
  • Веб-стандарты в большом проекте: что помогает, а что мешает. Андрей Сумин, PDF 138 КБ;
  • Про проектирование интерфейсов и немного про Adobe Fireworks. Вадим Пацев, PDF 1,2 МБ;
  • Веб в кривых. Второе рождение SVG. Вадим Макеев, HTML 15,6 МБ;
  • Введение в Web Performance: W3C, Webkit, IE9 и будущее. Николай Мациевский, PDF 4,1 МБ;
  • Разработка веб-приложений. Обзорная экскурсия. Виталий Рыбалка;
  • Обзор новых API JavaScript. HTML5 и самостоятельные черновики W3C. Антон Немцев, HTML 750 КБ.
…причём порядок их следования составлялся налету, по мере появления докладчиков, что добавило некоторой динамики и неожиданности в нашу и без того нескучную программу.
Читать дальше →

Домашний датацентр или как начать не имея за душой ни гроша

Reading time3 min
Views2.1K
датацентр под столомВы молоды, амбициозны, полны сил и идей, и готовы перевернуть весь Мир! Но как правило, все хорошие начинания всегда заканчивается на самом банальном — нет средств для их реализации. Инвесторы готовы вложить в Ваш проект средства, но им нужно доказать «как Вашу состоятельность, так и состоятельность Вашего проекта». А, имея мешок идей и ничего за плечами — есть большая вероятность, что в «Вас Не Поверят». Как начать, не имея стартового капитала?
Читать дальше →

Где-же взять VPS/VDS?

Reading time1 min
Views49K
Снова напал на интернет с вопросом, у кого взять VPS качественно и за недорого.

Хочется небольшого: 500Mhz CPU, 256Mb RAM, >3Gb HDD, с Ubuntu LTS или Debian и неограниченным (разумно большим) трафиком.
Желательно: Xen, Россия, WM, до 20$, с возможностью расти по ресурсам.

Искал на:
www.hostobzor.ru/db/list_firm.php
hosting101.ru
1stat.ru/?show=providers
и потерялся…

Подскажите, пожалуйста, где граблей меньше.

Заранее спасибо за ваши мнения!

Обзор NoSQL систем

Reading time5 min
Views56K
Беспрецедентные объемы данных заставляют разработчиков и бизнес приглядываться к альтернативам реляционных баз данных, используемым вот уже более тридцати лет. В совокупности все эти технологии известны как «NoSQL базы данных».


Основной проблемой является то, что реляционные базы данных не могут справляться с нагрузками актуальными в наше время (мы говорим о high-load проектах). Есть три конкретные проблемных области:
  • горизонтальное масштабирование при больших объемах данных, например как в случае Digg (3 терабайта для зеленых значков, отображаемых, если ваш друг сделал dugg на статье) или Facebook (50 терабайт для поиска по входящим сообщениям) или eBay (2 петабайта в целом)
  • производительность каждого отдельного сервера
  • не гибкий дизайн логической структуры.
Читать дальше →

OMF — микроформат для email. Опыт использования в сервисе чатов

Reading time3 min
Views3.4K
imageСовсем недавно компания Mail.ru разработала открытый стандарт OMF.

Open Mail Format (OMF) — это открытый стандарт разметки почтовых уведомлений. OMF позволяет вам улучшить представление ваших писем в интерфейсе почты Mail.Ru, повышая их эффективность и конверсию.
Ознакомиться с опытом использования...

CouchDB сегодня

Reading time8 min
Views28K


Что такое CouchDB для вас? Вероятно любой, кто хоть немного интересуется популярной нынче темой NoSQL, прекрасно знает общие детали: это такая симпатичная игрушка с map/reduce-запросами, которые пишутся на JavaScript, с которой можно работать, гоняя JSON по HTTP-протоколу, а также не исключено, что слышали, что она fault-tolerant, тобишь не ломается вообще. Дальше этого обычно дело не идёт, в результате CouchDB отправляется в delicious в общую кучу со всякими MongoDB, Cassandra, Hadoop и т.п.

Примерно такого мнения придерживался и я вплоть до недавнего времени, пока не возникла острая необходимость переосмыслить архитектуру текущего проекта (упёршегося лбом в свою реляционную БД) и пересесть на документную базу данных, которая бы умела map/reduce. После того, как более пристально взгялнул на CouchDB, я понял, что он уникален в своём классе, его не следует ставить в один ряд с упомянутыми продуктами. Идеи, которые заложены в CouchDB настолько концептуальны, что способны в корне перевернуть представление о разработке веб-приложений.

О том, что же меня так впечатлило, постараюсь рассказать под катом.
Читать дальше →

К вопросу о кроссбраузерных Data URI

Reading time8 min
Views9.9K
В погоне за оптимизацией сайтов захотел уменьшить количество запросов, не в ущерб размерам оптимизированных файлов.
Цель — передавать в одном файле изображения разных форматов, с разными настройками оптимизации.
Как средство, выбрал data uri и gzip'нутый css файл. Однако IE с data uri работают из рук вон плохо. Но в них есть mhtml. Существовавшая реализация не отвечала моим требованиям, т.к. приходилось 1 файл передавать два раза — раз для IE, в mhtml, и второй для всех остальных, в data uri. В поисках решения наткнулся на статью bolk'а, где описывалось решение для формата jpeg и некоторые теоретические выкладки для gif и png. После почти трехнедельного раскуривания манов мне удалось реализовать решение для gif и png и автоматизировать процесс для всех трех форматов.
ознакомиться

Технический отчет запуска Eventr.com, цифры

Reading time4 min
Views1.5K
image По просьбам хабралюдей выкладываю короткий технический отчет.
Напомню, Eventr – это web-сервис, в котором можно удобно читать RSS-ленты, в два клика обмениваться, делиться интересными записями с другими, вести свой блог.

Мы стартовали днем в воскресенье, 11-го июля, через час легли под хабраэффектом. Собственно, наши волшебные заклинания и цифры под катом.

О чем будет сказано:
  1. Некоторые технические сложности
  2. RSS/Atom читалка, цифры
  3. Хабраэффект, цифры
  4. Грабли
  5. Mongodb, nodejs, redis
Читать дальше →

Common Errors in English Usage

Reading time1 min
Views4.8K
Знание английского для ИТ специалиста — это одно из важнейших профессиональных качеств. Поэтому процесс изучения английского языка должен быть непрерывным. Для изучения рекомендую сайт Common Errors in English Usage, где собрано много типичных ошибок использования различных слов и выражений.
Читать дальше →

В помощь веб-разработчику: эмуляторы мобильных устройств

Reading time7 min
Views26K
Я думаю некоторые из веб-разработчиков сталкивались с задачей создания сайтов и сервисов под мобильные платформы. И проблема возникает в том момент, когда надо протестировать свое творение. И если найти тот или иной девайс все же не проблема, то протестировать на максимальном количеством устройств достаточно сложно. И тут на помощь приходят ОНИ — эмуляторы. В данном посте я рассмотрю вопросы установки и запуска эмуляторов следующих мобильных устройств, с целью запуска на них нужного сервиса: Win Mobile, iPhone, BlackBerry, Android, Symbian^3.
Читать дальше →

Eclipse + QT: установка и настройка

Reading time3 min
Views54K
Достаточно давно стал присматриваться к кроссплатформенному С++ программированию. Не то, чтобы это было мне необходимо, но так для общего развития. И вот что я могу отметить: самая большая вещь, которая доставляет проблемы на этом пути — достаточно высокий порог вхождения в эту область именно по причине инструментария.

Если не рассматривать случай программирования в Emacs, что лично мне кажется пока неким толи анахронизмом, толи экстримом, постоянно сравнивая различные IDE с Visual Studio зачастую приходилось просто ужасаться. И главная проблема этих систем была в том, что за редким исключением они не работали из коробки без напильника.

Вторая проблема — юзабилити. Зачастую ниже среднего. Ранние версии KDevelop оставляли достаточно неоднозначное впечатление.

Третье, чего бы хотелось — интегрированного дизайнера интерфейсов. Его не было практически нигде, если не считать NetBeans (но только для Java), да MonoDevelop (GTK#). И хотя эти IDE весьма достойны, хотелось найти легкий способ программировать именно на C++ с минимальным количеством граблей.

В этой статье я хочу привести пошаговое руководство, что называется «для чайников», по установке на платформу Windows работоспособной конфигурации хорошей IDE Eclipse и хорошей библиотеки QT. Стартовую площадку, так сказать.

UPD: Что касается именно программирования в QT, то могу порекомендовать просто шикарную книжку на эту тему:
Jasmin Blanchette, Mark Summerfield: Разработка графического интерфейса с помощью QT3 (перевод Андрей Киселёв)

UDP2: Ещё литература:
Русский перевод документации из QAssistant
Qt4. Профессиональное программирование на C++
Jasmin Blanchette, Mark Summerfield: Qt 4. Программирование GUI на C++
Foundations of QT Development

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

Когда Photoshop отображает совсем не то, что надо

Reading time3 min
Views290K
example

Такая вот ситуация: дизайнер присылает макет, а у верстальщика открывается какая то лабуда светлая, или темная (если верстальщик испольует МасOS, а дизайнер Win.). Или же верстальщик сохраняет картинку, а там цвета другие стали.

Разберемся почему так и как с этим жить.

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

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity