Как стать автором
Обновить
9
0
ctacka @ctacka

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

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

Удобные архитектурные паттерны

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

Привет, Хабр!


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


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

Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии2

Terraform, моно-репозитории и compliance as code

Время на прочтение7 мин
Количество просмотров2.6K
Всем привет. OTUS открыл набор в новую группу по курсу «Инфраструктурная платформа на основе Kubernetes», в связи с этим мы подготовили перевод интересного материала по теме.




Возможно, вы один из тех, кто использует terraform для Infrastructure as a Code, и вам интересно, как использовать его продуктивнее и безопаснее. В общем-то, последнее время, это многих беспокоит. Мы все пишем конфигурацию и код, используя разные инструменты, языки и тратим значительное количество времени на то, чтобы сделать его более читабельным, расширяемым и масштабируемым.


Может быть, проблема в нас самих?

Написанный код должен создавать ценность или решать проблему, а также быть пригодным для повторного использования с целью дедупликации. Обычно такого рода дискуссии заканчиваются “Давайте использовать модули”. Мы все используем модули terraform, верно? Я мог бы написать множество историй с проблемами из-за чрезмерной модульности, но это совсем другая история, и я не буду.
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии0

Checklist: what had to be done before deploying microservices to production

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

This article contains a brief squeeze from my own experience and that of my colleagues, with whom I had been fighting incidents day and night. And many incidents would never have occurred if all these microservices that we love so much were written at least a little more carefully.


Unfortunately, some programmers seriously believe that a Dockerfile with any team at all inside is a microservice in itself and can be deployed even now. Dockers are running — money are incoming. This approach turns into problems starting from performance degradation, inability to debug, service failures and ending in a nightmare called Data Inconsistency.


If you feel that the time has come to launch one more app in Kubernetes / ECS / whatever, then I have something to object to.

Read more →
Всего голосов 20: ↑19 и ↓1+18
Комментарии1

CI/CD с помощью AWS и Bamboo

Время на прочтение9 мин
Количество просмотров7.4K
Наша команда состоит из одного разработчика и одного DevOps инженера. Я отвечаю за разворачивание приложения в кластере Amazon ECS. В качестве CI/CD сервера я использую Bamboo. В этой статье я подробно расскажу, как я осуществляю разворачивание приложения в dev-среде.


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

Возможности Python 3, достойные того, чтобы ими пользовались

Время на прочтение5 мин
Количество просмотров44K
Многие программисты начали переходить со второй версии Python на третью из-за того, что уже довольно скоро поддержка Python 2 будет прекращена. Автор статьи, перевод которой мы публикуем, отмечает, что основной объём Python 3-кода, который ему доводилось видеть, выглядит как код со скобками, написанный на Python 2. По его словам, он и сам грешит чем-то подобным. Здесь он приводит примеры некоторых замечательных возможностей, доступных лишь тем, кто пользуется Python 3. Он надеется, что эти возможности облегчат жизнь тем, кто о них узнает.



Все примеры, приведённые в этом материале, написаны с использованием Python 3.7. В описании каждой возможности имеются сведения о минимальной версии Python, необходимой для её применения.
Читать дальше →
Всего голосов 77: ↑76 и ↓1+75
Комментарии82

Выбор школы при переезде в США

Время на прочтение5 мин
Количество просмотров40K
Многие люди с детьми, планирующие переезд в США, слышали о необходимости тщательно выбирать район проживания. Особенно важно понять, какие школы относятся к выбранному адресу.

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

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

image
Читать дальше →
Всего голосов 71: ↑62 и ↓9+53
Комментарии131

Чек-лист: что нужно было делать до того, как запускать микросервисы в prod

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

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


К сожалению, некоторые невысокие программисты всерьёз полагают, что Dockerfile с какой-нибудь вообще любой командой внутри — это уже сам по себе микросервис и его можно деплоить хоть сейчас. Докеры крутятся, лавешка мутится. Такой подход оборачивается проблемами начиная с падения производительности, невозможностью отладки и отказами обслуживания и заканчивая кошмарным сном под названием Data Inconsistency.


Если вы ощущаете, что пришло время запустить ещё одну аппку в Kubernetes/ECS/whatever, то мне есть чем вам возразить.


English version is also available.

Читать дальше →
Всего голосов 138: ↑135 и ↓3+132
Комментарии71

Serverless CI/CD на AWS

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



Было бы круто, если бы развертывание в формате копи-пейст осталось в прошлом, но, увы, дела обстоят иначе. Бывает, разработчикам предпочтительней именно такой метод поставки. Хоть сейчас пиши статью о том, почему это не есть гуд, но вы и без меня все знаете. С тенденцией к бессерверной (serverless) архитектуре пайплайны CI/CD играют важную роль в поставке приложений. Я еще писал о них в статье "3 лучших совета для вашего следующего бессерверного проекта".


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


Инструменты интеграции и поставки на AWS я изучил какое-то время назад, и, хотя мы используем CodeDeploy для другого проекта, который работает на EC2, бессерверный проект я с ними еще не развертывал. Ознакомившись с инструментами повторно, я обратил внимание вот на что: теперь есть встроенная функция интеграции для развертывания CloudFormation и Lambda, предположительно, на основе SAM AWS; мы используем serverless framework, — она генерирует шаблоны CloudFormation, но с инструментами AWS она “из коробки” не работает.

Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии4

Конвергенция с Kubernetes

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

Тотальная стандартизация


Я готовил этот материал для выступления на конференции и спросил у нашего технического директора, в чем главная фишка Kubernetes для нашей организации. Он ответил:


Разработчики сами не понимают, сколько лишней работы делали.

Видимо, его вдохновила недавно прочитанная книга «Factfulness» — сложно заметить незначительные и непрерывные изменения к лучшему, и мы постоянно упускаем из виду свой прогресс.


Но переход на Kubernetes точно нельзя назвать незначительным.


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

Взаимные превращения JSON, YAML, XML

Время на прочтение4 мин
Количество просмотров17K
JSON, YAML сейчас популярны, а XML технологии считаются пережитком прошлого.


Попробуем использовать «ретро технологии» для работы с данными в формате JSON и YAML. И порассуждаем о причинах применять их в наши дни.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии11

Подборка полезных материалов по DevOps

Время на прочтение3 мин
Количество просмотров29K
Делимся новым контентом по DevOps: курсы Microsoft Virtual Academy на русском языке, видео-уроки по DevOps-практикам на Channel 9 и подборка полезных материалов.


Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии2

QIWI Security Development Lifecycle

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

В определенный момент в жизни почти каждой финтех-компании настает время, когда количество приложений внутренней разработки начинает превышать число разработчиков, бизнес хочет больше новых фич, а на Bug Bounty продолжают сдавать все новые и новые уязвимости…


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


Когда команда ИБ состоит из пары человек, кажется, что так будет всегда, но мы решили выжать из ситуации максимум позитива и раз и навсегда "засекьюрить" свои приложения.


С чего начать? Наш план был прост:


  1. Упорядочить процессы постановки, исполнения и выпуска задач, не став палкой в колесах разработки.
  2. Прикрутить модные сканеры безопасности.
  3. Отревьюить пару десятков приложений.
  4. Откинуться в кресле, наблюдая за тем, как это все само работает.

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

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

Время на прочтение9 мин
Количество просмотров14K
Господа! Я уже писал о предстоящих семинарах Чарльза Данчека, содержащих полный ликбез по всем этапам проектирования и производства микросхем, но с тех пор возникли дополнения:

* Во-первых, к семинарам присоединилась Cadence Design Systems, одна из двух ведущих компаний в области автоматизации проектирования микросхем. Cadence представит часовой доклад с программой в конце этого поста.

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

* Во-вторых, к семинарам присоединились четыре ведущих российских компаний-проектировщиков микросхем: АО «НИИМА «Прогресс», АО «БАЙКАЛ ЭЛЕКТРОНИКС», ООО «ЛАБСИСТЕМС» и ОАО НПЦ «ЭЛВИС». Каждая из них сделает публичную презентацию с информацией, которую вы при других обстоятельствах как правило не сможете получить без NDA.

* В-третьих, в дополнение к официальной программе семинаров в Москве, Санкт-Петербурге и Киеве мы решили организовать неформальные встречи интересующихся в виде прогулки сначала по Москве в это воскресенье, 30 октября. Вы сможете показать Чарльзу Данчеку Москву (он в первый раз в России) и спросить про проектирование чипов.

Мы подумываем, чтобы в следующих год расширить такие мероприятия на регион Новосибирск-Томск, в связи с чем вот приветственное видео с девушкой из новосибирского академгородка:



Пояснение: РОСНАНО и МИСиС организуют семинар Nanometer ASIC в Москве, но в Питере такой семинар организует Университет ИТМО, а в Киеве — КПИ и КНУ, лаборатория «Лампа» КПИ и студенческое workspace «Белка» КПИ.

Детали про встречу и семинары — под катом:
Всего голосов 19: ↑17 и ↓2+15
Комментарии14

Slate – «серебряная пуля» для расположения окон на экранах OS X

Время на прочтение3 мин
Количество просмотров16K
Привет, Хабр! Хочу поделиться очень интересным инструментом для «приручения» положения окон в OS X. Если кратко, то вот ссылка на репозиторий с замечательным приложением Slate. За подробностями, добро пожаловать под кат.

image
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии40

Личный опыт: как выглядит наша система Continuous Integration

Время на прочтение4 мин
Количество просмотров27K
image Мы в Positive Technologies не только проводим исследования безопасности различных ИТ-систем, но и разрабатываем продукты, которые помогают обнаруживать и предотвращать угрозы, а также минимизировать ущерб от возможных атак.

За последние несколько лет линейка наших продуктов серьезно расширилась — к известной многим на рынке системе MaxPatrol добавился целый ряд новых инструментов от межсетевых экранов уровня приложений до инструментов управления инцидентами. Такое развитие поставило нас перед необходимостью адаптации процессов разработки в компании — поэтому мы активно внедряем в свою работу практики DevOps и связанные с этим технологии.

Сегодня мы хотим рассказать вам о модели созданной нами системы Continuous Integration.
Всего голосов 14: ↑12 и ↓2+10
Комментарии9

350+ полезных ресурсов, книг и инструментов для работы с Docker

Время на прочтение14 мин
Количество просмотров101K
Мы уже ни раз приводили полезные руководства и подборки источников для разработчиков. На этот раз мы решили продолжить тему контейнеров, которую мы затрагивали ранее, и рассказать о подборке тематических ресурсов на GitHub.

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

Знакомимся с Otto, наследником Vagrant

Время на прочтение7 мин
Количество просмотров34K
Otto — это новый продукт от Hashicorp, логический наследник Vagrant, призванный упростить процесс разработки и деплоя программ в современном мире облачных технологий. Концептуально новый подход к проблеме, проверенные технологии под капотом и открытый исходный код. Персональный DevOps ассистент разработчика.


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

Искусство командной строки

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


Вот уже как неделю английская версия the art of command line висит в секции trending на Github. Для себя я нашел этот материал невероятно полезным и решил помочь сообществу его переводом на русский язык. В переводе наверняка есть несколько недоработок, поэтому милости прошу слать пулл-реквесты мне сюда или автору оригинальной работы Joshua Levy вот сюда. (Если PR отправите мне, то я после того, как пересмотрю изменения отправлю их в мастер-бранч Джоша). Отдельное спасибо jtraub за помощь и исправление опечаток.

Enjoy!
Всего голосов 127: ↑122 и ↓5+117
Комментарии143

Выжимаем максимум производительности из клавиатуры

Время на прочтение7 мин
Количество просмотров252K
Чем вы занимаетесь большую часть своего рабочего дня? Скорее всего, создаёте или редактируете информацию. И у многих из вас эта информация — тексты: программный код, конфигурационные файлы, письма, строчки чатов и всё тому подобное.
Хотите создавать их быстрее и при этом расходовать на ввод текста меньше внимания? Я расскажу вам несколько эффективных способов увеличить производительность при работе с главным инструментом в этом деле — QWERTY-клавиатурой.

Сомневаетесь, стоит ли тратить на это время? Вспомните — за 30 лет в мире ПК изменилось всё, но клавиатура осталась такой же. Альтернативные способы ввода текста — распознавание речи, письма, жестов, «птичьих» языков (привет, граффити!), аккордные клавиатуры — не сработали и не стали популярными — и, вероятнее всего, ещё очень долго вы будете всё так же вводить тексты с клавиатуры.
Читать дальше →
Всего голосов 126: ↑98 и ↓28+70
Комментарии226

Мультиварка — умная кастрюля или «не доведенный до ума» гаджет

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

Этот пост будет полезен всем, кто хотя бы иногда что-то готовит сам, а также помогает или мешает это делать другим.
Из него можно узнать, что это за гаджет — мультиварка, какие у нее технические возможности и невозможности, внутренность, наружность, достоинства (много) и недостатки (тоже много). Расскажу кое-что и о маленьких мультиварочных хитростях, а также позволю себе общее лирическое отступление о программировании на кухне.
Цель поста — рассказать про мультиварки, как класс объектов, не выделяя особо его представителей, но, чтобы не вести разговор о сферической мультиварке в вакууме, сделаю основным примером разбора мою модель — Panasonic SR-TMJ181.
Те, у кого нет мультиварки узнают, нужна ли она им, но и те, у кого она есть, надеюсь, без новых знаний не останутся.
Читать дальше →
Всего голосов 295: ↑259 и ↓36+223
Комментарии337

Информация

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

Специализация

DevOps
Lead