Как стать автором
Обновить
8
0
Александр Голубев @algol

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

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

Яндекс выложил в опенсорс бету фреймворка userver

Время на прочтение10 мин
Количество просмотров76K
Сегодня мы анонсируем выход в опенсорс фреймворка userver для создания высоконагруженных приложений. Для нас это важный способ поделиться опытом в разработке микросервисов, который мы накопили. Вот ссылка на Гитхаб-репозиторий c исходным кодом, документацией, примерами, шаблоном для создания своих сервисов (с настроенным CI, сборкой и тестовым окружением) и сервисом динамических конфигов. Всё это опубликовано под лицензией Apache 2.0.



🐙userver позволяет быстро создавать эффективные микросервисы на языке C++ и уже много лет активно используется в Яндекс Go, Еде, Лавке, Доставке, Маркете, финтехе и других проектах. Вот из каких требований мы исходили в процессе разработки:

  • Простота. Стажёр или студент, приходя к нам, может уже через неделю написать и отправить в продакшен новый микросервис.
  • Надёжность. Многие ошибки, в том числе и связанные с многопоточностью, можно поймать на этапе компиляции. Кроме того, фреймворк даёт подсказки по исправлению проблем.
  • Полнота. В userver есть всё необходимое для тестирования, работы с разными базами данных, кеширования, логирования, трейсинга, распределённых блокировок, работы с JSON, BSON, YAML, изменения параметров сервиса на лету и так далее.

Сейчас я расскажу о том, как возникла идея userver, как фреймворк развивался, в каких задачах его сейчас используют и почему именно выход в опенсорс был логичным следующим шагом. А затем приведу пример написания нового микросервиса.
Читать дальше →
Всего голосов 141: ↑137 и ↓4+169
Комментарии142

Яндекс открывает Testsuite

Время на прочтение8 мин
Количество просмотров26K


Сегодня мы открываем исходный код testsuite — фреймворка для тестирования HTTP-сервисов, который разработан и применяется в Яндекс.Такси. Исходники опубликованы на GitHub под лицензией MIT.

С помощью testsuite удобно тестировать HTTP-сервисы. Он предоставляет готовые механизмы, чтобы:

  • Взаимодействовать с сервисом через вызовы его HTTP API.
  • Перехватить и обработать HTTP-вызовы, которые сервис отправляет во внешние сервисы.
  • Проверить, какие вызовы во внешние сервисы сделаны и в каком порядке.
  • Взаимодействовать с базой данных сервиса, чтобы создать предусловие или проверить результат.
Читать дальше →
Всего голосов 45: ↑36 и ↓9+43
Комментарии28

Динамическое ценообразование, или Как Яндекс.Такси прогнозирует высокий спрос

Время на прочтение5 мин
Количество просмотров69K


Раньше для вызова такси приходилось звонить на разные номера диспетчерских служб и ждать подачу машины полчаса или даже больше. Теперь сервисы такси хорошо автоматизированы, а среднее время подачи автомобиля Яндекс.Такси в Москве около 3-4 минут. Но стоит пойти дождю или закончиться массовому мероприятию, и мы вновь можем столкнуться с дефицитом свободных машин.

Меня зовут Скогорев Антон, я руковожу группой разработки эффективности платформы в Яндекс.Такси. Сегодня я расскажу читателям Хабра, как мы научились прогнозировать высокий спрос и дополнительно привлекать водителей, чтобы пользователи могли найти свободную машину в любое время. Вы узнаете, как формируется коэффициент, влияющий на стоимость заказа. Там всё далеко не так просто, как может показаться на первый взгляд.

Читать дальше →
Всего голосов 72: ↑66 и ↓6+60
Комментарии280

Обзор лучших докладов с HighLoad++ 2017

Время на прочтение8 мин
Количество просмотров13K
В ближайших нескольких статьях я расскажу о лучших (по мнению участников) докладах HighLoad++ 2017. Организаторы любезно открыли доступ к видеозаписям, которые вы сможете прямо тут и посмотреть.

Goth2Boss: ломка и отходняки при переходе из инженера в тимлиды / Артем Каличкин




Для меня это открытие года — на мощной технологической конференции первое место занимает доклад, хоть и от технаря, но про УПРАВЛЕНИЕ. Конечно можно рассуждать на тему того, что гуманитарии более охотно ставят оценки и по-умолчанию более лояльная аудитория, но факт остаётся фактом.
Всего голосов 19: ↑16 и ↓3+13
Комментарии0

СТО: мечты сбываются? И другие доклады для тимлидов с HighLoad++

