Поэтому сегодня мы поговорим о том, как:
- Настроить MinIO очень быстро.
- Настроить MinIO чуть менее быстро, но значительно качественней.
- Использовать его в качестве Archive Tier для масштабируемого репозитория Veeam SOBR.
Уже не безработный ;)
Для локальной отладки сервиса мне понадобилось установить Apache Cassandra на Windows 10. Нормальный установщик был только у компании DataStax, но они прекратили его поддерживать.
В данной статье я опишу, как установить Apache Cassandra на Windows в виде сервиса.
Привет, Хабр!
Каждая секунда простоя может стоить компании целое состояние, важно иметь надежные механизмы защиты от сбоев. Здесь и приходит на помощь паттерн Circuit Breaker.
Представьте себе обычный автоматический выключатель в вашем доме. Когда происходит перегрузка, он "выбивается", предотвращая возможные повреждения. Точно так же работает и Circuit Breaker в микросервисах. Он мониторит вызовы к внешнему сервису и при обнаружении слишком большого количества неудачных попыток временно "отключает" вызов, предотвращая тем самым падение всей системы.
Этот паттерн основывается на трех основных состояниях: закрытое, открытое и полуоткрытое.
Эта статья, как и приложение были написаны на прошлых новогодних праздниках, но по ряду причин, я не решился публиковать текст, так и остался он в черновиках. Вчера случилось страшное - в канун новогодних праздников город Белгород, в котором я живу, попал под массированный обстрел кассетными боеприпасами, моя семья также попала в сектор бомбардировки, чудом спаслись и не пострадали. Все произошло быстро, эти несколько минут перевернули жизни сотен семей. Когда мы вышли из укрытия, стало понятно, что будут десятки погибших. Увы, не сработали никакие системы превентивного предупреждения.
О сложных системах простыми словами.
В шпаргалке на высоком уровне рассматриваются такие вещи, как протоколы коммуникации, DevOps, CI/CD, архитектурные паттерны, базы данных, кэширование, микросервисы (и монолиты), платежные системы, Git, облачные сервисы etc. Особую ценность представляют диаграммы — рекомендую уделить им пристальное внимание. Полагаю, шпаргалка будет интересна всем, кто хоть как-то связан с разработкой программного обеспечения и, прежде всего, веб-приложений. Буду признателен за помощь в уточнении/исправлении понятий, терминологии, логики/алгоритмов работы систем (в рамках того, что по этому поводу содержится в оригинале), а также в обнаружении очепяток.
Выражаю благодарность Анне Неустроевой за помощь в редактировании материала.
Возможно, немного другой формат шпаргалки покажется вам более удобным.
Привет! Меня зовут Сергей, я технический эксперт в компании Bercut. Когда-то увлекался Delphi и J2ME, издал несколько книг на эти темы, и профессионально уже около 20 лет создаю высоконагруженные приложения баз данных, используя для этого PL/SQL и SQL.
В Bercut мы занимаемся разработкой и развитием IT-продуктов и решений для операторов цифровых услуг и мобильных сервисов. Наши системы работают на различном железе, разных СУБД и обслуживают 24x7x365 в режиме онлайн сотни миллионов абонентов по всему миру. И это только кажется, что абонент один раз в день куда-то позвонил и все, больше никакой нагрузки от него нет и никто с ним не работает. На самом деле каждый смартфон каждого абонента непрерывно обменивается данными с сетью, а это все работа инфраструктуры операторов сотовой связи, а значит, нашего ПО. Как же система справляется с таким огромным объемом нагрузки?
Сегодня расскажу, что нужно делать и чего избегать, чтобы построить максимально производительную систему на примере СУБД Оракл.
Новый набор инструментов для разработчиков Nvidia Jetson Nano 2GB представляет собой одноплатный компьютер с графическим ускорителем стоимостью 59$, работающий под управлением программного обеспечения с искусственным интеллектом.
Производительность, которую вы можете получить от одноплатного компьютера за 59$ в 2020 году, просто потрясающая. Давайте попробуем использовать этот продукт, чтобы собрать простой вариант домофона, который будет отслеживать всех людей, подходящих ко входной двери вашего дома. С помощью алгоритма распознавания лиц система мгновенно узнает, приближался ли когда-нибудь в прошлом к вашей двери этот человек, даже если в прошлый визит он был одет по-другому.
Эта серия заметок служит введением в разработку реактивных веб-приложений с использованием Spring Boot, Project Reactor, WebFlux и R2DBC. Это руководство по реактивному миру для новичков, но предполагается, что читатель уже знаком с Java и Spring Boot.
В первой части представлен обзор различных концепций реактивного программирования и их истории. Вторая часть представляет собой введение в Project Reactor с большим количеством коротких примеров кода. В третьей части рассматривается WebFlux - реактивный веб-фреймворк Spring. И, наконец, четвертая часть посвящена R2DBC - Reactive Relational Database Connectivity.
Привет! Продолжаем цикл статей про тестирование не-REST-бэкенда, в прошлый раз мы говорили о GraphQL, теперь пришло время WebSocket.
Итак, что такое WebSocket?
Википедия сообщает, что это «протокол связи поверх TCP-соединения, предназначенный для обмена сообщениями между браузером и веб-сервером, использующий постоянное соединение».
Что тут важно — что это протокол (со всеми вытекающими последствиями для протокола), который использует постоянное соединение.
Работу по WebSocket в обычной жизни можно представить примерно так.
Вы живете в квартире вместе с семьей, решили поработать, ушли в отдельную комнату и закрыли за собой звуконепроницаемую дверь (ну а как еще работать-то). В общем, сидите, работаете, и вообще не слышите происходящего в квартире. Заметите только, если вам кто-то постучить в дверь.
И тут к вам в дверь стучит, скажем, жена, вы открываете, и она говорит, что ей надо уехать по делам вместе с остальными членами семьи, вы в доме за старшего, и надо будет встретить курьера, который скоро приедет.
ОК, что вам делать в такой ситуации?
В этой статье я хочу рассказать о практическом опыте нативной компиляции production приложения, написанного на Kotlin со Spring Boot, Gradle с использованием GraalVM . Начну сразу с минусов и плюсов самой возможности нативной компиляции и где она может быть полезна, и дальше перейду уже непосредственно к процессу сборки под MacOS и Windows.
В конце статьи я более подробно расскажу о проекте и почему возникла такая необходимость, учитывая довольно много ограничений и подводных камней поддержки нативной компиляции как со стороны Spring Boot, та и со стороны GraalVM.
C 2010 года вместе с тем, как свет увидел новый язык программирования Rust от Mozilla я начал его изучение и применение. Время шло, но он стабильно показывал отличное соотношение тех, кто хочет использовать его, кто уже использует и кто планирует делать это дальше.
С появлением стабильной версии 1.0 в 2015 году было решено «с головой» погружаться в изучение и пилить курс, который бы в «экспресс» режиме позволил познакомиться с основами и понять, как использовать Rust на практике.
В кейсе поговорим о создании курса, разочаровании в российском рынке, выходе материала в мир и увеличении доходов с его продажи почти в 10 раз.
Это вам не 3D-принтер гонять, тут все по-взрослому. Покажем производство корпусов по очень популярной технологии литья полиуретана в силиконовые формы — как это делается; и расскажем о рисках и ошибках. Зачем? Чтобы цена разработки и производства корпуса неожиданно не стала в несколько раз выше, чем вы планировали.
Как многим известно Heroku с 28.11.2022 прекращает поддержку бесплатных аккаунтов. И у меня, как и у других пользователей бесплатного аккаунта, возник вопрос: «Куда же теперь переезжать?» Я нашёл два подходящих сервиса, которые, на мой взгляд, могли бы заменить Heroku. Так как я не увидел статей на Habr на тему, куда можно мигрировать с Heroku, то решил написать небольшую инструкцию по переезду. Надеюсь кому-то она будет полезной.