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

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

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

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

1. Введение

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

2. Кубернетес и Кнатив

Разработка бессерверного приложения без вспомогательных инструментов — это не весело! Помните, как сочетание Docker и Kubernetes изменило управление облачными приложениями, созданными с помощью архитектуры микросервисов. Конечно, мы можем извлечь выгоду из фреймворков и инструментов и в бессерверном пространстве. Что ж, нет никаких причин, по которым Kubernetes не может нам здесь помочь.

2.1. Kubernetes для бессерверных решений

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

1. Введение

Проще говоря, в шаблоне проектирования Front Controller один контроллер отвечает за направление входящих запросов HttpRequest ко всем другим контроллерам и обработчикам приложения . ** **

DispatcherServlet Spring реализует этот шаблон и, следовательно, отвечает за правильную координацию HttpRequests с их правыми обработчиками.

В этой статье мы рассмотрим рабочий процесс обработки запросов Spring DispatcherServlet и способы реализации нескольких интерфейсов, участвующих в этом рабочем процессе.

2. Обработка запроса DispatcherServlet

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

1. Что такое Микронавт

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

Хотя Micronaut содержит некоторые функции, похожие на существующие фреймворки, такие как Spring, он также имеет некоторые новые функции, которые отличают его от других. А благодаря поддержке Java, Groovy и Kotlin он предлагает множество способов создания приложений.

2. Основные характеристики

Одной из самых интересных особенностей Micronaut является механизм внедрения зависимостей во время компиляции. Большинство фреймворков используют отражение и прокси-серверы для внедрения зависимостей во время выполнения. Однако Micronaut создает данные для внедрения зависимостей во время компиляции. Результатом является более быстрый запуск приложений и меньший объем памяти.

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

1. Обзор

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

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

2. Что такое методология двенадцати факторов?

Методология двенадцати факторов представляет собой набор из двенадцати передовых методов разработки приложений, предназначенных для работы в качестве службы . Первоначально это было разработано Heroku для приложений, развернутых в качестве сервисов на их облачной платформе еще в 2011 году. Со временем это оказалось достаточно общим для любой разработки программного обеспечения как услуги (SaaS).

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

1. Введение

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

Наконец, мы рассмотрим некоторые отраслевые стандарты и популярные инструменты в области наблюдаемости.

2. Что такое наблюдаемость?

Давайте перейдем к делу и для начала дадим формальное определение! Наблюдаемость — это способность измерять внутреннее состояние системы только по ее внешним выходам .

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

1. Обзор

KivaKit — это модульная платформа приложений Java, предназначенная для ускорения и упрощения разработки микросервисов и приложений. KivaKit разрабатывается в Telenav с 2011 года. Теперь он доступен как проект с открытым исходным кодом под лицензией Apache на GitHub .

В этой статье мы рассмотрим дизайн KivaKit как набора «мини-фреймворков», которые работают вместе. Кроме того, мы рассмотрим основные функции каждого мини-фреймворка.

2. Мини-фреймворки KivaKit

Заглянув в репозитории kivakit и kivakit-extensions , мы увидим, что KivaKit 1.0 содержит 54 модуля. Мы могли найти это ошеломляющим. Однако, если мы будем действовать шаг за шагом, это не так уж и плохо. Для начала мы можем выбирать, что мы хотим включить в наши проекты. Каждый модуль KivaKit предназначен для самостоятельного использования.

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

1. Введение

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

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

2. Что такое геопространственные приложения?

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

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

1. Обзор

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

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

Примечание. Существует множество альтернатив RabbitMQ, которые можно использовать для тех же примеров в этом руководстве, таких как Kafka , Google Cloud Pub-Sub и Amazon SQS , и это лишь некоторые из них.

2. Что такое очереди сообщений?

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

1. Введение

В этой статье мы обсудим варианты реализации транзакции между микросервисами.

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

2. Избегайте транзакций между микросервисами

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

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

1. Обзор

В этом уроке мы рассмотрим принципы чистого кодирования. Мы также поймем, почему важен чистый код и как этого добиться в Java. Кроме того, мы посмотрим, есть ли какие-либо инструменты, которые могут нам помочь.

2. Что такое чистый код?

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

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