Pull to refresh
  • by relevance
  • by date
  • by rating

За кулисами Hotmail

IT-companies
Translation
imageПривет, меня зовут Артур де Хаан, и я отвечаю за тестирование и системное проектирование в Windows Live. Я бы хотел дать вам заглянуть за кулисы Hotmail, и рассказать вам больше о том, что необходимо для создания, развертывания и запуска Windows Live Hotmail в таких глобальных масштабах.
Читать дальше →
Total votes 98: ↑58 and ↓40+18
Views994
Comments 44

F3: маленький PHP-фреймворк с огромными возможностями

Website development


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

Fat-Free чем-то похож на известный Ruby-фреймворк Sinatra. Автор Fat-Free помешан на минимализме и чистоте кода, что положительно отразилось на этом простом каркасе для разработки самых разнообразных приложений.

Fat-Free состоит из одного файла и весит всего 55KB. При этом фреймворк обладает таким функционалом: специфический и довольно удобный шаблонизатор, гибкое кеширование, автоматическая защита от спама, интегрированные средства для юнит тестов, профайлер кода.

Он настолько маленький и быстрый, что даже может использоваться для контроля траффика Web-сервера.

Это, также, единственный фреймворк, который защищает Ваше приложение от хотлинкинга и DoS атак.
Читать дальше →
Total votes 172: ↑152 and ↓20+132
Views25K
Comments 102

Два подхода к тестированию производительности. Выбираем

IT systems testing
Данная статья описывает наиболее распространенные подходы к тестированию производительности приложений; пользуясь аналогиями «из жизни» и примерами из опыта автора, показывает, почему так делать нельзя; и, наконец, пытается заронить искру понимания важности нагрузочного тестирования в светлые умы разработчиков, менеджеров и прочих хороших людей.

Начнем с пары историй.

История А.

На днях разговаривал с одним программистом. Пишет он на С++, работает в крупной компании в Чикаго; софтом, к созданию которого он причастен, активно пользуются финансовые и трейдерские компании. У нас, говорит, в продукте 600 тысяч строк кода. Начиналось все с небольшого приложения для анализа биржевой статистики, и вот за 20 лет вымахал такой монстр. Здорово, говорю. Внушает уважение. И как вы его тестируете, вашего монстра? Для этого, отвечает мне программист, есть специальный индус. Он какие-то тест кейсы выполняет, отчеты пишет. А до него этим менеджер один занимался, но тот все больше ручное тестирование делал. Новые функции проверял, например. Теперь вот индус. Хорошо, продолжаю выпытывать я, это функциональное тестирование. А производительность вы как-то тестируете? Нет, говорит, если клиенты начинают жаловаться на медленную работу, мы тогда сами ищем узкие места и сами же из исправляем. Кто разрабатывает продукт, тот его и знает лучше. Какой тестер с этим справится?

Умный человек, подумал я, а говорит глупости.

Читать дальше →
Total votes 89: ↑74 and ↓15+59
Views6.6K
Comments 72

[Перевод] Java Best Practices. Преобразование Char в Byte и обратно

Java
Сайт Java Code Geeks изредка публикует посты в серии Java Best Practices — проверенные на production решения. Получив разрешение от автора, перевёл один из постов. Дальше — больше.

Читать дальше →
Total votes 37: ↑31 and ↓6+25
Views31K
Comments 35

Как получить и измерить высокоскоростное соединение по TCP

System administrationNetwork technologies
Надежная передача данных в Интернете осуществляется на базе протокола TCP (Transmission Control Protocol), спецификация к которому была опубликована почти 30 лет назад. Алгоритм TCP (RFC793), позволяет подключенному устройству адаптироваться для работы в сети на скоростях в пределах десятков мегабит в секунду и задержки до 100 секунд. С бурным развитием новых технологий передачи данных, уже через 10 лет после внедрения стало ясно что производительность протокола не будет хватать для более широких каналов.
Читать дальше →
Total votes 106: ↑105 and ↓1+104
Views26K
Comments 41

Публичные и приватные вычислительные облака — реальный опыт использования

«LifeStreet Media» corporate blog
Sandbox
Недавно компании Box.net и Zynga устроили презентацию об использовании в своей инфраструктуре публичных вычислительных облаков. Тема заинтересовала меня, особенно, в свете отказа в апреле 2011 года нескольких зон доступности (Availability zones) облака Amazon EC2, сделавшего недоступными несколько крупных интернет ресурсов и игр на Facebook на несколько дней. Презентации были изложены очень кратко, конкретные детали реализации докладчики не раскрыли. Но даже поверхностные данные представляют интерес.
Читать дальше →
Total votes 19: ↑17 and ↓2+15
Views2.2K
Comments 11

OpenCL: универсальность и высокая производительность или не так все просто?

High performance
Sandbox
На Хабре уже были статьи об OpenCL, CUDA и GPGPU со сравнениями производительности, базовыми понятиями и примерами, поэтому рассказывать об основах и принципах работы я тут не буду, даже код не покажу. Но я хочу описать в чем заключаются реальные трудности при использовании GPU (про ограничения и их последствия), почему нельзя сравнивать производительность CPU и GPU, а также про то насколько “универсален” OpenCL на самом деле.
Читать дальше →
Total votes 78: ↑77 and ↓1+76
Views9.4K
Comments 55

OpenCL: мы дождались — версия 1.1 от nVidia, а что нового?

High performance

Немного истории или обещанного три года ждут


Чуть больше года назад Khronos Group представила новую версию OpenCL 1.1 и nVidia сразу похвасталась тем, что у нее уже готов пре-релиз драйвер с поддержкой нового стандарта. Все бы хорошо, да только пре-релиз — это не рабочий инструмент (тут и в официальных драйверах багов хватает, а в тестовой версии уж подавно), поэтому разработчики честно ждали релиза новой версии. Вышла CUDA 4, а OpenCL'а все не было и не было. Причем из новой версии драйверов исключили даже пре-релиз версию OpenCL, т.е. приходилось выбирать между старый драйвер с CUDA 3 + OpenCL 1.1 или новый драйвер с CUDA 4 + OpenCL 1.0. Но сегодня свершилось! Разработчикам пришло письмо о том, что финальная версия уже доступна в официальных драйверах 280.13, правда пока что бета версии, но это не надолго.

Итак, я решил вспомнить о том, что же там такого нового и хорошего в новой версии, поделиться комментариями о том зачем та или иная функция может понадобится и есть ли подводные камни о которых надо знать.
Читать дальше →
Total votes 24: ↑23 and ↓1+22
Views2.4K
Comments 7

Новые средства и методы оптимизации производительности и отказоустойчивости на примере MS SQL 2012 (RC0): Denali

DEPO Computers corporate blogMicrosoft SQL Server
В скором времени выйдет в свет Пока мы готовили эту статью Microsoft уже выпустила MS SQL Server 2012: RTM и совсем уже скоро выйдет финальная версия продукта, в котором планируется множество интересных нововведений.

Охватить их все в одном материале довольно трудно, поэтому остановлюсь только на двух из них, которые показались наиболее интересными — связаны они с повышением производительности и отказоустойчивости. Рассматривались они на примере релиз-кандидата, но не думаю, что в финальном релизе что-то существенно изменится.

Читать дальше →
Total votes 18: ↑14 and ↓4+10
Views15K
Comments 6

А что вы знаете о высоких нагрузках?

ITmozg corporate blogWebsite developmentProgramming

Во всем мире подозревают, что лучшие разработчики, архитекторы, системные администраторы и другие IT-специалисты родом из России.

Было создано много крутых highload проектов, но, к сожалению, сейчас у нас нет комьюнити, где бы мы могли постоянно собираться, общаться и делиться опытом.
С другой стороны у нас очень многие любят писать свои «велосипеды», а не использовать уже готовые решения, которые позволяют сильно сократить время на разработку и внедрение.
Поэтому мы решили постепенно исправлять данную ситуацию:
ITmozg.ru организует конференцию по высоконагруженным системам High Performance Conference.
Своим опытом будут делиться Гуру, которые не понаслышке знают о высоких нагрузках:

  • Badoo
  • Mail.ru Group
  • ITmozg.ru
  • Фотострана




Читать дальше →
Total votes 75: ↑62 and ↓13+49
Views25K
Comments 77

High Performance Conference — 9 августа

ITmozg corporate blogWebsite developmentProgramming
image

Добрый день, хабрачитатели!
Как мы уже ранее писали, 9 августа состоится конференция по высоким нагрузкам High Performance Conference.
Количество полученных заявок и ваши мотивационные письма показали, что данная тема интересна широкому кругу читателей, поэтому… онлайн трансляции быть!
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Views6.8K
Comments 62

Ускоряем node.js: нативные модули и CUDA

High performanceWebsite developmentNode.JS
Иногда разработчики различных веб-проектов сталкиваются с необходимостью обработки больших объемов данных или использованием ресурсозатратного алгоритма. Старые инструменты уже не дают необходимой производительности, приходится арендовать/покупать дополнительные вычислительные мощности, что подталкивает к мысли переписать медленные участки кода на C++ или других быстрых языках.

В этой статье я расскажу о том, как можно попробовать ускорить работу Node.JS (который сам по себе считается довольно быстрым). Речь пойдет о нативных расширениях, написанных с помощью C++.
Читать дальше →
Total votes 58: ↑52 and ↓6+46
Views21K
Comments 35

А что вы знаете о высоких нагрузках: часть вторая

ITmozg corporate blogHigh performance
Первый блин далеко не всегда комом. Организованная нами в августе конференция по высоким нагрузкам HPC прошла на ура, поэтому мы продолжаем проводить подобные мероприятия.


6 октября в рамках IT-фестиваля профессионального развития BitByte будет проведена HPC-конференция.
Читать дальше →
Total votes 21: ↑16 and ↓5+11
Views13K
Comments 19

Настройка нескольких экземпляров Postfix на одном сервере

High performance
Tutorial
Хочу поделиться с Вами одним из вариантов настройки и использования Postfix’a, когда в нашем распоряжении есть несколько IP с которых можно вести доставку писем.

