IT и инвестиции | Алексей Солонков
589 subscribers
39 photos
3 videos
45 links
Канал о том, как достичь успеха, вооружившись современными знаниями в ИТ
Download Telegram
Синхронно vs. Асинхронно: выбираем подход к взаимодействию микросервисов

Синхронное

В синхронном взаимодействии клиентский микросервис ожидает ответа от вызываемого микросервиса перед продолжением своей работы.

Плюсы синхрона:

1. Простота. Проще в реализации и отладке.
2. Прозрачность. Позволяет легко отслеживать и управлять последовательностью выполнения операций.

Минусы синхрона:

1. Зависимость от доступности. Если вызываемый микросервис недоступен или работает медленно, это может привести к задержкам и блокировкам в клиентском микросервисе.
2. Узкое место. Если синхронные вызовы выполняются последовательно, это может стать узким местом производительности.

Асинхронное

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

Плюсы асинхрона:

1. Отказоустойчивость. Позволяет избежать блокировки клиентского микросервиса при недоступности вызываемого микросервиса.
2. Масштабируемость. Может быть параллельным, что способствует лучшей масштабируемости системы.

Минусы асинхрона:

1. Сложность. Требует более сложной реализации, так как необходимо обрабатывать асинхронные ответы и управлять состоянием запросов.
2. Усложнение отладки. Отслеживание и отладка может быть сложнее из-за распределения запросов и ответов во времени.

Что выбрать?

Правильный выбор подхода зависит от следующих факторов:

1. Время отклика. Если требуется мгновенный отклик и задержки недопустимы, синхронное взаимодействие может быть предпочтительным.
2. Надежность. Если надежность и отказоустойчивость важны, асинхронное взаимодействие может быть предпочтительным, так как избегает блокировок и позволяет более гибко обрабатывать ошибки и отказы.
3. Производительность. Если система требует высокой производительности и параллельной обработки запросов, асинхронное взаимодействие может быть более эффективным.

Развернутая статья здесь
👍6
Карелия - место силы!

Совершил двухдневное путешествие в Карелию на автомобиле. Это удивительный регион, который справедливо можно назвать местом силы.

Природное богатство

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

Культурное наследие

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

Возможности для активного отдыха

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

Рекомендации

1. Возьмите паспорт для каждого человека - есть приграничный контроль при въезде в регион.
2. Обязательно попробуйте местные блюда из рыбы. Форель по цене лука - это невероятно! Покупать рыбу с собой лучше в магазинах-ресторанах.
3. Возьмите теплую одежду. Погода за день может иметь разбег от +20 до дождя с градом. К тому же, в лесу и у воды значительно прохладнее.
4. Рестораны выбирайте по отзывам или местам скопления туристов.
5. Все достопримечательности расположены достаточно компактно. Рекомендую заранее подготовить маршрут поездки.
👍8
ChatGPT vs. Программист

Я приведу набор рекомендаций по использованию ChatGPT, которые будут полезны программисту в повседневной работе.

1. Поиск по тексту ошибок

Вместо кропотливого гугления вашей ошибки, вставьте ее в ChatGPT и она выдаст вам весьма вразумительный ответ с описанием причин ее возникновения, примерами и способами решения.

2. Поиск потенциальных ошибок в коде

Вставьте фрагмент кода и попросите ChatGPT найти ошибки в нем. Только не забывайте об NDA в вашей компании!

3. Написание unit-тестов и бенчмарков для ваших методов

Вставьте нужный метод и попросите написать к нему нужный тест. Даже если вам придется переписать часть кода, примеры будут информативны.

4. Вопросы о специфических конструкциях в вашем языке

Если вы в чем-то неуверенны – задайте свой вопрос ChatGPT. Ответ будет более информативным, нежели результат гугления.

5. Рефакторинг кода

Нейросети можно доверить рефакторинг кода (напоминаю, что код под NDA вставлять не нужно!) Например, когда у вас есть метод на сотни строк, выполняющий много разноплановой работы – ChatGPT неплохо справится с декомпозицией.

6. Написание каркаса приложения

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

Развернутую статью читайте здесь
👍61
Эмоциональное выгорание: личный опыт борьбы, продолжение

1. Человеческий потенциал

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

2. Эмоции и логика

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

3. Уровни реальности

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

4. Принцип рычага

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

5. Спорт

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

Детальный разбор читайте здесь
👍7
Микросервисы: преимущества и недостатки

Микросервисы — это независимо выпускаемые сервисы, которые моделируются вокруг предметной области бизнеса. Они характеризуются четкими и стабильными границами, которые не меняются при изменении внутренней реализации. Такой подход приводит к созданию систем с более слабой связанностью (coupling) и более сильной связностью (cohesion).

Основные концепции

1. Независимое развертывание.
2. Моделирование вокруг предметной области бизнеса.
3. Границы ответственности.
4. Размер.
5. Гибкость.

Преимущества микросервисов

1. Технологическая неоднородность.
2. Надежность.
3. Масштабирование.
4. Простота развертывания.
5. Согласованность рабочих процессов в организации.
6. Повторное использование.

Недостатки микросервисов

1. Опыт разработчика.
2. Технологическая перегрузка.
3. Стоимость.
4. Отчетность.
5. Мониторинг и устранение неполадок.
6. Безопасность.
7. Тестирование.
8. Время ожидания.
9. Согласованность данных.

Подробную статью читайте здесь
🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Надеюсь, вы продвинутые ребята 😉 И ваш мангал не хуже 😜 Желаю всем хороших выходных!
🔥42👏1😁1
Эволюция жизни и восстание машин: что нас ждет?

Наступили выходные, а с ними время легких историй выходного дня 😊

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

Устраивайтесь поудобней и поехали!

Чудесный субботний лонгрид здесь
🔥6
Domain-Driven Design

Предметно-ориентированный подход (DDD, Domain-Driven Design) в проектировании программного обеспечения является наиболее эффективным способом моделирования бизнес-процессов.

Сегодня мы поговорим о стратегическом и тактическом проектировании, после чего рассмотрим инструмент ускорения проектирования под названием событийный штурм (event storming).

https://habr.com/ru/articles/745830/
🔥51