0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Шаблоны проектирования для баз данных</a></li>
1
<ul><li><a>Шаблоны проектирования для баз данных</a></li>
2
<li><a>Что такое теория ограничений и как она помогает улучшать процессы разработки продуктов?</a></li>
2
<li><a>Что такое теория ограничений и как она помогает улучшать процессы разработки продуктов?</a></li>
3
<li><a>ЦОД: топологии и архитектуры</a></li>
3
<li><a>ЦОД: топологии и архитектуры</a></li>
4
<li><a>Архитектура и реализация виртуальной машины CPython</a></li>
4
<li><a>Архитектура и реализация виртуальной машины CPython</a></li>
5
<li><a>Узнаем, что делал пользователь через дамп реестра</a></li>
5
<li><a>Узнаем, что делал пользователь через дамп реестра</a></li>
6
<li><a>Регулярные выражения в SQL</a></li>
6
<li><a>Регулярные выражения в SQL</a></li>
7
<li><a>База, которую нужно знать про JSON Schema</a></li>
7
<li><a>База, которую нужно знать про JSON Schema</a></li>
8
<li><a>Как поднять свой WebSocket сервер на Node.js: основы</a></li>
8
<li><a>Как поднять свой WebSocket сервер на Node.js: основы</a></li>
9
<li><a>Автономный картографический сервер с питанием от USB</a></li>
9
<li><a>Автономный картографический сервер с питанием от USB</a></li>
10
<li><a>Всё, что вы хотели знать о Django Channels</a></li>
10
<li><a>Всё, что вы хотели знать о Django Channels</a></li>
11
<li><a>Как и зачем использовать Template Method в C#</a></li>
11
<li><a>Как и зачем использовать Template Method в C#</a></li>
12
<li><a>Sidecar на Go: позволь другому заниматься твоими проблемами</a></li>
12
<li><a>Sidecar на Go: позволь другому заниматься твоими проблемами</a></li>
13
<li><a>Расширенная шпаргалка по корутинам Kotlin</a></li>
13
<li><a>Расширенная шпаргалка по корутинам Kotlin</a></li>
14
<li><a>Операции машинного обучения (MLOps) для начинающих: полное внедрение проекта</a></li>
14
<li><a>Операции машинного обучения (MLOps) для начинающих: полное внедрение проекта</a></li>
15
<li><a>Коротко о SLAB, SLOB и SLYB в Linux</a></li>
15
<li><a>Коротко о SLAB, SLOB и SLYB в Linux</a></li>
16
<li><a>Разбираемся с мандатным управлением доступом в Астра Линукс</a></li>
16
<li><a>Разбираемся с мандатным управлением доступом в Астра Линукс</a></li>
17
<li><a>Grafana Stack: закрываем все современные потребности Observability</a></li>
17
<li><a>Grafana Stack: закрываем все современные потребности Observability</a></li>
18
</ul><h2>Шаблоны проектирования для баз данных</h2>
18
</ul><h2>Шаблоны проектирования для баз данных</h2>
19
<p>Существуют различные шаблоны проектирования облачных сервисов. Про тот же Sidecar или Ambassador, я думаю, слышали многие. Шаблоны предназначены для решения определенных задач и те два шаблона, о которых речь пойдет в сегодняшней статье, тоже нужны для конкретной задачи - работы с базами данных.</p>
19
<p>Существуют различные шаблоны проектирования облачных сервисов. Про тот же Sidecar или Ambassador, я думаю, слышали многие. Шаблоны предназначены для решения определенных задач и те два шаблона, о которых речь пойдет в сегодняшней статье, тоже нужны для конкретной задачи - работы с базами данных.</p>
20
<p>СУБД является неотъемлемой частью хоть сколько‑нибудь серьезного современного приложения. Соответственно, при проектировании приложения может возникнуть вопрос, как лучше сервисам взаимодействовать с базой данных: предоставляя общий доступ к одной базе или же у каждого микросервиса должна быть своя база данных. Мы рассмотрим два шаблона, предназначенных для решения данной задачи - это Shared database и Database per Microservice. Начнем с Shared database.</p>
20
<p>СУБД является неотъемлемой частью хоть сколько‑нибудь серьезного современного приложения. Соответственно, при проектировании приложения может возникнуть вопрос, как лучше сервисам взаимодействовать с базой данных: предоставляя общий доступ к одной базе или же у каждого микросервиса должна быть своя база данных. Мы рассмотрим два шаблона, предназначенных для решения данной задачи - это Shared database и Database per Microservice. Начнем с Shared database.</p>
21
<p><a>Читать далее</a></p>
21
<p><a>Читать далее</a></p>
22
<h2>Что такое теория ограничений и как она помогает улучшать процессы разработки продуктов?</h2>
22
<h2>Что такое теория ограничений и как она помогает улучшать процессы разработки продуктов?</h2>
23
<p><strong>Теория ограничений (ТОС)</strong> - это управленческая методология, предложенная Элияху Голдраттом в 1984 году в его книге <em>"Цель</em>". Она базируется на простом, но мощном принципе: любая система, будь то производство, бизнес-процесс или команда разработки, всегда ограничена одним или несколькими узкими местами. Эти ограничения или "бутылочные горлышки" сдерживают общую эффективность системы и являются теми ключевыми элементами, которые необходимо обнаружить и устранить для значительных улучшений.</p>
23
<p><strong>Теория ограничений (ТОС)</strong> - это управленческая методология, предложенная Элияху Голдраттом в 1984 году в его книге <em>"Цель</em>". Она базируется на простом, но мощном принципе: любая система, будь то производство, бизнес-процесс или команда разработки, всегда ограничена одним или несколькими узкими местами. Эти ограничения или "бутылочные горлышки" сдерживают общую эффективность системы и являются теми ключевыми элементами, которые необходимо обнаружить и устранить для значительных улучшений.</p>
24
<p>В условиях разработки продуктов, где скорость поставки, качество и удовлетворение клиентов критически важны, применение теории ограничений может привести к существенным улучшениям процессов и результатов. Давайте рассмотрим, как ТОС работает на практике и каким образом она может помочь командам разработки.</p>
24
<p>В условиях разработки продуктов, где скорость поставки, качество и удовлетворение клиентов критически важны, применение теории ограничений может привести к существенным улучшениям процессов и результатов. Давайте рассмотрим, как ТОС работает на практике и каким образом она может помочь командам разработки.</p>
25
<p><a>Читать далее</a></p>
25
<p><a>Читать далее</a></p>
26
<h2>ЦОД: топологии и архитектуры</h2>
26
<h2>ЦОД: топологии и архитектуры</h2>
27
<p>Центры Обработки Данных, как правило, представляют собой здания с помещениями достаточно большого размера, в которых размещаются бесконечные шкафы с серверами, коммуникационным оборудованием, системами хранения и прочими инфраструктурными элементами. И порой крайне сложно разобраться, как взаимодействует между собой все это техническое многообразие. В этой статье мы поговорим о топологии и архитектуре сетей ЦОД.</p>
27
<p>Центры Обработки Данных, как правило, представляют собой здания с помещениями достаточно большого размера, в которых размещаются бесконечные шкафы с серверами, коммуникационным оборудованием, системами хранения и прочими инфраструктурными элементами. И порой крайне сложно разобраться, как взаимодействует между собой все это техническое многообразие. В этой статье мы поговорим о топологии и архитектуре сетей ЦОД.</p>
28
<p>Сетевая архитектура центра обработки данных должна обеспечивать баланс между надежностью, производительностью, гибкостью, масштабируемостью и стоимостью. При этом, она также должна поддерживать как текущие, так и будущие приложения и иметь запас мощности, который может потребоваться для развертывания новых приложений.</p>
28
<p>Сетевая архитектура центра обработки данных должна обеспечивать баланс между надежностью, производительностью, гибкостью, масштабируемостью и стоимостью. При этом, она также должна поддерживать как текущие, так и будущие приложения и иметь запас мощности, который может потребоваться для развертывания новых приложений.</p>
29
<p>Для начала поговорим о том, какие топологии могут использоваться в сетях ЦОД.</p>
29
<p>Для начала поговорим о том, какие топологии могут использоваться в сетях ЦОД.</p>
30
<p><a>Читать далее</a></p>
30
<p><a>Читать далее</a></p>
31
<h2>Архитектура и реализация виртуальной машины CPython</h2>
31
<h2>Архитектура и реализация виртуальной машины CPython</h2>
32
<p>Для любого языка программирования, компилируемого в байт-код, самой интересной частью его реализации является виртуальная машина (также называемая интерпретатором байт-кода), где и происходит выполнение этого байт-кода. Поскольку это ключевой элемент работы языка, его реализация должна быть высокопроизводительной. Даже если вы не являетесь разработчиком компиляторов, изучение этих механизмов может дать новые идеи для оптимизации производительности. А если вы работаете с компиляторами, то вам всегда полезно изучать, как реализованы другие языки - чтобы почерпнуть детали, которые ранее могли быть вам неизвестны.</p>
32
<p>Для любого языка программирования, компилируемого в байт-код, самой интересной частью его реализации является виртуальная машина (также называемая интерпретатором байт-кода), где и происходит выполнение этого байт-кода. Поскольку это ключевой элемент работы языка, его реализация должна быть высокопроизводительной. Даже если вы не являетесь разработчиком компиляторов, изучение этих механизмов может дать новые идеи для оптимизации производительности. А если вы работаете с компиляторами, то вам всегда полезно изучать, как реализованы другие языки - чтобы почерпнуть детали, которые ранее могли быть вам неизвестны.</p>
33
<p>В этой статье мы рассмотрим формат инструкций байт-кода в CPython, а также реализацию цикла его интерпретации, в котором происходит выполнение байт-кода.</p>
33
<p>В этой статье мы рассмотрим формат инструкций байт-кода в CPython, а также реализацию цикла его интерпретации, в котором происходит выполнение байт-кода.</p>
34
<p><a>Читать далее</a></p>
34
<p><a>Читать далее</a></p>
35
<h2>Узнаем, что делал пользователь через дамп реестра</h2>
35
<h2>Узнаем, что делал пользователь через дамп реестра</h2>
36
<p>При расследовании компьютерных инцидентов одним из важнейших действий является сбор улик. Так, нам очень важно иметь дамп оперативной памяти, потому что из него можно получить информацию о том, какие процессы были запущены в системе, и, например, можно выделить и сделать дамп процессов, созданных вредоносом для последующего анализа данного дампа.</p>
36
<p>При расследовании компьютерных инцидентов одним из важнейших действий является сбор улик. Так, нам очень важно иметь дамп оперативной памяти, потому что из него можно получить информацию о том, какие процессы были запущены в системе, и, например, можно выделить и сделать дамп процессов, созданных вредоносом для последующего анализа данного дампа.</p>
37
<p>Также большое значение имеет информация о том, какие приложения запускал пользователь, какие документы открывал в офисных программах, какие сетевые соединения он устанавливал со сторонним ресурсами по таким протоколам, как RDP и SSH. И помочь в решении этих и аналогичных задач нам может реестр Windows.</p>
37
<p>Также большое значение имеет информация о том, какие приложения запускал пользователь, какие документы открывал в офисных программах, какие сетевые соединения он устанавливал со сторонним ресурсами по таким протоколам, как RDP и SSH. И помочь в решении этих и аналогичных задач нам может реестр Windows.</p>
38
<p><a>Читать далее</a></p>
38
<p><a>Читать далее</a></p>
39
<h2>Регулярные выражения в SQL</h2>
39
<h2>Регулярные выражения в SQL</h2>
40
<p>Представьте, что вам нужно найти иголку в стоге сена, но стог - это ваша БД, а иголка - данные со сложным шаблоном. Дефолтные операторы LIKE и IN тут не помогут - слишком уж они прямолинейны. Но зато здесь отлично зайдут регулярные выражения, которые позволяют выполнять сложные поиски и преобразования строк.</p>
40
<p>Представьте, что вам нужно найти иголку в стоге сена, но стог - это ваша БД, а иголка - данные со сложным шаблоном. Дефолтные операторы LIKE и IN тут не помогут - слишком уж они прямолинейны. Но зато здесь отлично зайдут регулярные выражения, которые позволяют выполнять сложные поиски и преобразования строк.</p>
41
<p><a>Читать далее</a></p>
41
<p><a>Читать далее</a></p>
42
<h2>База, которую нужно знать про JSON Schema</h2>
42
<h2>База, которую нужно знать про JSON Schema</h2>
43
<p>Сегодня мы рассмотрим одну из тем, которая, как ни странно, остаётся недооценённой - JSON Schema. Если ты аналитик (или хочешь им быть) и в твоей работе часто мелькают JSON-файлы, то наверняка знаешь, как сложно порой бывает держать всё это под контролем. В этой статье мы разберём всё, что тебе нужно знать про JSON Schema.</p>
43
<p>Сегодня мы рассмотрим одну из тем, которая, как ни странно, остаётся недооценённой - JSON Schema. Если ты аналитик (или хочешь им быть) и в твоей работе часто мелькают JSON-файлы, то наверняка знаешь, как сложно порой бывает держать всё это под контролем. В этой статье мы разберём всё, что тебе нужно знать про JSON Schema.</p>
44
<p><a>Читать далее</a></p>
44
<p><a>Читать далее</a></p>
45
<h2>Как поднять свой WebSocket сервер на Node.js: основы</h2>
45
<h2>Как поднять свой WebSocket сервер на Node.js: основы</h2>
46
<p>Сегодня создадим свой WebSocket сервер на Node.js. Это тот самый протокол, который позволяет отправлять и принимать данные в реальном времени без перекладывания на HTTP. Для этого мы будем использовать библиотеку ws.</p>
46
<p>Сегодня создадим свой WebSocket сервер на Node.js. Это тот самый протокол, который позволяет отправлять и принимать данные в реальном времени без перекладывания на HTTP. Для этого мы будем использовать библиотеку ws.</p>
47
<p><a>Читать далее</a></p>
47
<p><a>Читать далее</a></p>
48
<h2>Автономный картографический сервер с питанием от USB</h2>
48
<h2>Автономный картографический сервер с питанием от USB</h2>
49
<p>Представьте себе: вы только что добрались до начала тропы, за многие километры от цивилизации, а приложение с картами на вашем смартфоне решило, что самое время уйти в оффлайн-режим. Статус приложения? Отключено. Обновления? Забудьте об этом. Память? Заполнена. Добро пожаловать на дикую природу, где ваш телефон потерян больше, чем вы сами.</p>
49
<p>Представьте себе: вы только что добрались до начала тропы, за многие километры от цивилизации, а приложение с картами на вашем смартфоне решило, что самое время уйти в оффлайн-режим. Статус приложения? Отключено. Обновления? Забудьте об этом. Память? Заполнена. Добро пожаловать на дикую природу, где ваш телефон потерян больше, чем вы сами.</p>
50
<p>Здесь на помощь приходит Backcountry Beacon - устройство с открытым исходным кодом, которое не зависит от Wi-Fi. В него предустановлены детализированные топографические карты USGS, которые не требуют обновлений; он оснащён надёжным GPS, точно определяющим ваше местоположение; а ещё он работает как простой файловый сервер, где можно хранить всё, что может понадобиться в походе, - будь то руководства по узлам, справочники растений или даже аудиокниги классиков-натуралистов, которые действительно знали своё дело.</p>
50
<p>Здесь на помощь приходит Backcountry Beacon - устройство с открытым исходным кодом, которое не зависит от Wi-Fi. В него предустановлены детализированные топографические карты USGS, которые не требуют обновлений; он оснащён надёжным GPS, точно определяющим ваше местоположение; а ещё он работает как простой файловый сервер, где можно хранить всё, что может понадобиться в походе, - будь то руководства по узлам, справочники растений или даже аудиокниги классиков-натуралистов, которые действительно знали своё дело.</p>
51
<p><a>Читать далее</a></p>
51
<p><a>Читать далее</a></p>
52
<h2>Всё, что вы хотели знать о Django Channels</h2>
52
<h2>Всё, что вы хотели знать о Django Channels</h2>
53
<p>Когда я впервые начал работать с Django, меня всё устраивало, за исключением одного момента: как сделать так, чтобы приложение могло общаться с пользователем в реальном времени? Веб-сокеты, уведомления, асинхронные запросы - казалось, это точно не про чистый Django. Но затем я наткнулся на Django Channels, и многое изменилось. Channels позволили мне сделать приложение асинхронным, добавить поддержку веб-сокетов и превратить его во что-то гораздо более крутое.</p>
53
<p>Когда я впервые начал работать с Django, меня всё устраивало, за исключением одного момента: как сделать так, чтобы приложение могло общаться с пользователем в реальном времени? Веб-сокеты, уведомления, асинхронные запросы - казалось, это точно не про чистый Django. Но затем я наткнулся на Django Channels, и многое изменилось. Channels позволили мне сделать приложение асинхронным, добавить поддержку веб-сокетов и превратить его во что-то гораздо более крутое.</p>
54
<p>В этой статье я расскажу, как работать с Django Channels.</p>
54
<p>В этой статье я расскажу, как работать с Django Channels.</p>
55
<p><a>Читать далее</a></p>
55
<p><a>Читать далее</a></p>
56
<h2>Как и зачем использовать Template Method в C#</h2>
56
<h2>Как и зачем использовать Template Method в C#</h2>
57
<p>Template Method (он же "Шаблонный метод") - это паттерн проектирования, который определяет скелет алгоритма в методе, оставляя определенные шаги подклассам. Проще говоря, есть базовый алгоритм, но мы можно менять детали, переопределяя части этого алгоритма в наследниках.</p>
57
<p>Template Method (он же "Шаблонный метод") - это паттерн проектирования, который определяет скелет алгоритма в методе, оставляя определенные шаги подклассам. Проще говоря, есть базовый алгоритм, но мы можно менять детали, переопределяя части этого алгоритма в наследниках.</p>
58
<p>Классический пример - процесс заказа товара в интернет-магазине. Независимо от того, какой у вас магазин, шаги примерно одинаковые: проверка наличия товара, оплата, упаковка и доставка. Но в зависимости от специфики магазина, эти шаги могут отличаться в деталях.</p>
58
<p>Классический пример - процесс заказа товара в интернет-магазине. Независимо от того, какой у вас магазин, шаги примерно одинаковые: проверка наличия товара, оплата, упаковка и доставка. Но в зависимости от специфики магазина, эти шаги могут отличаться в деталях.</p>
59
<p>Template Method позволяет создать базовую структуру этих шагов и менять конкретные реализации без изменения самой структуры. В этой статье мы рассмотрим как реализовать этот паттерн на C#.</p>
59
<p>Template Method позволяет создать базовую структуру этих шагов и менять конкретные реализации без изменения самой структуры. В этой статье мы рассмотрим как реализовать этот паттерн на C#.</p>
60
<p><a>Читать далее</a></p>
60
<p><a>Читать далее</a></p>
61
<h2>Sidecar на Go: позволь другому заниматься твоими проблемами</h2>
61
<h2>Sidecar на Go: позволь другому заниматься твоими проблемами</h2>
62
<p>В распределённых системах каждая служба выполняет свою задачу: одна отвечает за логи, другая за обработку запросов, третья за безопасность. Но не всегда удобно нагружать основной сервис дополнительной логикой. Именно здесь хорошо вписывается <em>Sidecar</em> - отдельный контейнер или процесс, который берёт на себя часть инфраструктурных задач, разгружая основное приложение и позволяя сосредоточиться на главной бизнес-логике.</p>
62
<p>В распределённых системах каждая служба выполняет свою задачу: одна отвечает за логи, другая за обработку запросов, третья за безопасность. Но не всегда удобно нагружать основной сервис дополнительной логикой. Именно здесь хорошо вписывается <em>Sidecar</em> - отдельный контейнер или процесс, который берёт на себя часть инфраструктурных задач, разгружая основное приложение и позволяя сосредоточиться на главной бизнес-логике.</p>
63
<p>Сегодня мы рассмотрим реализацию <em>Sidecar</em> на Golang.</p>
63
<p>Сегодня мы рассмотрим реализацию <em>Sidecar</em> на Golang.</p>
64
<p><a>Читать далее</a></p>
64
<p><a>Читать далее</a></p>
65
<h2>Расширенная шпаргалка по корутинам Kotlin</h2>
65
<h2>Расширенная шпаргалка по корутинам Kotlin</h2>
66
<p>Предположим, что вы уже какое-то время работаете с Kotlin-корутинами и знакомы с базовыми концепциями, такими как приостанавливаемые (suspend) функции и билдер launch. Однако по мере усложнения проектов вы всё чаще сталкиваетесь с необходимостью искать решения для более продвинутых задач и обращаетесь к поисковым системам или искусственному интеллекту за помощью.</p>
66
<p>Предположим, что вы уже какое-то время работаете с Kotlin-корутинами и знакомы с базовыми концепциями, такими как приостанавливаемые (suspend) функции и билдер launch. Однако по мере усложнения проектов вы всё чаще сталкиваетесь с необходимостью искать решения для более продвинутых задач и обращаетесь к поисковым системам или искусственному интеллекту за помощью.</p>
67
<p>Эта шпаргалка создана как удобный справочник для сложных сценариев работы с корутинами и содержит ключевые идеи, накопленные мной за всё время работы.</p>
67
<p>Эта шпаргалка создана как удобный справочник для сложных сценариев работы с корутинами и содержит ключевые идеи, накопленные мной за всё время работы.</p>
68
<p><a>Читать далее</a></p>
68
<p><a>Читать далее</a></p>
69
<h2>Операции машинного обучения (MLOps) для начинающих: полное внедрение проекта</h2>
69
<h2>Операции машинного обучения (MLOps) для начинающих: полное внедрение проекта</h2>
70
<p>Разработка, развёртывание и поддержка моделей машинного обучения в продакшене может быть сложной и трудоёмкой задачей. Именно здесь на помощь приходит Machine Learning Operations (MLOps). MLOps - это набор практик, который автоматизирует управление ML-процессами и упрощает развёртывание моделей.</p>
70
<p>Разработка, развёртывание и поддержка моделей машинного обучения в продакшене может быть сложной и трудоёмкой задачей. Именно здесь на помощь приходит Machine Learning Operations (MLOps). MLOps - это набор практик, который автоматизирует управление ML-процессами и упрощает развёртывание моделей.</p>
71
<p>В этой статье я расскажу о некоторых основных практиках и инструментах MLOps на примере реализации проекта от начала до конца. Это поможет вам эффективнее управлять ML-проектами, начиная с разработки и заканчивая мониторингом в продакшене.</p>
71
<p>В этой статье я расскажу о некоторых основных практиках и инструментах MLOps на примере реализации проекта от начала до конца. Это поможет вам эффективнее управлять ML-проектами, начиная с разработки и заканчивая мониторингом в продакшене.</p>
72
<p><a>Читать далее</a></p>
72
<p><a>Читать далее</a></p>
73
<h2>Коротко о SLAB, SLOB и SLYB в Linux</h2>
73
<h2>Коротко о SLAB, SLOB и SLYB в Linux</h2>
74
<p>Когда речь заходит о динамическом управлении памятью в Linux, мы имеем дело с несколькими разными подходами, каждый из которых имеет свои плюсы и минусы.</p>
74
<p>Когда речь заходит о динамическом управлении памятью в Linux, мы имеем дело с несколькими разными подходами, каждый из которых имеет свои плюсы и минусы.</p>
75
<p>В этой статье разберем три аллокатора памяти ядра: SLAB, SLOB, а также SLUB.</p>
75
<p>В этой статье разберем три аллокатора памяти ядра: SLAB, SLOB, а также SLUB.</p>
76
<p><a>Читать далее</a></p>
76
<p><a>Читать далее</a></p>
77
<h2>Разбираемся с мандатным управлением доступом в Астра Линукс</h2>
77
<h2>Разбираемся с мандатным управлением доступом в Астра Линукс</h2>
78
<p>Мандатная модель управления доступом не получила столь широкого распространения в пользовательских операционных системах из-за своей сложности, а также из-за того, что в ней нет большой необходимости при решении задач, не связанных с высоким уровнем конфиденциальности. В этой статье мы попробуем разобраться с тем, что из себя представляет эта модель и как ей пользоваться.</p>
78
<p>Мандатная модель управления доступом не получила столь широкого распространения в пользовательских операционных системах из-за своей сложности, а также из-за того, что в ней нет большой необходимости при решении задач, не связанных с высоким уровнем конфиденциальности. В этой статье мы попробуем разобраться с тем, что из себя представляет эта модель и как ей пользоваться.</p>
79
<p><a>Читать далее</a></p>
79
<p><a>Читать далее</a></p>
80
<h2>Grafana Stack: закрываем все современные потребности Observability</h2>
80
<h2>Grafana Stack: закрываем все современные потребности Observability</h2>
81
<p>Ни одна система не может функционировать без сбоев, всегда могут возникнуть ситуации, когда в работе софта возникают проблемы. И здесь важное значение имеет observability - понятие, включающее в себя мониторинг и наблюдаемость. С помощью мониторинга мы можем определить, когда возникла проблема, а наблюдаемость позволяет нам понять, почему она возникла.</p>
81
<p>Ни одна система не может функционировать без сбоев, всегда могут возникнуть ситуации, когда в работе софта возникают проблемы. И здесь важное значение имеет observability - понятие, включающее в себя мониторинг и наблюдаемость. С помощью мониторинга мы можем определить, когда возникла проблема, а наблюдаемость позволяет нам понять, почему она возникла.</p>
82
<p>В этой статье мы поговорим о том, как можно реализовать observability с помощью сервисов стека Grafana.</p>
82
<p>В этой статье мы поговорим о том, как можно реализовать observability с помощью сервисов стека Grafana.</p>
83
<p><a>Читать далее</a></p>
83
<p><a>Читать далее</a></p>
84
<a></a>
84
<a></a>