Twitter

System Design. Подготовка к сложному интервью - Глава 7 - Проектирование генератора уникальных идентификаторов в распределенных системах

System Design. Подготовка к сложному интервью - Глава 7 - Проектирование генератора уникальных идентификаторов в распределенных системах

Переводы: EN

Генерация уникального идентификатора кажется простой задачей, но не в высоконагруженных распределенных системах!

Эта тема состоит из:

  • Понимание требований и почему это сложная задача
  • Возможные решения:
    • Репликация с несколькими мастерами
    • Универсальный уникальный идентификатор (UUID)
    • Сервер билетов
    • Подход Twitter SNOWFLAKE (похоже, что он наилучший!)
  • Подробности:
    • Штамп времени
    • Номер последовательности
  • Другие вопросы
    • Синхронизация часов
    • Настройка длины секции
    • Высокая доступность

Эти пункты раскрыты в очень интересной главе 7 книги:

“System Design. Подготовка к сложному интервью” Алекса Сюй. Оригинал: “System Design Interview – An insider’s guide” by Alex Xu

Высоконагруженные приложения - Глава 1 - Надежные, масштабируемые и удобные в сопровождении приложения

Высоконагруженные приложения - Глава 1 - Надежные, масштабируемые и удобные в сопровождении приложения

Переводы: EN

Ранее в этом году книжный клуб нашей компании изучил отличную книгу:

Martin Kleppmann - Designing Data-Intensive Applications

Мартин Клеппман - Высоконагруженные приложения. Программирование, масштабирование, поддержка

Это - лучшая книга о создании комплексных масштабируемых программных систем, которые я когда-либо читал. 💪

Как обычно (чтобы лучше усвоить) я подготовил краткий обзор и майнд-мапу.

Глава 1:

  • Строительные блоки приложений
  • Что такое надежность, масштабируемость и ремонтопригодность. Примеры и определения.
    • Неисправности и отказы
    • Производительность, нагрузка, задержка и время отклика
    • Работоспособность, простота, эволюционируемость
  • Почему вы должны убивать свои сервера случайным образом 😅
  • Как Twitter доставляет 12 000 твитов в секунду до 300 000 пользователей в секунду. (Очень интересно!)
  • Сколько денег Amazon теряет за каждые 100мс задержки ответа
  • Как быстро рассчитать персентили для мониторинга времени отклика в PROD

Скачать всю майнд-мапу в PDF

Как делать деньги в интернете =)

Как делать деньги в интернете =)

Я переодически даю ссылки на хорошие товары или услуги которыми сам воспользовался и остался доволен. Вот и подумал - почему-бы не получать за такие ссылки небольшую денежку.

Поэтому решил добавить свой блог в сервис Блогуна.

Понятно что миллионов таким образом не заработаешь - но окупить хостинг было бы здорово ;)

Вообще очень интересно - как получить деньги из интернета - у меня такого опыта со времен студенчества - когда у нас было популярно заниматься адульт-веб-сайтами (сайтами для взрослых ;) - не было.

И вообще очень интересно как работают современные интернет-технологии. В своей профессиональной деятельности я занимаюсь в основном корпоративными системами - web-based или с самописным клиентом, а проектов в открытом интернете с продвижением сайта в поисковиках и раскруткой его еще не было.
За прошедшие полгода я уже освоил такие сервисы как