Задача стояла приблизительно такая. Необходимо настроить на одном сервере с двумя интерфейсами, Postfix с разными очередями для разных внешних IP. Пример на картинке.



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

Читать дальше →
Total votes 29: ↑26 and ↓3+23
Views18K
Comments 5

Записи докладов с конференций по высоким нагрузкам HPC

Website developmentProgramming
Записи с последней конференции HPC — High Performance Conference, состоявшейся 6 декабря 2012, никак не анонсировались, хотя заслуживают внимания.

Под катом видеозаписи следующих докладов:

  1. Практические вопросы использования NOSQL в высоконагруженном проекте
    Дмитрий Ананьев, Руководитель группы разработки новых сервисов, Мамба
  2. Как работает «умная живая миграция» в Jelastic
  3. Дмитрий Лазаренко, Директор R&D, Jelastic Russia
  4. Parallels Cloud Server как платформа для высокопроизводительных систем
    Дмитрий Мишин, Team-lead отдела серверной виртуализации, Parallels
  5. Облачная платформа Windows Azure для высоконагруженных проектов
    Владимир Юнев, Technical evangelist, DPE, Microsoft Russia


и одно видео с фестиваля профессионального развития BitByte:

  1. Badoo Desktop: оптимизация приложения на миллион юзеров
    Руководитель проекта десктопных приложений компании Badoo.



Читать дальше →
Total votes 53: ↑46 and ↓7+39
Views17K
Comments 10

Ускоряем Nginx за 5 минут

High performance
image
Попытайтесь повторить это сами

Как правило, настроенный должным образом сервер Nginx на Linux, может обрабатывать 500,000 — 600,000 запросов в секунду. Но этот показатель можно весьма ощутимо увеличить. Хотел бы обратить внимание на тот факт, что настройки описанные ниже, применялись в тестовой среде и, возможно, для ваших боевых серверов они не подойдут.

Минутка банальности.

yum -y install nginx

На всякий пожарный, создадим бэкап исходного конфига.

cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
vim /etc/nginx/nginx.conf

А теперь можно и похимичить!
Бдыжь-бдыжь
Total votes 203: ↑138 and ↓65+73
Views234K
Comments 127

Как работает Stack Overflow — железо

High performance
Translation
Хотелось бы сказать, что Stack Overflow — масштабный проект, но это не так. Я имею ввиду мы добились многого, но я не могу назвать наш проект “большим”, ещё рано. Давайте я приведу в пример некоторые цифры — с какой нагрузкой мы имеем дело сейчас. Срез статистики за 24 часа от 12 ноября 2013 года. Это обычный будний день. Отмечу, что здесь представлена информация только по нашим собственным вычислительным мощностям, без CDN.


Читать дальше →
Total votes 163: ↑159 and ↓4+155
Views78K
Comments 72

Один год из жизни проекта Ответы@Mail.ru

Mail.ru Group corporate blogHigh performance


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

Все началось с того, что мой контракт подошел к концу (в течение года я участвовал в работе над почтой Mail.ru). «Снова меня ждут приключения», — пронеслось в мыслях, — «новая страна, новая работа». Я пошел к своему начальству и в ходе обсуждений все-таки получил порцию приключений в виде интересной задачки — заняться проектом Ответы.
Читать дальше →
Total votes 135: ↑98 and ↓37+61
Views31K
Comments 51

Рецепт «Быстрых данных» на основе решения для больших данных

Dell Technologies corporate blogHigh performanceWebsite developmentHadoop
source: http://searchsoa.techtarget.com/photostory/2240203721/Five-potential-big-data-problems-and-solutions/5/Velocity-Catch-it-Capture-fast-moving-data-and-use-it

Источник изображения

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

Свой «рецепт» мы смастерили из уже существующих «ингредиентов»: железки и программного инструмента. Сначала я расскажу, каким образом перед нами возникла задача ускорения доступа. Затем рассмотрим железку и программный инструмент. В заключение поговорим о двух проблемах, с которыми нам пришлось столкнуться в ходе работы.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Views7.8K
Comments 1

«Софт + коробочный сервер» или комплексное решение?

Dell Technologies corporate blogHigh performance
Translation
Чад, и чего же ты хочешь сказать этим заголовком?

На прошлой неделе у меня была дискуссия с японскими партнерами на тему программно-определяемых хранилищ. Обсудили, что EMC делает в этом направлении, а также поделились мыслями по поводу того, что следует делать партнерам. Интересно, что они были полностью сконцентрированы на экономических моделях применения связки «софт + сервер общего назначения». Казалось, они даже находили отличия этих моделей от других там, где я различий вообще не видел.

А за неделю до этого – когда я был в Австралии – у меня было множество разговоров с клиентами на тему сценариев разворачивания Hadoop. В частности, речь шла о том, когда имеет смысл использовать для этого Isilon. Все клиенты мыслили одинаково: взять дистрибутив и проинсталлировать его на коробочные сервера. Поначалу они никак не могли принять идею, что решение на базе Исилона может быть лучше, производительнее и дешевле. Но все-таки они к этому пришли.
Далее...
Total votes 34: ↑17 and ↓170
Views4.2K
Comments 0