Время на прочтение6 мин
Количество просмотров13K
Продолжаем обзор самых популярных докладов HighLoad++ 2017 по тематике тимлидерства. В этой части мы расскажем о выступлениях для уже состоявшихся руководителей — в первую очередь о движении из тимлида на более высокие посты. Ну и немного поговорим о психологии.


Всего голосов 15: ↑14 и ↓1+13
Комментарии1

Как технологии Яндекс.Такси приближают будущее личного и общественного транспорта

Время на прочтение6 мин
Количество просмотров52K
Некоторое время назад Яндекс.Такси стало предлагать вызвать такси не точно туда, где вы находитесь, а пройти несколько метров, но доехать быстрее и дешевле.



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

Читать дальше →
Всего голосов 126: ↑124 и ↓2+122
Комментарии231

Эффективное хранение: как мы из 50 Пб сделали 32 Пб

Время на прочтение9 мин
Количество просмотров24K

Видео доклада




Текстовая Версия


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


Индексы и тела писем составляют 15 % объёма, файлы — 85 %. Место для оптимизаций надо искать в файлах (аттачах в письмах). На тот момент у нас не была реализована дедупликация файлов; по нашим оценкам, она может дать экономию в 36 % всего объёма почты: многим пользователям приходят одинаковые письма (рассылки социальных сетей с картинками, магазинов с прайсами и т.д.). В этом посте я расскажу про реализацию такой системы, сделанной под руководством PSIAlt.
Всего голосов 87: ↑84 и ↓3+81
Комментарии88

Общение на равных: как один CEO уравнял свою зарплату с зарплатой коллег и повысил лояльность сотрудников

Время на прочтение4 мин
Количество просмотров21K

imageНедавно мы в команде блокчейн-сервиса Wirex обратили внимание на материал издания TODAY, повествующий о нетипичной инициативе Дэна Прайса, сооснователя и CEO процессинговой компании Gravity Payments.


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


С тех пор многое изменилось. На смену первоначальной волне одобрения неизбежно пришла критика: «А не было ли все это ловким рекламным трюком?». Прайс настаивает, что не было. Однако необычный эксперимент или, по крайней мере, продуманный бизнес-ход очевидно имел место.

Читать дальше →
Всего голосов 29: ↑22 и ↓7+15
Комментарии49

Как новые руководители разрушают доверенные им компании

Время на прочтение26 мин
Количество просмотров401K
Эта статья – о рисках смены руководства в больших компаниях и характерных явлениях при попытках игнорировать закон эффективного управления собственностью:
Эффективно управлять можно только той собственностью, которую мог бы создать сам.
Кто не может создать, – будет только разрушать!
И.А. Дедюхова, Кодекс Хамурапи
Картинка для привлечения внимания читателей из поколений Y и Z:


Краткое содержание


Новый директор себе в подчиненные и советники пригласит своих «проверенных людей». Увеличение штата топ-менеджеров в условиях фиксированного ФОТ повлечет за собой сокращение рядовых сотрудников на значительный процент.
Новый директор в первую очередь будет сокращать те подразделения, работу которых он не понимает. Под прессом психологического давления руководители этих подразделений возмут на себя обязательства самостоятельно разработать планы по сокращению и принять на себя все риски их реализации.
Сокращения пройдут под флагом повышения эффективности, но для «непонятных директору» подразделений не смогут сформулировать критерии этой эффективности, кроме «минимизации затрат». Цель по минимизации затрат без дополнительных обоснованных ограничений – это цель по уничтожению, и не имеет отношения к настоящей оптимизации.
Отсекая непонятные ему части компании (выводя в аутсорс и т.п.), директор попытается превратить компанию в ту, работу которой он полностью способен понять, которой он в полной мере способен управлять.
Проблему нехватки знаний в технической области новый директор и его команда компенсируют «помощью» от западных консалтинговых компаний. Это приведет к ситуации внешнего управления, причем без всякой ответственности за диктуемые извне решения.
Внешняя и внутренняя отчетность о работе компании до самого конца не будет показывать никаких признаков проблем, т.к. тому, кто принес плохие вести не выдают премию, а рубят голову.


Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии95

Новый алгоритм синхронизации Яндекс.Диска: как не подавиться 900 000 файлов

Время на прочтение6 мин
Количество просмотров101K
Яндекс.Диск — один из немногих сервисов Яндекса, частью которого является программное обеспечение для десктопа. И одна из самых важных его составляющих — алгоритм синхронизации локальных файлов с их копией в облаке. Недавно нам пришлось его полностью поменять. Если старая версия с трудом переваривала даже несколько десятков тысяч файлов и к тому же не достаточно быстро реагировала на некоторые «сложные» действия пользователя, то новая, используя те же ресурсы, справляется с сотнями тысяч файлов.

В этом посте я расскажу, почему так получилось: чего мы не смогли предвидеть, когда придумывали первую версию ПО Яндекс.Диска, и как создавали новую.



Прежде всего, о самой задаче синхронизации. Технически говоря, она состоит в том, чтобы в папке Яндекс.Диска на компьютере пользователя и в облаке был один и тот же набор файлов. То есть такие действия пользователя, как переименование, удаление, копирование, добавление и изменение файлов, должны синхронизироваться с облаком автоматически.
Читать дальше →
Всего голосов 120: ↑116 и ↓4+112
Комментарии121

Лекции Технопарка. 1 семестр. С/С++

Время на прочтение6 мин
Количество просмотров110K
Мы продолжаем наши еженедельные публикации учебных материалов Технопарка. Предыдущие лекции были посвящены web-технологиям в целом, а также алгоритмам и структурам данных. В третьем блоке лекций рассказывается о языках С и С++.

Лекция 1. Язык С. Основы организации и использования оперативной и сверхоперативной памяти


Лекция начинается с введения в язык С: рассказывается об истории его появления, особенностях, преимуществах и недостатках, о сферах применения. Описываются основы препроцессорной обработки, рассматриваются вопросы управления памятью (модели управления памятью, области видимости объектов хранения) и производительность программ на языке С. Обсуждается связывание объектов хранения и их инициализация. Затем рассказывается о классах памяти в языке С. Следующая часть лекции посвящена проблематике указателей, а также работе с одномерными массивами. В заключение рассматривается стандарт POSIX и вопросы переносимости.


Читать дальше →
Всего голосов 72: ↑70 и ↓2+68
Комментарии83

Tarantool 1.6 от первого лица

Время на прочтение3 мин
Количество просмотров53K
Привет. Это пост о новой версии Тарантула «от автора». Интернет занятно устроен: если поискать про Тарантул, то найдётся статья от 2011 года, о версии 1.3. И ещё какой-то перфоратор, кажется. На форумах-бордах вообще стоит густой туман. Тарантул «ну это как Редис, только»…

Или ещё, недавно сделал для себя открытие, на Тостере кто-то написал «София — это такое append-only хранилище по типу Тарантула». С такими постами я скоро стану фанатом сайта «сделано у нас», автомата Калашникова и Саяно-Шушенской ГЭС. Правда, мне сложно понять, почему мы восхищаемся западными инструментами, при этом представления не имеем о своих. Итак, Tarantool 1.6. В чём фишка?
Читать дальше →
Всего голосов 96: ↑92 и ↓4+88
Комментарии43

Рюкзак для программиста

Время на прочтение4 мин
Количество просмотров81K


Главным рабочим инструментом увлечённого своим делом программиста является ноутбук. Ты не привязан к конкретному офисному столу, да и вообще к офису, если на то пошло. Ноутбук для программиста и рабочее место, и центр развлечений, и окно в мир сеть. Но такая свобода имеет один недостаток: ноутбук вещь не маленькая, в карман не положишь. Можно, конечно, носить его в сумке через плечо, но это не слишком удобно: надо придерживать рукой, поддергивать соскальзывающий ремень, да и сама сумка получается широкой и жёсткой. В общем, чемодан без ручки. Совсем другое дело — рюкзак. Руки свободны, нагрузка распределена равномерно и гораздо комфортнее, ничего не болтается сбоку. Да и ноутбук защищён от всяких коллизий не в пример лучше. Неудивительно, что рюкзаки сегодня столь популярны среди всех слоёв населения, не только среди программистов. А уж в дальних поездках и перелётах рюкзаки вообще вне конкуренции. Поэтому стоит уделить особое внимание выбору модели, которая удовлетворяет всем вашим нуждам, эстетическому вкусу и анатомическим особенностям. Так что если вам приходится носить ноутбук, а ваш текущий рюкзак надоел или чем-то не нравится, или вы только подумываете перейти на рюкзак, то рекомендуем посмотреть эту подборку. Возможно, подберёте для себя интересную модель.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Комментарии63

6 ссылок о том, что Google знает о вас

Время на прочтение2 мин
Количество просмотров451K
Не желаете ли узнать о том, что Google знает о вас? Вот 6 ссылок, которые покажут вам некоторые данные, собранные гуглом.

1. Ваш профиль в Google

Google создаёт профиль с вашими основными данными – возраст, пол, интересы. Эти данные используются для показа релевантных объявлений. Вы можете просмотреть эту информацию здесь:

www.google.com/ads/preferences

(прим.перев. – в моём случае гугл не блещет информацией. Я не состою в Google+, а по посещённым мною сайтам гугл не смог определить мой пол, а возраст определил в 65+ лет).
Читать дальше →
Всего голосов 109: ↑102 и ↓7+95
Комментарии56

Основная ловушка маркетинга и пиара или что бывает, если вы врёте

Время на прочтение8 мин
Количество просмотров128K


Продолжаю рассказывать про человеческий маркетинг. Когда Англия вошла во Вторую Мировую, был очень примечательный эпизод. Военная пропаганда – это то, чему обычно не все и не всегда верят. Официальные каналы преуменьшают потери, преувеличивают успехи. Я сейчас не уверен в числах, но первое же радиосообщение с фронта про воздушный бой было про то, что сбито 40 английских истребителей. Позже пришла информация, что меньше – 34. Через пару дней нашли ещё пилота, совершившего аварийную посадку.

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

Есть первый железный принцип хорошего маркетинга и пиара – никогда не обещать ни на грамм больше, чем можешь сделать. И никогда не врать. Стоит хоть немного увлечься – и вот в какой-то момент ты станешь обманывать сам себя.
Читать дальше →
Всего голосов 210: ↑199 и ↓11+188
Комментарии158

CLion — долгожданная IDE от JetBrains для С/С++ разработчиков — открывает публичный EAP

Время на прочтение4 мин
Количество просмотров144K
Последнее время ни один пост от нашей компании не обходился без традиционного вопроса от читателей, «А когда же выйдет ваша кросс-платформенная C/C++ IDE?». И вот сегодня, наконец, мы готовы сказать: Public Early Access Program началась!



Если коротко: тут — скачать, здесь — почитать ознакомительную инструкцию, а под катом — подробности.
Читать дальше →
Всего голосов 165: ↑163 и ↓2+161
Комментарии268

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

Время на прочтение6 мин
Количество просмотров37K
Самая частая из проблем, с которыми я встречаюсь в проектах, — что менять в первую очередь, на чём фокусироваться. «Как» все знают или считают что знают. У меня припасено несколько хаков, которые позволяют за полдня провести первичный анализ, выявляющий точки фокуса.

image

В этот раз я хочу поделиться одним из них, на примере работы с командой одного успешного стартапа на прошлой неделе.
Читать дальше →
Всего голосов 26: ↑20 и ↓6+14
Комментарии12

Как в Облаке Mail.Ru появилась защита от вирусов

Время на прочтение5 мин
Количество просмотров25K


Всем привет, меня зовут Юрий Лазарев, я системный администратор Облака Mail.Ru. Недавно мы внедрили автоматическое антивирусное сканирование всех загружаемых в хранилище файлов. Теперь весь контент проверяется Антивирусом Касперского, чья продукция уже используется для защиты от вирусов в Почте Mail.Ru. Кроме того, были просканированы файлы, залитые в Облако с момента его запуска в прошлом году. Реализовать подобную проверку в условиях высоконагруженного сервиса, сохраняя при этом такую же высокую скорость работы, — достаточно сложная задача.

В качестве аналогии можно сравнить процесс строительства одноэтажного дома и небоскрёба. Одноэтажный дом может построить даже человек без глубоких знаний и большого опыта, и эта конструкция будет худо-бедно стоять и служить. С небоскребом все гораздо сложнее: конструкцию такого здания необходимо серьёзно просчитывать с точки зрения несущей способности грунта, ветровых нагрузок и множества других факторов. Так и антивирусная проверка в облачном сервисе организована совсем не так, как на домашних компьютерах или даже в корпоративных сетях.

Если вы хотите поподробнее узнать, что представляет собой архитектура Облака, то можно почитать предыдущую статью на Хабре. Это даст понимание того, как протекает процесс сохранения файла и его заливка в Облако. А здесь мы опишем, как нам удается проверять на вирусы петабайты данных в нашей высоконагруженной системе, не теряя при этом ни в качестве работы сервиса, ни в скорости загрузки и проверки файлов.
Читать дальше →
Всего голосов 80: ↑52 и ↓28+24
Комментарии42

Облако Mail.Ru на iPad

Время на прочтение2 мин
Количество просмотров18K


В начале этого года мы писали о том, как создавался наш сервис Облако Mail.Ru. За прошедшее с его запуска время мы выпустили мобильные клиенты и включили сервис в программу поиска уязвимостей. Почти сразу мы начали получать вопросы от владельцев iPad'ов, когда же выйдет приложение Облака для их планшетов. И сегодня мы хотим поделиться еще одной новостью из жизни Облака Mail.Ru — долгожданная версия наконец вышла. Раньше владельцы планшетов были вынуждены устанавливать iPhone-версию, их доля достигала почти 20% всех установок iOS-клиента.
подробности и вакансия программиста C под катом
Всего голосов 69: ↑44 и ↓25+19
Комментарии36
1

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность