Форум программистов, компьютерный форум, киберфорум
Event sourcing
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Старый
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (2)
Запись от ArchitectMsa размещена 23.10.2025 в 13:11 / Microservice it all!
Показов 6194 Комментарии 0

Нажмите на изображение для увеличения
Название: Шардинг и горизонтальное масштабирование ботов.jpg
Просмотров: 724
Размер:	179.6 Кб
ID:	11330
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (1)

Шардинг и горизонтальное масштабирование ботов



Вертикальное масштабирование упирается в физические границы железа довольно быстро. У меня был момент когда бот обрабатывал 300 тысяч пользователей на сервере с 32 гигами RAM и 16 ядрами....
Аватар для ArchitectMsa
Старый
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (1)
Запись от ArchitectMsa размещена 23.10.2025 в 13:05 / Microservice it all!. Обновил(-а) ArchitectMsa 23.10.2025 в 13:11
Показов 6333 Комментарии 0

Нажмите на изображение для увеличения
Название: Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений.jpg
Просмотров: 565
Размер:	209.9 Кб
ID:	11325
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (2)

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

Я помню, как лет пять назад запустил своего первого бота на VPS за 5...
Аватар для ArchitectMsa
Старый
Event-Driven архитектура с Kafka: Outbox Pattern, Exactly-Once и идемпотентные консьюмеры
Запись от ArchitectMsa размещена 09.10.2025 в 21:41 / Microservice it all!
Показов 5576 Комментарии 0

Нажмите на изображение для увеличения
Название: Event-Driven архитектура с Kafka.jpg
Просмотров: 616
Размер:	161.8 Кб
ID:	11274
Представь: твой сервис успешно записал заказ в базу, отправил событие в Kafka, а через секунду всё упало. Заказ есть, событие... может быть есть, а может нет. Или их теперь три копии, потому что продюсер героически ретраился. Склад списал товар дважды, бухгалтерия насчитала...
Аватар для ArchitectMsa
Старый
Go 1.25 - возможности с примерами
Запись от golander размещена 26.09.2025 в 19:56 / go go just go
Показов 4457 Комментарии 0

Нажмите на изображение для увеличения
Название: Go 1.25 - возможности с примерами.jpg
Просмотров: 391
Размер:	108.1 Кб
ID:	11218
Последние несколько лет я постоянно сталкивался с одной и той же проблемой — как выжать максимум производительности из Go без жертвы читабельностью кода. С выходом Go 1.25 эта дилемма, кажется, начинает решаться на уровне самого языка.

Profile-Guided Optimization: из экспериментальной фичи в надежный инструмент



Наконец-то PGO (Profile-Guided Optimization) стабилизирована! Это больше не экспериментальная...
Аватар для golander
Старый
Роль Domain-Driven Design в современных архитектурах
Запись от ArchitectMsa размещена 25.09.2025 в 20:41 / Microservice it all!
Показов 2876 Комментарии 0

Нажмите на изображение для увеличения
Название: Роль Domain-Driven Design в современных архитектурах.jpg
Просмотров: 286
Размер:	253.0 Кб
ID:	11213
Шесть лет назад я впервые столкнулся с тем, что впоследствии стало моим худшим кошмаром — монолитным приложением на два с половиной миллиона строк кода. Десятки разработчиков годами вносили изменения, и система превратилась в неуправляемого монстра. Я помню, как...
Аватар для ArchitectMsa
Старый
Архитектура ПО для разработчиков или Зачем нам системное мышление
Запись от ArchitectMsa размещена 31.08.2025 в 21:49 / Microservice it all!
Показов 5610 Комментарии 0

Нажмите на изображение для увеличения
Название: Архитектура ПО для разработчиков или Зачем нам системное мышление.jpg
Просмотров: 395
Размер:	193.5 Кб
ID:	11090
Давай я расскажу, что происходит в большинстве проектов, с которыми мне приходилось работать. Вначале всё выглядит прекрасно: чистые интерфейсы, продуманные абстракции, явные зависимости. А через полгода код превращается в запутанный клубок спагетти, где любое...
Аватар для ArchitectMsa
Старый
Создание облачных приложений Rust: руководство по архитектуре микросервисов
Запись от golander размещена 19.08.2025 в 21:03 / go go just go
Показов 4887 Комментарии 0

