Перейти к основному содержимому

51 запись с тегом "Architecture"

Посмотреть все теги

· 20 мин. чтения

1. Введение

В этом руководстве мы разберемся с основами создания реактивных систем на Java с использованием Spring и других инструментов и фреймворков.

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

2. Что такое реактивные системы?

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

· 8 мин. чтения

1. Обзор

Это руководство будет введением в Apache Storm , распределенную систему вычислений в реальном времени.

Мы сосредоточимся и рассмотрим:

  • Что такое Apache Storm и какие проблемы он решает
  • Его архитектура и
  • Как использовать в проекте

2. Что такое Apache Storm?

· 9 мин. чтения

1. Обзор

Helidon — это новая микросервисная среда Java, исходный код которой недавно был открыт Oracle. Он использовался внутри проектов Oracle под названием J4C (Java for Cloud).

В этом руководстве мы рассмотрим основные концепции платформы, а затем перейдем к созданию и запуску микросервиса на основе Helidon.

2. Модель программирования

В настоящее время фреймворк поддерживает две модели программирования для написания микросервисов: Helidon SE и Helidon MP.

· 5 мин. чтения

1. Введение

Apache Pulsar — это распределенная система обмена сообщениями с открытым исходным кодом, основанная на публикации/подписке, разработанная в Yahoo .

Он был создан для поддержки критически важных приложений Yahoo, таких как Yahoo Mail, Yahoo Finance, Yahoo Sports и т. д. Затем, в 2016 году, он был открыт в рамках Apache Software Foundation.

2. Архитектура

Pulsar — это многопользовательское высокопроизводительное решение для обмена сообщениями между серверами . Он состоит из набора брокеров и букмекеров, а также встроенного Apache ZooKeeper для настройки и управления. Букмекеры от Apache BookKeeper , которые обеспечивают хранение сообщений до тех пор, пока они не будут использованы.

· 9 мин. чтения

1. Введение

Шаблоны проектирования являются неотъемлемой частью разработки программного обеспечения. Эти решения не только решают повторяющиеся проблемы, но и помогают разработчикам понять структуру фреймворка, распознавая общие шаблоны.

В этом руководстве мы рассмотрим четыре наиболее распространенных шаблона проектирования, используемых в Spring Framework:

  1. Одноэлементный шаблон
  2. Шаблон фабричного метода
  3. Шаблон прокси
  4. Шаблон шаблона

Мы также рассмотрим, как Spring использует эти шаблоны, чтобы уменьшить нагрузку на разработчиков и помочь пользователям быстрее выполнять утомительные задачи.

2. Одноэлементный шаблон

· 8 мин. чтения

1. Обзор

В этом руководстве мы реализуем приложение Spring с использованием DDD. Кроме того, мы организуем слои с помощью гексагональной архитектуры.

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

2. Шестиугольная архитектура

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

· 4 мин. чтения

1. Обзор

В этой быстрой статье мы создадим небольшое веб-приложение, реализующее шаблон проектирования Model View Controller (MVC) с использованием базовых сервлетов и JSP.

Прежде чем перейти к реализации, мы немного рассмотрим, как работает MVC и его основные функции.

2. Введение в MVC

Model-View-Controller (MVC) — это шаблон, используемый в разработке программного обеспечения для отделения логики приложения от пользовательского интерфейса. Как следует из названия, шаблон MVC состоит из трех слоев.

· 11 мин. чтения

1. Обзор

Принцип инверсии зависимостей (DIP) является частью набора принципов объектно-ориентированного программирования, широко известного как SOLID .

По сути, DIP — это простая, но мощная парадигма программирования, которую мы можем использовать для реализации хорошо структурированных, сильно развязанных и повторно используемых программных компонентов .

В этом руководстве мы рассмотрим различные подходы к реализации DIP — один в Java 8 и один в Java 11 с использованием JPMS (система модулей платформы Java).

2. Внедрение зависимостей и инверсия управления не являются реализациями DIP

· 11 мин. чтения

1. Обзор

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

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

2. Давайте сделаем шаг назад

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

· 6 мин. чтения

1. Обзор

Bootique — это очень легкая среда JVM без контейнеров с открытым исходным кодом, предназначенная для создания масштабируемых микросервисов следующего поколения. Он построен на основе встроенного сервера Jetty и полностью поддерживает обработчики REST с помощью jax-rs .

В этой статье мы покажем, как создать простое веб-приложение с помощью Bootique .

2. Зависимости Maven

Давайте начнем использовать Bootique , добавив следующую зависимость в pom.xml: