«На этой неделе много интересных статей о Java 9.

Итак, приступим…

1. Spring и Java

>> From Microservices to Distributed Systems – Survival guide for Java Developers [eisele.net]

Еще один надежный способ реализации микросервиса 🙂

>> What’s the Top Java Logging Method on GitHub? String Concatenation vs Parameterized Logging [takipi.com]

Должны ли мы параметризовать или конкатенировать? Как обычно, ответ «это зависит».

>> Deterministic Execution on the JVM [infoq.com]

Очень интересная статья, посвященная детерминизму JVM на примере детерминированного загрузчика классов — Corda.

>> The Future of Java in the Enterprise – InfoQ’s Opinion [infoq.com]

InfoQ просматривают ландшафт JVM и проверяют, какие технологии уже преодолели пропасть 🙂

>> Should I Implement the Arcane Iterator.remove() Method? Yes You (Probably) Should [jooq.org]

На всякий случай лучше не игнорировать метод Iterator.remove().

>> Java Web Frameworks Index by RebelLabs [zeroturnaround.com]

Ребята из RebelLabs создали рейтинг веб-фреймворков Java, изучив Stackoverflow, LinkedIn, Github и т. д. Здесь довольно интересные данные.

\u003e\u003e Опасности условий гонки за пять минут [sitepoint.com]

Пересмотр основ и последствий условий гонки.

>> Lazy Computations in Java with a Lazy Type [sitepoint.com]

Если вам не хватает некоторых инструментов в Java, вы всегда можете создать их самостоятельно. В статье рассматривается пример проектирования и реализации ленивого типа в Java.

>> Java 9 Will Adjust Memory Limits if Running with Docker [infoq.com]

JVM не знает о том, что она работает в контейнере, и это может вызвать множество проблем. Java 9 предлагает решение этой проблемы.

Также стоит прочитать:

    \u003e\u003e Как реализовать сложный полнотекстовый поиск с помощью Hibernate Search [thoughts-on-java.org] \u003e\u003e Учебное пособие: Начало работы с Angular, Spring Boot и Stormpath [stormpath.com ] \u003e\u003e Как сопоставить последний дочерний объект родительского объекта с помощью Hibernate @JoinFormula [vladmihalcea.com] \u003e\u003e Аутентификация токена Spring Boot с использованием JWT [aboullaite.me] \u003e\u003e Hazelcast, JCache и Spring Boot [pappanyn.me] \u003e\u003e Пример Spring Boot Mvc + Apache Tiles [devglan.com] \u003e\u003e Hibernate ORM, подключения и удобство работы в облаке [in.relation.to] \u003e\u003e Отказ от «кучи» для уменьшения задержки и сокращения расходов на AWS [plumbr.eu]

Веб-семинары и презентации:

    \u003e\u003e Йонас Бонер об акторной модели, Akka, реактивном программировании, микросервисах и распределенных системах [infoq.com] \u003e\u003e Spring Tips: Apache MyBatis [spring.io]

Время для обновления:

    \u003e\u003e Hibernate Search 5.7.0.Вышел финальный релиз! [in.relation.to] \u003e\u003e Восьмой выпуск исправления ошибок для ORM 5.2 [in.relation.to] \u003e\u003e Поддержка Initial Bean Validation 2.0: Hibernate Validator 6.0.0.Alpha1 отсутствует [in.relation.to] \u003e\u003e Вышел Hibernate OGM 5.1 CR 1 [in.relation.to] \u003e\u003e Доступна первая альфа-версия Bean Validation 2.0 Эталонная реализация [beanvalidation.org] \u003e\u003e Spring IO Platform Brussels-RELEASE [spring.io] \u003e\u003e Reactor Aluminium-SR1 имеет приземлился [spring.io] \u003e\u003e Spring Cloud Data Flow для Cloud Foundry 1.1.1 Доступен отладочный выпуск [spring.io]

2. Технические

>> CockroachDB beta-20160829 [jepsen.io]

Глубокое погружение в гарантии устойчивости CockrockroachDB.

Эта статья, как и многие другие статьи Jepsen, является полезной для чтения, даже если вы не используете CockroachDB (а вы, вероятно, не используете).

>> ElasticSearch API cheatsheet [frankel.ch]

Самые важные операции API ElasticSearch в одном месте.

>> CQRS and Event Sourcing with Lagom [codecentric.de]

И еще один подход к CQRS и Event Sourcing — на этот раз с Lagom из Lightbend — компании, стоящей за Scala и Akka.

>> MariaDB Dialects [in.relation.to]

Супер краткий обзор диалектов MariaDB.

>> The MySQL Dialect refactoring [in.relation.to]

И несколько очень хороших упрощений диалектов в Hibernate — и хороший пример все еще развивающейся зрелой среды.

Также стоит прочитать:

    \u003e\u003e Создание чат-бота с помощью Slack и Loggly (часть 1) [loggly.com] \u003e\u003e Разработка надежных и предсказуемых API-интерфейсов с идемпотентностью [stripe.com] \u003e\u003e Виртуализация сервисов с помощью Parasoft Virtualize Community Edition [ontestautomation.com]

3. Размышления

Также стоит прочитать:

    \u003e\u003e Гегемония разработчиков: это обертка (и посмотрите обложки)! [daedtech.com] \u003e\u003e Обоснование встроенной поддержки смарт-карт в браузерах [techblog.bozho.net] \u003e\u003e Как правильно (и неправильно) применять стандарты кодирования [daedtech.com] \u003e\u003e Медленные выходы портят долину [ zachholman.com]

4. Комиксы

И мои любимые Дилберты недели:

>> The power will corrupt you in 3, 2, 1… [dilbert.com]

>> Can I create my own job? [dilbert.com]

>> No idea why he succeeded. [dilbert.com]

5. Выбор недели

>> One Thing [randsinrepose.com]