Pull to refresh
8
0

User

Send message

Переезд монолита в k8s. Делаем каршеринг cloud native

Level of difficultyMedium
Reading time7 min
Views6.5K

Делюсь опытом по становлению каршеринга на светлую сторону Силы — переезду в облако.

Мы переезжали из одного датацентра в другой, шатали прод по ночам, выкатывали новые микросервисы, переписывали старые, наш парк машин вырос в 4 раза. И всё это за экстремальные 2 года!

Читать далее
Total votes 15: ↑15 and ↓0+15
Comments18

Управление политиками кластера Kubernetes через Gatekeeper OPA

Level of difficultyEasy
Reading time8 min
Views1.5K

Перевели статью о том, что такое Gatekeeper, зачем он нужен и как работает. Разберёмся с политиками, настроим инфраструктуру Gatekeeper в кластере, протестируем политики.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments0

Упрощаем подключение линтеров в пайплайны Gitlab CI

Level of difficultyEasy
Reading time4 min
Views6.5K

Всем привет! Меня зовут Юра, я Python-разработчик в Точке. В статье я покажу, как написать шаблон с линтером для Gitlab CI, чтобы при старте нового проекта (или уже запущенного) было легко добавить линтер в пайплайны.

А ну-ка
Total votes 6: ↑6 and ↓0+6
Comments0

Введение в библиотеку Diffusers и диффузионные модели

Level of difficultyEasy
Reading time16 min
Views11K

Diffusers — это библиотека от Hugging Face, которая позволяет работать с сотнями предобученных моделей класса Stable Diffusion для создания изображений и аудио.

Всегда хотели стать художником, но у вас лапки? :) Тогда Diffusers этот то, что вам нужно!

В этой статье рассмотрим основные возможности библиотеки, ее компонентов, а также моделей Stable Diffusion в целом.

З.Ы. Подписывайтесь на мой телеграм-канал :)

Читать далее
Total votes 11: ↑11 and ↓0+11
Comments2

Сквозное наблюдение (observability) в микросервисах

Level of difficultyEasy
Reading time11 min
Views6.2K

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

Сегодня мы поговорим о чем-то, что является неотъемлемой частью современной микросервисной архитектуры, что-то, без чего трудно представить себе успешное и надежное приложение в мире распределенных систем. Да, вы правильно догадались, мы говорим о сквозном наблюдении, или, как его еще называют, "observability."

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

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

Разберемся подробнее с первым из ключевых компонентов сквозного наблюдения - трассировкой.

Читать далее
Total votes 9: ↑8 and ↓1+10
Comments1

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

Level of difficultyMedium
Reading time29 min
Views12K

Привет! Меня зовут Гриша и я бэкенд разработчик на .net 

С друзьями мы часто обсуждаем процессы разработки, в том числе как пишутся автотесты. Я часто слышу о подходах, которые несут боль разработчикам и одновременно с этим приносят мало пользы. 

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

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

Читать далее
Total votes 17: ↑16 and ↓1+21
Comments13

Простая нейронная сеть без библиотек и матриц. Обучение с учителем

Level of difficultyEasy
Reading time9 min
Views17K

Руководство? Гайд? В общем ремейк описания моего опыта создания простой, а главное понятной любому новичку нейросети :)

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

Читать далее
Total votes 26: ↑26 and ↓0+26
Comments15

Простая нейронная сеть без библиотек и матриц. Эволюционный алгоритм

Level of difficultyMedium
Reading time15 min
Views11K

Руководство? Гайд? В общем вторая часть описания моего опыта в создании простой, а главное понятной любому новичку нейросети :)

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

Читать далее
Total votes 20: ↑20 and ↓0+20
Comments4

Jaeger для трассировки в микросервисной архитектуре

Level of difficultyMedium
Reading time15 min
Views19K

 Меня зовут Алексей Мясников, я тимлид на проекте YDB в Яндекс Облаке. А ещё — старший ментор на курсе «Go-разработчик» в Яндекс Практикуме и кандидат технических наук. В коммерческой разработке более 15 лет, стек — C++, Java, Go, TypeScript, а пробовал около 20 языков программирования, в том числе в продакшн. 

Эта статья про Go и микросервисную архитектуру написана на основе вебинара для Практикума.

Рассмотрим, как работает Jaeger, один из популярных инструментов, который помогает расследовать инциденты и находить узкие места в производительности в микросервисной архитектуре. Разберём, как правильно настроить трассировку и с какими проблемами можно столкнуться в процессе.

Читать далее
Total votes 17: ↑17 and ↓0+17
Comments1

Интеграция Okta с Firebase через OpenId Connect без бэкенда

Reading time4 min
Views1.4K

Интегрируем Okta с Firebase, что позволит аутентифицировать своих пользователей с помощью Firebase, используя Okta SSO, по протоколу OpenID Connect (OIDC).

Читать далее
Total votes 1: ↑1 and ↓0+1
Comments0

SRE: паттерны Reliability

Level of difficultyEasy
Reading time12 min
Views5K

Это первая часть топика, где мы поговорим о Reliability в рамках практик SRE.

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

Читать далее
Total votes 12: ↑10 and ↓2+10
Comments4

Обзор паттернов интеграции микросервисов. Часть 1

Reading time7 min
Views30K

Недавно мы проводили вебинар «Обзор паттернов интеграции микросервисов». На нём энтерпрайз архитектор Пётр Щербаков рассказал, зачем IT-специалистам нужны шаблоны интеграции, и разобрал, для каких задач они подходят, а для каких нет. Для тех, кто пропустил или предпочитает читать, а не смотреть подготовили текстовый обзор интеграционных паттернов: Circuit Breaker, Sidecar, Ambassador, Anti-Corruption Layer и Async Request-Reply.

Читать далее
Total votes 23: ↑20 and ↓3+18
Comments1

Обзор паттернов интеграции микросервисов. Часть 2

Reading time5 min
Views15K

Продолжаем обзор паттернов интеграции микросервисов. В первой части мы рассказали, зачем IT-специалистам нужны шаблоны интеграции, и для каких задач они подходят. Подробно остановилисьна Circuit Breaker, Sidecar, Ambassador, Anti-Corruption Layer и Async Request-Reply. Сегодня по плануразобрать Backends for Frontends, Cache-Aside, Gateway, Gateway Aggregation и Gateway Routing. 

Читать далее
Total votes 17: ↑15 and ↓2+15
Comments1

API Тиньков.Инвестиции. Первые шаги

Reading time5 min
Views154K
Практически с первых дней я стал клиентом Тиньков.Инвестиции.

И с этого же момента меня терзают смутные сомнения — отражает ли личный кабинет объективную реальность?

Дело в том, что я покупаю ценные бумаги, номинированные в долларах, но в ЛК цены всех активов отображаются в долларах, а итоговая стоимость портфеля в рублях.

И мне непонятно, это доллар вырос или я такой результативный инвестор?

А как же комиссии, налоги и прочие дивиденды?

Вот бы взять все мои сделки и расписать по ФИФО, как в складском учете… А сверху положить полученные дивиденды, а потом вычесть налоги.

Вот тогда я и увижу понятный мне результат.

Оказалось, у Тинькова есть API, которое позволяет писать торговых роботов (мне это совсем не интересно), а также загружать данные по своему портфелю и операциям.

У этого API есть официальное описание, но мне не все было понятно, пришлось разбираться.
Результаты этих разборок представляю вашему вниманию.

Полезные ссылки:

Описание API
Еще описание
Читать дальше →
Total votes 15: ↑13 and ↓2+19
Comments64

Деплоим на PythonAnywhere из GitHub

Reading time5 min
Views22K



Каждый может сделать так:


локальный проект → github


С (платным) ssh доступом вы сможете сделать так:


локальный проект → PythonAnywhere


В статье показано как (бесплатно) сделать так:


локальный проект → github → PythonAnywhere


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

Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments1

ENTRYPOINT vs CMD: назад к основам

Reading time6 min
Views300K

Construction


Название ENTRYPOINT всегда меня смущало. Это название подразумевает, что каждый контейнер должен иметь определенную инструкцию ENTRYPOINT. Но после прочтения официальной документации я понял, что это не соответствует действительности.

Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments17

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

Reading time5 min
Views144K

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



Четыре тысячи лет назад жители Вавилонии изобрели умножение. А в марте этого года математики усовершенствовали его.

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

«Все думают, что метод умножения, который они учили в школе, наилучший, но на самом деле в этой области идут активные исследования», — говорит Йорис ван дер Хувен, математик из Французского национального центра научных исследований, один из соавторов работы.
Читать дальше →
Total votes 183: ↑173 and ↓10+163
Comments224

RESTinio — это асинхронный HTTP-сервер. Асинхронный

Reading time18 min
Views10K

Пару лет назад мы опубликовали RESTinio — свой небольшой OpenSource C++фреймворк для встраивания HTTP-сервера в C++ приложения. Мегапопулярным за это время RESTinio не стал, но и не потерялся. Кто-то выбирает его за "родную" поддержку Windows, кто-то за какие-то отдельные фичи (вроде поддержки sendfile), кто-то за соотношение возможностей, простоты использования и настраиваемости. Но, думаю, изначально многих RESTinio привлекает вот этим лаконичным "Hello, World"-ом:


#include <restinio/all.hpp>
int main()
{
    restinio::run(
        restinio::on_this_thread()
        .port(8080)
        .address("localhost")
        .request_handler([](auto req) {
            return req->create_response().set_body("Hello, World!").done();
        }));
    return 0;
}

Это, действительно, все, что нужно чтобы запустить HTTP-сервер внутри C++ приложения.


И хотя мы всегда стараемся говорить, что ключевой фичей, ради которой мы вообще занялись RESTinio, была асинхронная обработка входящих запросов, все равно периодически сталкиваемся с вопросами о том, как быть, если внутри request_handler-а приходится выполнять длительные операции.


А раз такой вопрос актуален, то можно еще раз о нем поговорить и привести парочку небольших примеров.

Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments8

Хранилище логов для облачной платформы. Опыт внедрения ELK

Reading time4 min
Views16K

Источник


Всем привет! Сегодня мы продолжим рассказывать про облачное хранилище Техносерв Cloud, но уже с точки зрения эксплуатации. Ни одна ИТ-инфраструктура не обходится без инструментов мониторинга и управления, и наше облако не исключение. Для решения повседневных задач, связанных с мониторингом, мы используем продукты с открытым исходным кодом, одним из которых является стек ELK. В этой статье мы расскажем, как в нашем облаке устроен мониторинг журналов, и как ELK помог нам пройти аудит PCI DSS.

Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments18

Kibana-мать или Зачем вам вообще нужны логи?

Reading time9 min
Views242K
Вы можете сказать, что “иногда бывает нужно...” Но на самом деле, вы хотите всегда видеть, что у вас в логах, через графический интерфейс. Это позволяет:

  • Облегчить жизнь разработчикам и сисадминам, время которых просто жалко и дорого тратить на написание grep-конвейеров и парсеров под каждый отдельный случай.
  • Предоставить доступ к информации, содержащейся в логах, умеренно-продвинутым пользователям — менеджерам и техподдержке.
  • И видеть динамику и тенденции появления залогированых событий (например, ошибок).

Так что сегодня вновь поговорим о стэке ELK (Elasticsearch+Logstash+Kibana).
Но на этот раз — в условиях json-логов!

Такой use case обещает наполнить вашу жизнь совершенно новыми красками и заставит испытать полную гамму чувств.


Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments24
1
23 ...

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Registered
Activity