Нажмите на изображение для увеличения
Название: Создание облачных приложений Rust.jpg
Просмотров: 428
Размер:	139.7 Кб
ID:	11059
Когда три года назад передо мной встала задача реинжинирить платформу электронной коммерции с нуля, я долго размышлял над выбором языка. Java показалась слишком прожорливой по памяти, Go - слишком примитивной для сложной бизнес-логики, а вот Rust... Rust заставил меня пересмотреть весь подход к архитектуре распределенных систем.

Зачем Rust для микросервисов в облаке



Честно говоря, первый опыт с Rust был болезненным....
Аватар для golander
Старый
Event-Driven архитектуры в C# - сравнение брокеров и выбор решения
Запись от ArchitectMsa размещена 11.08.2025 в 17:51 / Microservice it all!. Обновил(-а) mik-a-el 11.08.2025 в 18:40
Показов 4449 Комментарии 0

Нажмите на изображение для увеличения
Название: Event-Driven архитектуры в C# - практическое сравнение и выбор решения.jpg
Просмотров: 398
Размер:	155.7 Кб
ID:	11046
Начало: Event-Driven архитектуры в C# - выбираем правильного брокера сообщений

Azure Service Bus - облачное решение от Microsoft



Когда все твои сервисы крутятся в облаке Microsoft, ставить на продакшн самостоятельно настроенную Kafka или RabbitMQ часто становится излишней головной болью. Именно поэтому последние...
Аватар для ArchitectMsa
Старый
Event-Driven архитектуры в C# - выбираем правильного брокера сообщений
Запись от ArchitectMsa размещена 10.08.2025 в 19:39 / Microservice it all!
Показов 5151 Комментарии 0

Нажмите на изображение для увеличения
Название: Event-Driven архитектуры в C# - выбираем правильного посредника сообщений.jpg
Просмотров: 398
Размер:	163.7 Кб
ID:	11045
Недавно я консультировал проект интернет-магазина, где для оформления заказа требовалось последовательно вызывать сервисы: корзины, проверки доступности товаров, расчета доставки, создания заказа, списания средств. Типичная картина! Но что происходило, когда...
Аватар для ArchitectMsa
Старый
Spring Kafka - синхронные и асинхронные запросы
Запись от Javaican размещена 01.08.2025 в 20:30 / Making Java great for ever
Показов 6809 Комментарии 0

Нажмите на изображение для увеличения
Название: Spring Kafka - синхронные и асинхронные запросы.jpg
Просмотров: 427
Размер:	183.8 Кб
ID:	11026
Когда я впервые столкнулся с Apache Kafka, меня поразила его архитектура, заточеная под асинхронное взаимодействие. Этот брокер сообщений, созданный изначально в недрах LinkedIn, а сейчас развиваемый Apache Foundation, проектировался как высокопроизводительная шина для потоковой обработки данных, где сообщения публикуются, хранятся в упорядоченых логах и затем потребляются одним или несколькими получателями.

Введение в Request-Reply паттерн в Kafka


...
Аватар для Javaican
Старый
Паттерн Saga в C#: управление распределенными транзакциями в микросервисной архитектуре
Запись от ArchitectMsa размещена 28.07.2025 в 20:58 / Microservice it all!
Показов 3749 Комментарии 0

Нажмите на изображение для увеличения
Название: C# и реализация Saga для распределеннах транзакций между микросервисами.jpg
Просмотров: 319
Размер:	223.5 Кб
ID:	11016
Как только вы начинаете работать с микросервисами, сразу сталкиваетесь с одной из самых коварных проблем – управлением транзакциями. Как-то на одном из проектов мы с командой чуть не сломали головы, пытаясь обеспечить согласованность данных между сервисами заказов,...
Аватар для ArchitectMsa
Старый
Облачные приложения на Rust: руководство по архитектуре микросервисов
Запись от golander размещена 13.07.2025 в 20:47 / go go just go
Показов 13124 Комментарии 3

Нажмите на изображение для увеличения
Название: Облачные приложения на Rust руководство по архитектуре микросервисов.jpg
Просмотров: 382
Размер:	234.8 Кб
ID:	10979
Когда я впервые взялся за проектирование облачной платформы для одного из наших клиентов, выбор стоял между привычными Go и Java. Но после нескольких месяцев разработки микросервисной системы, которая трещала по швам под нагрузкой, пришлось искать альтернативы. И тут на сцену вышел Rust - язык, который я раньше пробовал только для системного программирования.

Что делает Rust таким привлекательным...
Аватар для golander
Старый
CQRS и Event Sourcing на C#
Запись от ArchitectMsa размещена 25.06.2025 в 19:16 / Microservice it all!
Показов 3129 Комментарии 0

Нажмите на изображение для увеличения
Название: CQRS и Event Sourcing на C#.jpg
Просмотров: 380
Размер:	198.7 Кб
ID:	10926

За последние несколько лет сложность корпоративных приложений выросла в геометрической прогрессии. Простые монолитные системы уступили место распределенным микросервисам, а нагрузка на корпоративные приложения достигла невиданных ранее масштабов. Трациционные...
Аватар для ArchitectMsa
Старый
Мастер-класс по микросервисам на Node.js
Запись от Reangularity размещена 21.06.2025 в 09:24 / Vue/React/Angular/Svelte notes
Показов 8994 Комментарии 0

Нажмите на изображение для увеличения
Название: Мастер-класс по микросервисам на Node.js.jpg
Просмотров: 327
Размер:	115.0 Кб
ID:	10913
Node.js стал одной из самых популярных платформ для микросервисной архитектуры не случайно. Его неблокирующая однопоточная модель и событийно-ориентированный подход делают его идеальным для высоконагруженных систем с интенсивным вводом/выводом. Хотя ранее я скептически относился к JavaScript на сервере, сейчас это мой основной инструмент для построения распределенных систем, обрабатывающих...
Аватар для Reangularity
Старый
Тип Record в C#
Запись от stackOverflow размещена 10.06.2025 в 21:37
Показов 4398 Комментарии 0

Нажмите на изображение для увеличения
Название: Тип Record в C#.jpg
Просмотров: 302
Размер:	190.5 Кб
ID:	10893
Многие годы я разрабатывал приложения на C#, используя классы для всего подряд - и мне это казалось естественным. Но со временем, особенно в крупных проектах, я стал замечать, что простые классы данных создают целый ворох проблем, которые отнимают уйму времени и нервов. Возьмем классический пример класса для передачи данных:

C#
1
2
3
4
public class UserInfo
{
    public string Name { get; set; }
    public string Email { get; set; }
...
Аватар для stackOverflow
Старый
CAP-теорема или почему идеальной распределенной системы не существует
Запись от ArchitectMsa размещена 28.05.2025 в 16:01 / Microservice it all!
Показов 3251 Комментарии 0

Нажмите на изображение для увеличения
Название: 97e95119-0c60-4680-ba0a-152d1b634505.jpg
Просмотров: 320
Размер:	151.9 Кб
ID:	10852
Вы переводите деньги со своего счета на счет друга. Казалось бы, что может быть проще? Вы открываете приложение банка, вводите сумму, жмете кнопку - и деньги мгновенно переходят с одного счета на другой. Но что происходит, если в момент транзакции связь между серверами...
Аватар для ArchitectMsa
Старый
Рейтинг: 5.00. Голосов: 1.
Event-Driven приложения с Apache Kafka и KafkaFlow в .NET
Запись от stackOverflow размещена 26.05.2025 в 20:50
Показов 3711 Комментарии 0

Нажмите на изображение для увеличения
Название: d74997f4-fb96-476a-b5e2-51fedbecd61c.jpg
Просмотров: 430
Размер:	209.7 Кб
ID:	10850
Для .NET разработчиков работа с Kafka традиционно сопряжена с определенными трудностями. Официальный клиент Confluent хорош, но часто требует написания большого количества шаблонного кода. Многие разработчики тратят дни, разбираясь с настройками сериализации — это настоящее...
Аватар для stackOverflow
Старый
.NET Aspire и cloud-native приложения C#
Запись от stackOverflow размещена 24.05.2025 в 20:29
Показов 5422 Комментарии 0

Нажмите на изображение для увеличения
Название: 38db48f6-b687-4c57-b5b7-b827eae9ad9c.jpg
Просмотров: 318
Размер:	209.5 Кб
ID:	10844
.NET Aspire — новый продукт в линейке Microsoft, который вызвал настоящий ажиотаж среди разработчиков облачных приложений. Компания называет его "опинионированным, облачно-ориентированным стеком для создания наблюдаемых, готовых к промышленному использованию распределенных...
Аватар для stackOverflow
Старый
CQRS (Command Query Responsibility Segregation) на Java
Запись от Javaican размещена 12.05.2025 в 12:00 / Making Java great for ever
Показов 4398 Комментарии 0

Нажмите на изображение для увеличения
Название: c2370a0f-4b39-47f6-aec2-ece91799151d.jpg
Просмотров: 240
Размер:	214.5 Кб
ID:	10795
CQRS — Command Query Responsibility Segregation, или разделение ответственности команд и запросов. Суть этого архитектурного паттерна проста: операции чтения данных (запросы) отделяются от операций изменения данных (команды). Многим эта идея покажется странной – зачем вообще что-то...
Аватар для Javaican
Старый
Делегаты и события C# в лучших практиках Event-Driven программирования
Запись от stackOverflow размещена 08.05.2025 в 15:10
Показов 3609 Комментарии 0

Нажмите на изображение для увеличения
Название: 154184c3-7320-4cd1-90e9-ebfbfa0602b9.jpg
Просмотров: 257
Размер:	167.0 Кб
ID:	10767
Помню, как в 2010-м работал над своим первым крупным проектом на C#. Это была система обработки торговых ордеров, и мой код напоминал спагетти из проверок условий. «Если пришёл запрос — обработай и оповести все зависимые модули». На каждое действие я создавал десятки явных вызовов методов различных...
Аватар для stackOverflow
Старый
Реляционные СУБД и распределенные системы: конфликт архитектур
Запись от Codd размещена 08.05.2025 в 12:24 / Data... Everywhere
Показов 3746 Комментарии 0

Нажмите на изображение для увеличения
Название: 3fb8b97b-0e9a-408b-9ace-68b21bd34d1c.jpg
Просмотров: 277
Размер:	227.9 Кб
ID:	10765
Каждый, кто хоть раз пытался "растянуть" классическую СУБД на несколько серверов, знаком с тем странным ощущением, когда кажется, что система сопротивляется вашим усилиям. И это не просто ощущение — это фундаментальный архитектурный конфликт, заложенный в самой ДНК реляционных баз данных.

Рождение монолита: как реляционные СУБД захватили мир



История реляционных СУБД начинается в 1970 году с публикации знаменитой статьи Эдгара Кодда. В...
Аватар для Codd
Старый
C# и микросервисы: Распределённые системы на .NET
Запись от stackOverflow размещена 02.05.2025 в 11:46
Показов 3527 Комментарии 0

Нажмите на изображение для увеличения
Название: 71e48cb5-9280-474b-85b7-bb50a4c88cc0.jpg
Просмотров: 211
Размер:	194.2 Кб
ID:	10707
Мир разработки ПО стремительно меняется — монолитные приложения уступают место гибким, масштабируемым архитектурам. Микросервисы давно превратились из модного словечка в реальную производственную необходимость, особенно когда дело касается крупных распределённых систем. А платформа .NET, с её мощным C#, предоставляет отличный инструментарий для создания таких систем. Я помню времена, когда мы радостно...
Аватар для stackOverflow
Старый
Шаблоны и протоколы для создания устойчивых микросервисов
Запись от ArchitectMsa размещена 19.04.2025 в 10:06 / Microservice it all!
Показов 4330 Комментарии 0

Нажмите на изображение для увеличения
Название: 24fb8dca-eead-449d-9708-a3005e2dc6b4.jpg
Просмотров: 314
Размер:	139.4 Кб
ID:	10615
Микросервисы — архитектурный подход, разбивающий сложные приложения на небольшие, независимые компоненты. Вместо монолитного гиганта, система превращается в созвездие небольших взаимодействующих сервисов. По своей сути, это как качественно организованный оркестр,...
Аватар для ArchitectMsa
Старый
Построение эффективных запросов в микросервисной архитектуре: Стратегии и практики
Запись от ArchitectMsa размещена 18.04.2025 в 22:20 / Microservice it all!
Показов 3492 Комментарии 0

Нажмите на изображение для увеличения
Название: 42af18b9-cf19-43fd-ac18-0166724d8e59.jpg
Просмотров: 223
Размер:	300.4 Кб
ID:	10612
Микросервисная архитектура принесла с собой много преимуществ — возможность независимого масштабирования сервисов, технологическую гибкость и четкое разграничение ответственности. Но как часто бывает в программной инженерии, решая одни проблемы, мы создаем...
Аватар для ArchitectMsa
Старый
Паттерны распределённых транзакций в Event-Driven микросервисах
Запись от ArchitectMsa размещена 05.04.2025 в 10:53 / Microservice it all!
Показов 4636 Комментарии 0

Нажмите на изображение для увеличения
Название: 08887aca-a43e-46e5-86a7-cf040d1d9b5c.jpg
Просмотров: 291
Размер:	290.1 Кб
ID:	10527
Современные программные системы всё чаще проектируются как совокупность взаимодействующих микросервисов. И хотя такой подход даёт множество преимуществ — масштабируемость, гибкость, устойчивость к отказам отдельных компонентов — он также порождает новый класс...
Аватар для ArchitectMsa
Старый
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
Запись от ArchitectMsa размещена 22.03.2025 в 09:23 / Microservice it all!
Показов 8085 Комментарии 0

Нажмите на изображение для увеличения
Название: de1588d4-9218-4bb3-8cc4-1edd3df04913.jpg
Просмотров: 362
Размер:	170.2 Кб
ID:	10483
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и языки программирования. Компании могут масштабировать отдельные...
Аватар для ArchitectMsa
Старый
Реализация паттерна CQRS с Event Sourcing в PHP
Запись от Jason-Webb размещена 19.03.2025 в 08:11 / Webmastering PHP
Показов 1860 Комментарии 0
Метки cqrs, event sourcing, php

Нажмите на изображение для увеличения
Название: 22b6a19b-e993-4e7a-a742-b3fceb4aa760.jpg
Просмотров: 206
Размер:	170.3 Кб
ID:	10454
CQRS (Command Query Responsibility Segregation) — это архитектурный паттерн, который разделяет операции чтения и записи данных в приложении. Если вы столкнулись с ситуацией, когда ваше PHP-приложение начинает "задыхаться" под нагрузкой, или модель данных стала настолько сложной,...
Аватар для Jason-Webb
Новые блоги и статьи
Модель здравосохранения 14. Собираем всю модель вместе.
anaschu 22.05.2026
Модель собрана. В будущих постах на видео я покажу, как она работает. В этом посте запускаем её, проверяем результаты и разбираем что можно с ней делать дальше. Перед запуском проверяем. . .
Модель здравоохранения 13. Добавление самой системы здравоохранения.
anaschu 22.05.2026
В предыдущем посте мы настроили болезни. Теперь добавим события, которые управляют здоровьем всего коллектива, а также настроим рабочий график и расчёт финансов. В Main создаём четыре события. . . .
Модель здравоохранения 12. добавление болезней через ресурпул, как аварии
anaschu 22.05.2026
Болезни — это ключевая часть нашей модели. Нам нужно, чтобы работник периодически уходил на больничный, его задание при этом зависало, а после выздоровления работа возобновлялась. Реализуем это двумя. . .
Модель здравоохранения 11. Создаём классы Задание и Работник
anaschu 22.05.2026
В AnyLogic каждая заявка и каждый ресурс — это объект определённого класса. Нам нужно создать два класса: Задание (заявка) и Работник (ресурс). Класс Задание В дереве проекта нажимаем правой. . .
Модель здравоохранения 10. Новая модель, смотрим, как добавлять логические блоки, и что писать внутри
anaschu 22.05.2026
Открываем AnyLogic, создаём новый проект. В дереве проекта появляется класс Main — это главный агент, в котором будет жить вся наша логика. Палитра блоков Слева находится палитра. Нас интересует. . .
модель ЗдравоСохранения 9. Новая модель, разбираемся, как ее создавать
anaschu 22.05.2026
В этой серии постов мы построим модель небольшого рабочего коллектива. Сотрудники получают задания, выполняют их, иногда болеют — и мы хотим посчитать, сколько это стоит компании. Метод. . .
[golang] Linked list
alhaos 22.05.2026
Связный список / Linked list Связный список структура данных позволяющая хранить список значений, в отличии от массива в памяти хранится не сплошным куском, а отдельными частями которые ссылаются. . .
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове. Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru