Перечисление (Enumeration) в Java представляют собой класс, состоящий из констант. Появились в языке для удобной реализации перечисляемых типов данных. Например, светофор имеет три цвета: красный, желтый и зеленый. Вместо того, чтобы создавать отдельный статический класс с константами типа Color, у которых есть поле name в которое уже записано имя цвета. [crayon-66a50318e3699491738263/] Конструкция получилась очень неудобной. Ко всему прочему при такой реализации вы можете создать экземпляр класса TrafficLight, а это противоречит понятию перечисляемых типов. Давайте перепишем TrafficLight с помощью перечисляемых классов и …
Рубрика: Code
Apache Kafka – это один из самых популярных брокеров сообщений на рынке IT. Когда-то был разработан LinkedIn для своих внутренних нужд, позже был передан в OpenSource. В настоящее время главным мэинтейнером Apache Kafka является компания Confluent. Думаю на истории можно остановиться. Подробнее о Apache Kafka можно почитать здесь https://kafka.apache.org. Какую проблему решает? С одной стороны, когда мы имеем один источник данных и одного потребителя данных, то Kafka и другие брокеры сообщений нам вообще ни к чему. Примерно выглядит это вот так: С …
Как сказал один мудрец: вечно смотреть можно на три вещи: как течет вода, как горит огонь и как кто-то пишет очередную стать о DI в Spring Boot. Сегодня я сделаю попытку коротко описать всю эту петрушку. DI (Dependency Injection, внедрение зависимости) – процесс при котором построение одного объекта, предоставляется внешнему объекту. Или точнее это то место, где зависимость будет внедрена другим объектом. Понятнее будет на примере. Пусть у нас есть класс “Автомобиль” у него есть поле класса “Двигатель”. Место где …
Что такое Docker и зачем он нужен? Docker – это специализированный контейнер, расположенный в среде виртуализации, предназначенный для “упаковки” в него приложения со всем его окружением и зависимостями. В настоящее время активно внедряется и успешно используется многими компаниями. Если раньше при разработке, развертывании и тестировании приложений использовались виртуальные машины с установленными на них операционными системами, то благодаря Doсker-контейнерам виртуализация получила новый виток развития. По сравнению с традиционным методом создания окружения (виртуальные машины), docker имеет ряд преимуществ: Потребление меньшего количества ресурсов …
Перед вами вторая часть статьи, посвященной сетевому уровню и его работе. Первую часть найдете здесь. Ключевые моменты, которые мы рассмотрим сегодня: качество обслуживания требования приложений к сетевому уровню различия сетей, их аспекты и способы объединения Качество обслуживания В прошлой части мы говорили в первую очередь об увеличении производительности сети и повышении уровня отказаустойчивсоти относительно перегрузок. Несмотря на это, для некоторых приложения (клиентов сети) необходимы более строгие гарантии производительности. Например, для работы веб-приложения допустима средняя задержка, пропускная способность и потери, однако, …