Как стать автором
Обновить
0
mif @mifkysread⁠-⁠only

Администратор баз данных

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

«Идеальный» www кластер. Часть 1. Frontend: NGINX + Keepalived (vrrp) на CentOS

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


Этом цикле статей «Идеальный www кластер», я хочу передать базовые основы построения высокодоступного и высокопроизводительного www решения для нагруженных web проектов для неподготовленного администратора.
Статья будет содержать пошаговую инструкцию и подойдет любому человеку кто освоил силу copy-paste
Ошибки найденые вами, помогут в работе и мне и тем кто будет читать эту статью позже! Так что любые улучшение и правки приветствуются!

Хочу отметить, что эта инструкция родилась в процессе миграции web-систем компании Acronis в высокодоступный кластер. Надеюсь мои заметки будут полезны и для Вас!.

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

На frontend мы будем использоваться связку из двух службы:



keepalived — реализации протокола VRRP (Virtual Router Redundancy Protocol) для Linux. Демон keepalived следит за работоспособностью машин и в случае обнаружения сбоя — исключает сбойный сервер из списка активных серверов, делегируя его адреса другому серверу.

Другими словами, у нас 2 сервера на которых прописано по одному публичному адресу. Если любой из этих серверов падает, то адрес упавшего подхватывается вторым.
Демоны keepalived общаются по протоколу VRRP, посылая друг другу сообщения на адрес 224.0.0.18.
Если сосед не прислал свое сообщение, то по истечению периода он считается умершим и оба адреса обслуживает оставшаяся нода. Как только упавший сервер начинает слать свои сообщения в сеть, все возвращается на свои места


nginx [engine x] — это HTTP-сервер и обратный прокси-сервер, а также почтовый прокси-сервер, написанный Игорем Сысоевым. Уже длительное время он обслуживает серверы многих высоконагруженных российских сайтов, таких как Яндекс, Mail.Ru, ВКонтакте и Рамблер. Согласно статистике Netcraft nginx обслуживал или проксировал 15.08% самых нагруженных сайтов в октябре 2013 года.

Основная функциональность HTTP-сервера

  • Обслуживание статических запросов, индексных файлов, автоматическое создание списка файлов, кэш дескрипторов открытых файлов;
  • Акселерированное обратное проксирование с кэшированием, простое распределение нагрузки и отказоустойчивость;
  • Акселерированная поддержка FastCGI, uwsgi, SCGI и memcached серверов с кэшированием, простое распределение нагрузки и отказоустойчивость;
  • Модульность, фильтры, в том числе сжатие (gzip), byte-ranges (докачка), chunked ответы, XSLT-фильтр, SSI-фильтр, преобразование изображений; несколько подзапросов на одной странице, обрабатываемые в SSI-фильтре через прокси или FastCGI, выполняются параллельно;
  • Поддержка SSL и расширения TLS SNI.


Другие возможности HTTP-сервера

  • Виртуальные серверы, определяемые по IP-адресу и имени;
  • Поддержка keep-alive и pipelined соединений;
  • Гибкость конфигурации;
  • Изменение настроек и обновление исполняемого файла без перерыва в обслуживании клиентов;
  • Настройка форматов логов, буферизованная запись в лог, быстрая ротация логов;
  • Специальные страницы для ошибок 3xx-5xx;
  • rewrite-модуль: изменение URI с помощью регулярных выражений;
  • Выполнение разных функций в зависимости от адреса клиента;
  • Ограничение доступа в зависимости от адреса клиента, по паролю (HTTP Basic аутентификация) и по результату подзапроса;
  • Проверка HTTP referer;
  • Методы PUT, DELETE, MKCOL, COPY и MOVE;
  • FLV и MP4 стриминг;
  • Ограничение скорости отдачи ответов;
  • Ограничение числа одновременных соединений и запросов с одного адреса;
  • Встроенный Perl.


Читать дальше →
Всего голосов 46: ↑40 и ↓6+34
Комментарии79

Как выбрать жёсткие диски для серверов?

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


В IT-области существует множество мифов. «От спама можно отписаться», «Два антивируса лучше, чем один», «Серверные жёсткие диски должны быть только фирменными». При замене и расширении парка ЖД нужно учитывать немало нюансов и тонкостей, и без своих предубеждений здесь тоже не обошлось. Какие бывают ЖД для серверов, чем они отличаются, на что нужно обращать внимание, и должны ли они быть с логотипом производителя сервера — об этом читайте под катом.
Читать дальше →
Всего голосов 29: ↑21 и ↓8+13
Комментарии17

Балансировка трафика между Web-серверами при помощи IP CEF на сетевом оборудовании

Время на прочтение3 мин
Количество просмотров6.7K
Была поставлена задача о реализации отказоустойчивого решения для двух веб-серверов и, при возможности, реализация распределения нагрузки между веб-серверами, так как иногда одна база данных не справлялась со всеми запросами. Покупать специальное оборудование не было возможности, в связи с чем была придумана следующая схема. Возможно, идея неоригинальная, но в интернете ничего подобного не нашел. Топология у нас такая:

My Image
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии32

«Чтение на выходные»: 25 материалов для начинающих любителей винила

Время на прочтение5 мин
Количество просмотров10K
Сегодня мы подобрали материалы из «Мира Hi-Fi» специально для начинающих и всех, кто хотел бы познакомиться с экосистемой винила, подобрать проигрыватель и разобраться с настройкой.

Читать дальше →
Всего голосов 25: ↑20 и ↓5+15
Комментарии17

27 отличных open source-инструментов для веб-разработки

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


Перевод 27 Amazing Web Development Tools for the Past Year (v.2018)

В 2017-м мы сравнили около 7 500 open source-инструментов для веб-разработки, из которых выбрали 27 лучших (0,4%). Это крайне конкурентный список, в который вошли инструменты, библиотеки и проекты, опубликованные в течение 2017-го. Mybridge AI оценивает их качество на основании популярности, заинтересованности и новизне. Чтобы было понятно, у выбранных продуктов среднее количество звёзд на Github — 5260.

Open source-инструменты могут почти даром повысить вашу продуктивность. Также вы можете чему-то научиться, читая исходный код и создавая что-нибудь на основе этих проектов. Так что рекомендуем уделить время и поэкспериментировать с инструментами из нашей подборки, возможно, какие-то из них прошли мимо вас.
Читать дальше →
Всего голосов 70: ↑55 и ↓15+40
Комментарии10

Какие тексты для лендингов действительно продают?

Время на прочтение2 мин
Количество просмотров4.7K
Хороший лендинг — это убедительная продающая страница, которая превращает читателя в покупателя. Заставляет совершить одно результативное действие:

  • Подписаться на рассылку
  • Заказать товар
  • Позвонить
  • Перейти по ссылке
  • Скачать что-то в обмен на контакт
  • Написать письмо обратной связи/сделать заявку
Читать дальше →
Всего голосов 13: ↑8 и ↓5+3
Комментарии7

Отладка и устранение проблем в PostgreSQL Streaming Replication

Время на прочтение27 мин
Количество просмотров51K
Потоковая репликация, которая появилась в 2010 году, стала одной из прорывных фич PostgreSQL и в настоящее время практически ни одна инсталляция не обходится без использования потоковой репликации. Она надежна, легка в настройке, нетребовательна к ресурсам. Однако при всех своих положительных качествах, при её эксплуатации могут возникать различные проблемы и неприятные ситуации.

Алексей Лесовский (@lesovsky) на Highload++ 2017 рассказал, как с помощью встроенных и сторонних инструментов, диагностировать различные типы проблем и как устранять их. Под катом расшифровка этого доклада, построенного по спиральному принципу: сначала мы перечислим все возможные средства диагностики, потом перейдем к перечислению типовых проблем и их диагностике, далее посмотрим, какие экстренные меры можно принять, и наконец как радикально справиться с задачей.


О спикере: Алексей Лесовский администратор баз данных в компании Data Egret. Одной из любимых тем Алексея в PostgreSQL является потоковая репликация и работа со статистикой, поэтому доклад на Highload++ 2017 был посвящен тому, как помощью статистики искать проблемы, и какие использовать методы для их устранения.

План


  1. Немного теории, или как работает репликация в PostgreSQL
  2. Troubleshooting tools или что есть у PostgreSQL и сообщества
  3. Troubleshooting cases:
    • проблемы: их симптомы и диагностика
    • решения
    • меры, которые нужно принимать, чтобы этих проблем не возникало.

Зачем всё это? Эта статья поможет вам лучше разбираться в потоковой репликации, научиться быстро находить и устранять проблемы, чтобы сократить время реакции на неприятные инциденты.
Всего голосов 37: ↑37 и ↓0+37
Комментарии2

Android Tips and Tricks

Время на прочтение13 мин
Количество просмотров47K
В данном материале можно будет увидеть различные инструменты и подсказки, которые здорово облегчают жизнь Android разработчикам. Большая часть собрана напрямую от знакомых разработчиков и содержит вещи, которые должен знать каждый. Дополнения и расширения приветствуются, и если вы знаете о каком-то крутом механизме, который не был упомянут в статье, не поленитесь перейти в оригинал и открыть pull request.
Читать дальше →
Всего голосов 49: ↑49 и ↓0+49
Комментарии18

Светодиодные лампы из магазина Леруа Мерлен

Время на прочтение3 мин
Количество просмотров76K
Неделю назад я рассказал о свтетодиодных лампах из магазина Ашан. Напомню, я купил 48 ламп в Ашане и Леруа, протестировал их и вернул обратно в магазины.

Сегодня расскажу о 26 лампах из Леруа Мерлен.



Читать дальше →
Всего голосов 56: ↑55 и ↓1+54
Комментарии31

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

Время на прочтение28 мин
Количество просмотров186K
Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.

Читать дальше →
Всего голосов 96: ↑89 и ↓7+82
Комментарии38

Мобильные приложения и основные факторы freemium-монетизации. Часть 1

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

Разработчики, частные лица и целые корпорации, создают тысячи приложений каждый день. Естественно, создатели программ что-то хотят получить за свою работу, а лучший способ заработать в этом случае — это монетизировать приложение. Сейчас активнее всего для монетизации используется freemium модель или реклама, а не продажа самого приложения.

Так, более 80% мобильных приложений, которые находятся в списке 1000 наиболее популярных программ, монетизируются по схеме freemium (больше об этом можно узнать здесь). При этом есть некоторые способы, позволяющие увеличить доход от такого способа монетизации. В продолжении мы предлагаем использовать некоторые такие способы, которые считаем наиболее удачными. В качестве примера рассмотрим несколько популярных игр, где используется freemium-схема.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии8

Как выбрать проектор — полное руководство

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

Последнее обновление и актуализация данных в посте — 4 марта 2020.



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


  • Условия использования
  • Яркость
  • Качество цветопередачи
  • Контрастность
  • Разрешение
  • Способы установки
  • Разъемы и интерфейсы
  • Сетевой функционал
  • Ресурс лампы
  • Поддержка 3D
  • Требования к обслуживанию

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

Читать дальше →
Всего голосов 23: ↑18 и ↓5+13
Комментарии10

Поисковая оптимизация для AppStore и Google Play или ASO

Время на прочтение6 мин
Количество просмотров35K
Поисковая оптимизация для AppStore и Google Play — это комплекс мер по улучшению видимости мобильных приложений в поисковой выдаче AppStore и Google Play Market. Сокращенно называется ASO — Appstore Search Optimization.

В ASO есть факторы, которые находятся вне вашего контроля и факторы, которые вы можете контролировать, тестировать и улучшать. Вы не можете реально контролировать привлечение аудитории или положительные отзывы, если вы используете неэтичные методы и покупаете отзывы, но вы можете контролировать факторы контекста вашего приложения. Под контекстным фактором подразумевают контент, отображаемый на странице приложения. Этот контент играет главную роль в улучшении вашей позиции в рейтинге.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии11

Сколько дизайнов интерфейсов на самом деле нужно рисовать для iPhone 4, 5, 6 и 6+?

Время на прочтение3 мин
Количество просмотров34K
Выход смартфонов iPhone 6 и 6+ внесло некоторую дезориентированность в ряды дизайнеров и программистов, ведь раньше можно было просто нарисовать один макет под iPhone 5 и пропорционально уменьшить в 2 раза при разметке под предыдущие устройства. Но теперь ситуация несколько изменилась: первопроходцы-программисты сетуют, что макет, красиво нарисованный и сверстанный под iPhone 6, выглядит абсолютно непривлекательно, нечитаемо и нетапабельно на iPhone 5, ведь его как раньше просто пропорционально уменьшили. IOS HIG по этому поводу конкретных советов не содержит, поэтому для дизайнеров сейчас особо остро стоит вопрос о том, сколько же на самом деле дизайнов интерфейсов нужно рисовать, чтобы охватить всю текущую линейку iPhone-устройств? Давайте разбираться.

Читать дальше →
Всего голосов 34: ↑22 и ↓12+10
Комментарии28

Создание msi-пакетов и установка любого ПО средствами групповых политик Windows

Время на прочтение4 мин
Количество просмотров279K
Доброго времени суток, Хабр! Хочу представить интересный, по моему мнению, способ создания msi-инсталляторов для любого программного обеспечения и, как следствие, развертывание его средствами GPO. Подчеркну, что описанный метод не подразумевает создание «слепков» системы, а использует нативные инсталляторы софта, при чем для создания msi применяются только бесплатные для коммерческого использования продукты.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии26

Как я создавал мобильный файтинг под iOS

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

Глава 1. Спасибо, Майкл Дудикофф


В детстве я любил мечтать о том, кем же я стану, когда вырасту. Какой путь выбрать: космос или океанские глубины? Нет, я хотел создавать игры. Почему игры? Я рос во времена, когда разум любого мальчишки был отравлен компьютерным бумом и первыми консольными баталиями. Шли годы, мечта моя спала медвежьим сном, задавленная трудовыми буднями. И вот, однажды…

Март 2014. 7 утра в обычном московском спортзале. Поднимаю гантели, подавляя сонное недовольство разговорами с местными хохмачами. Тут в нашу беседу внезапно вклинился ОН.



Мальчики и девочки, рожденные на заре СССР, хорошо помнят гнусавый одноголосый перевод с затертых видеокассет. И вот один из обладателей того голоса появляется на экране ТВ, подвешенного к потолку. Конечно, я сразу узнал легендарного Майкла Дудикоффа, героя киноэпопеи «Американский ниндзя».
Читать дальше →
Всего голосов 62: ↑52 и ↓10+42
Комментарии75

Минимальные показатели жизнеспособности для мобильных приложений

Время на прочтение6 мин
Количество просмотров17K
Одна из наиболее популярных идей, появившаяся в индустрии разработки в последние годы, — это концепция Minimum Viable Product, сокращенно MVP. В двух словах, это стратегия разработки минимального по функциональности продукта, позволяющего получить обратную связь от пользователей. Но можно ли переносить эту концепцию в сферу мобильных приложений и если нет, то есть ли альтернатива? Мы в Alconost перевели отличную статью, отвечающую на этот вопрос. Всем, кто имеет дело с мобильной разработкой — читать обязательно.


Читать дальше →
Всего голосов 10: ↑8 и ↓2+6
Комментарии5

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

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


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

Как с нуля построить коттеджный поселок. Часть вторая – межевание

Время на прочтение8 мин
Количество просмотров36K
Продолжаем серию статей о создании коттеджного поселка «на коленке». В предыдущей мы рассказали, как можно получить землю для строительства поселка, имея на руках ограниченный бюджет. В этой статье мы расскажем обо всех необходимых юридических и административных процедурах, через которые нужно пробиться до светлого момента первой официальной продажи.
Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии19

Дайджест российских программ поддержки ИТ-стартапов #1

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


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

На сегодняшний день в России программ поддержки молодых предпринимателей, работающих при ВУЗах или тесно связанных с темой образования в целом, достаточно много, поэтому в рамках первого дайджеста мы расскажем лишь о некоторых из них. Помимо, собственно, перечня подобных компаний, мы включили в дайджест их более подробное описание, а также несколько небольших интервью, в которых представители программ поддержки отвечают на наши вопросы о том, как связаны их организации с классическим образованием, как такие компании популяризуют стартап-культуру в стенах своих alma mater и можно ли совмещать учебу и, пусть маленький, но бизнес.
Читать дальше →
Всего голосов 18: ↑15 и ↓3+12
Комментарии9
1
23 ...

Информация

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