Apache Pinot 1.0 Provides a Realtime Distributed OLAP datastore
Apache Pinot is an open source column-oriented distributed data store written in Java. Pinot is designed to use Online Analytical processing (OLAP) in order to answer multi-dimensional analytical (MDA) queries with low latency.
By Johan Janssen
Read: https://www.infoq.com/news/2023/12/apache-pinot/
Apache Pinot is an open source column-oriented distributed data store written in Java. Pinot is designed to use Online Analytical processing (OLAP) in order to answer multi-dimensional analytical (MDA) queries with low latency.
By Johan Janssen
Read: https://www.infoq.com/news/2023/12/apache-pinot/
🔥3🎉1
Spring Cloud Gateway. Единая точка входа или отказа: путь к non-blocking API gateway
Привет, Хабр! Меня зовут Никита Летов, я техлид бэкенд-разработки сервисов дистанционного банковского обслуживания Росбанка для физических лиц, или как модно сейчас говорить, ретейла. В этом посте я расскажу, что такое входная точка в приложение, когда в ней появляется необходимость и какие вообще задачи решает паттерн API Gateway. Мы рассмотрим классический блокирующий подход на примере гейтвея Netflix Zuul 1.x, проблемы, связанные с его эксплуатацией, а также реактивный Spring Cloud Gateway и сложности перехода на него. В заключение сравним два подхода.
Читать: https://habr.com/ru/companies/rosbank/articles/779770/?utm_campaign=779770
Привет, Хабр! Меня зовут Никита Летов, я техлид бэкенд-разработки сервисов дистанционного банковского обслуживания Росбанка для физических лиц, или как модно сейчас говорить, ретейла. В этом посте я расскажу, что такое входная точка в приложение, когда в ней появляется необходимость и какие вообще задачи решает паттерн API Gateway. Мы рассмотрим классический блокирующий подход на примере гейтвея Netflix Zuul 1.x, проблемы, связанные с его эксплуатацией, а также реактивный Spring Cloud Gateway и сложности перехода на него. В заключение сравним два подхода.
Читать: https://habr.com/ru/companies/rosbank/articles/779770/?utm_campaign=779770
👍7❤1
Java News Roundup: JDK 22 in Rampdown, JDK 23 Expert Group, Spring Cloud 2023.0, TornadoVM 1.0
This week's Java roundup for December 4th, 2023 features news highlighting: JDK 22 having moved to Rampdown Phase One; formation of the JDK 23 expert group; JEP 464, Scope Values (Second Preview) targeted for JDK 22; Spring Cloud 2023.0.0; TornadoVM 1.0.0; and JHipster Lite 1.0.0.
By Michael Redlich
Read: https://www.infoq.com/news/2023/12/java-news-roundup-dec04-2023/
This week's Java roundup for December 4th, 2023 features news highlighting: JDK 22 having moved to Rampdown Phase One; formation of the JDK 23 expert group; JEP 464, Scope Values (Second Preview) targeted for JDK 22; Spring Cloud 2023.0.0; TornadoVM 1.0.0; and JHipster Lite 1.0.0.
By Michael Redlich
Read: https://www.infoq.com/news/2023/12/java-news-roundup-dec04-2023/
🥰3🔥1
Мастерство чистого кода: учимся писать тесты
Разработка надёжных программ невозможна без тщательного тестирования. В этой статье подробно разобрали процесс создания интеграционных тестов для небольшого сервиса с использованием ценных для Java-разработчиков инструментов, вроде Testcontainers и Wiremock.
Авторы демонстрируют реализацию тестирования на примере кода и советуют, как организовать процесс.
Разработка надёжных программ невозможна без тщательного тестирования. В этой статье подробно разобрали процесс создания интеграционных тестов для небольшого сервиса с использованием ценных для Java-разработчиков инструментов, вроде Testcontainers и Wiremock.
Авторы демонстрируют реализацию тестирования на примере кода и советуют, как организовать процесс.
🥰3
Mockito и как им пользоваться
Привет, Хабровчане!
Помню, как в одном из моих первых проектов, мы столкнулись с проблемой тестирования кода, который зависел от внешних сервисов и баз данных. Это было не только трудоемко, но и занимало уйму времени. И сразу стало понятно, что без мокирования нам не обойтись. Мокирование создать поддельные версии сложных объектов или систем, чтобы мы могли тестировать каждую часть нашего кода изолированно. Это упрощает написание тестов и бустит их выполнение.
Несколько строк кода, и вы уже создаете моки для ваших сервисов и DAO! Mockito предоставляет понятный API для мокирования, который делает тесты не только проще в написании, но и более читабельными.
Читать: https://habr.com/ru/companies/otus/articles/780090/?utm_campaign=780090
Привет, Хабровчане!
Помню, как в одном из моих первых проектов, мы столкнулись с проблемой тестирования кода, который зависел от внешних сервисов и баз данных. Это было не только трудоемко, но и занимало уйму времени. И сразу стало понятно, что без мокирования нам не обойтись. Мокирование создать поддельные версии сложных объектов или систем, чтобы мы могли тестировать каждую часть нашего кода изолированно. Это упрощает написание тестов и бустит их выполнение.
Несколько строк кода, и вы уже создаете моки для ваших сервисов и DAO! Mockito предоставляет понятный API для мокирования, который делает тесты не только проще в написании, но и более читабельными.
Читать: https://habr.com/ru/companies/otus/articles/780090/?utm_campaign=780090
👍6😁2❤1👎1🎉1
Stream API Evolution: A Closer Look at JEP 461's Stream Gatherers
After its review concluded, JEP 461, Stream Gatherers (Preview), has been completed for JDK 22. This JEP proposes to enhance the Stream API to support custom intermediate operations. "This will allow stream pipelines to transform data in ways that are not easily achievable with the existing built-in intermediate operations."
By A N M Bazlur Rahman
Read: https://www.infoq.com/news/2023/12/stream-api-evolution/
After its review concluded, JEP 461, Stream Gatherers (Preview), has been completed for JDK 22. This JEP proposes to enhance the Stream API to support custom intermediate operations. "This will allow stream pipelines to transform data in ways that are not easily achievable with the existing built-in intermediate operations."
By A N M Bazlur Rahman
Read: https://www.infoq.com/news/2023/12/stream-api-evolution/
👍5🔥1😁1
Что требуется для развития рынка цифровых двойников
Ранее в блоге мы рассказывали о том, что такое цифровые двойники, теперь выясним, какие перспективы развития технологии на отечественном рынке.
Цифровые двойники входят в топ-5 мировых стратегических технологических трендов. Ожидается, что в 2024 году технологию внедрят 250 отечественных предприятий, затраты составят 145 млрд рублей по данным дорожной карты «Технет» Национальной технологической инициативы. Давайте разберемся, реальны ли эти прогнозы для России.
Читать: https://habr.com/ru/articles/780036/?utm_campaign=780036
Ранее в блоге мы рассказывали о том, что такое цифровые двойники, теперь выясним, какие перспективы развития технологии на отечественном рынке.
Цифровые двойники входят в топ-5 мировых стратегических технологических трендов. Ожидается, что в 2024 году технологию внедрят 250 отечественных предприятий, затраты составят 145 млрд рублей по данным дорожной карты «Технет» Национальной технологической инициативы. Давайте разберемся, реальны ли эти прогнозы для России.
Читать: https://habr.com/ru/articles/780036/?utm_campaign=780036
❤2👍1🔥1👏1
Операция «K». Ищем баги в коде IntelliJ IDEA
В этой статье мы проверим проект IntelliJ IDEA Community Edition на наличие ошибок и отправим наши правки разработчикам. Крупный проект, Open Source база и использование статического анализатора при разработке. Сложная задача для PVS-Studio.
Читать: https://habr.com/ru/companies/pvs-studio/articles/780560/?utm_campaign=780560
В этой статье мы проверим проект IntelliJ IDEA Community Edition на наличие ошибок и отправим наши правки разработчикам. Крупный проект, Open Source база и использование статического анализатора при разработке. Сложная задача для PVS-Studio.
Читать: https://habr.com/ru/companies/pvs-studio/articles/780560/?utm_campaign=780560
❤1
Moravio как компания по разработке CRM
Read: https://www.thejavaprogrammer.com/moravio-as-crm-development-company/
Read: https://www.thejavaprogrammer.com/moravio-as-crm-development-company/
😁2
Spring Boot 3.2 Delivers Support for Virtual Threads and Modern RestClient and JdbcClient
The Spring Boot team released Spring Boot 3.2 in November 2023. This latest release is packed with features, the most noteworthy of which is the support for Virtual Threads and Coordinated Restore at Checkpoint (CRaC). Other features include SSL Bundle reloading, Rest Client and JDBC Client interface support, observability improvements, and many others.
By Sirisha Pratha
Read: https://www.infoq.com/news/2023/12/spring-boot-virtual-threads/
The Spring Boot team released Spring Boot 3.2 in November 2023. This latest release is packed with features, the most noteworthy of which is the support for Virtual Threads and Coordinated Restore at Checkpoint (CRaC). Other features include SSL Bundle reloading, Rest Client and JDBC Client interface support, observability improvements, and many others.
By Sirisha Pratha
Read: https://www.infoq.com/news/2023/12/spring-boot-virtual-threads/
❤3🎉1
JEP 423: Introducing Region Pinning to G1 Garbage Collector in OpenJDK
After its review concluded, JEP 423, Region Pinning for G1, has been Integrated into JDK 22. This JEP proposes to reduce GC latency by implementing region pinning for the G1 garbage collector. This will extend G1 so that arbitrary regions may be pinned during both major and minor collection operations, so that disabling the garbage collection process may be avoided while implementing JNI.
By A N M Bazlur Rahman
Read: https://www.infoq.com/news/2023/12/region-pinning-to-g1-gc/
After its review concluded, JEP 423, Region Pinning for G1, has been Integrated into JDK 22. This JEP proposes to reduce GC latency by implementing region pinning for the G1 garbage collector. This will extend G1 so that arbitrary regions may be pinned during both major and minor collection operations, so that disabling the garbage collection process may be avoided while implementing JNI.
By A N M Bazlur Rahman
Read: https://www.infoq.com/news/2023/12/region-pinning-to-g1-gc/
👏2👍1🥰1
10 лучших курсов и сертификаций по науке о данных и машинному обучению в 2024 году - Best of Lot
Предположим, что сегодня вы работаете в сфере технологий в качестве программиста или инженера-программиста. В таком случае, я уверен, вы слышали о таких терминах, как Data Science, Machine Learning, Deep Learning, Artificial Intelligence и т. д. Это новейшие технологии, оказывающие влияние на все отрасли, точно так же, как ИТ, когда они появляются в первый раз. Неважно, работаете ли вы в банке или страховом секторе, воздушном пространстве или обороне. На все сферы повлияли ИТ, а в скором времени их затронут машинное обучение и искусственный интеллект. Поэтому в 2024 году очень важно изучать Data Science и машинное обучение, и если вы ищете хорошие ресурсы, такие как курсы и сертификаты, то вы пришли по адресу.
Вопросы и учебные пособия для собеседования по Java
Read: http://www.java67.com/2018/10/top-10-data-science-and-machine-learning-courses.html
Предположим, что сегодня вы работаете в сфере технологий в качестве программиста или инженера-программиста. В таком случае, я уверен, вы слышали о таких терминах, как Data Science, Machine Learning, Deep Learning, Artificial Intelligence и т. д. Это новейшие технологии, оказывающие влияние на все отрасли, точно так же, как ИТ, когда они появляются в первый раз. Неважно, работаете ли вы в банке или страховом секторе, воздушном пространстве или обороне. На все сферы повлияли ИТ, а в скором времени их затронут машинное обучение и искусственный интеллект. Поэтому в 2024 году очень важно изучать Data Science и машинное обучение, и если вы ищете хорошие ресурсы, такие как курсы и сертификаты, то вы пришли по адресу.
Вопросы и учебные пособия для собеседования по Java
Read: http://www.java67.com/2018/10/top-10-data-science-and-machine-learning-courses.html
👏3👍2
Я нашёл сид Мэла (melharucos) в Майнкрафте
Да, название этой статьи - не обман. Я действительно сумел найти сид хардкорного выживания Мэла. Сам он притом с нами сидом не поделился.
Сам сид: 3483555484082087413
Читать: https://habr.com/ru/articles/781002/?utm_campaign=781002
Да, название этой статьи - не обман. Я действительно сумел найти сид хардкорного выживания Мэла. Сам он притом с нами сидом не поделился.
Сам сид: 3483555484082087413
Читать: https://habr.com/ru/articles/781002/?utm_campaign=781002
🔥8😁4❤1👍1
Простой сервис аутентификации. SpringBootSecurity
Напишем простой сервис аутентификации с выдачей JWToken. Для реализации будем использовать Java 17, SpringBoot 3.2.0, h2, Maven в памяти.
GitLab
Читать: https://habr.com/ru/articles/781066/?utm_campaign=781066
Напишем простой сервис аутентификации с выдачей JWToken. Для реализации будем использовать Java 17, SpringBoot 3.2.0, h2, Maven в памяти.
GitLab
Читать: https://habr.com/ru/articles/781066/?utm_campaign=781066
❤5😢2👍1
Топ 10 сайтов, где можно БЕСПЛАТНО научиться кодированию JavaScript в 2024 году - Best of Lot
Здравствуйте, ребята, если вы хотите выучить JavaScript и ищете лучшие сайты для БЕСПЛАТНОГО изучения программирования на JavaScript, то вы пришли по адресу. Ранее я рассказывал о лучших бесплатные курсы JavaScript и платные курсы JavaScript, а в этой статье я перечислю лучшие сайты для изучения JavaScript БЕСПЛАТНО. Мы живем в мире интернета, который полон ресурсов. Вы можете узнать все, что хотите, и при этом не потратить слишком много денег. Если вы собираетесь изучать JavaScript, есть множество сайтов, где вы можете изучать JavaScript онлайн БЕСПЛАТНО.
Вопросы и учебники для собеседования по Java
Read: http://www.java67.com/2019/01/best-websites-to-learn-javascript-online.html
Здравствуйте, ребята, если вы хотите выучить JavaScript и ищете лучшие сайты для БЕСПЛАТНОГО изучения программирования на JavaScript, то вы пришли по адресу. Ранее я рассказывал о лучших бесплатные курсы JavaScript и платные курсы JavaScript, а в этой статье я перечислю лучшие сайты для изучения JavaScript БЕСПЛАТНО. Мы живем в мире интернета, который полон ресурсов. Вы можете узнать все, что хотите, и при этом не потратить слишком много денег. Если вы собираетесь изучать JavaScript, есть множество сайтов, где вы можете изучать JavaScript онлайн БЕСПЛАТНО.
Вопросы и учебники для собеседования по Java
Read: http://www.java67.com/2019/01/best-websites-to-learn-javascript-online.html
👏3🎉2❤1
Java News Roundup: JHipster 8.1, Piranha Cloud 23.12, Open Liberty 23.0.0.12, Tomcat Releases
This week's Java roundup for December 11th, 2023 features news highlighting: OpenJDK early access releases, Open Liberty 23.0.0.12, Infinispan 15.0.0-Dev06, JHipster 8.1.0, Piranha 23.12.0, Apache Tomcat 11.0.0-M15, 10.1.17, 9.0.84 and 8.5.97 and the debut of the Payara Virtual Conference.
By Michael Redlich
Read: https://www.infoq.com/news/2023/12/java-news-roundup-dec11-2023/
This week's Java roundup for December 11th, 2023 features news highlighting: OpenJDK early access releases, Open Liberty 23.0.0.12, Infinispan 15.0.0-Dev06, JHipster 8.1.0, Piranha 23.12.0, Apache Tomcat 11.0.0-M15, 10.1.17, 9.0.84 and 8.5.97 and the debut of the Payara Virtual Conference.
By Michael Redlich
Read: https://www.infoq.com/news/2023/12/java-news-roundup-dec11-2023/
❤2🥰1🎉1
Quarkus 3.7 Will Require Java 17
Quarkus 3.7, planned for release in January 2024, will require Java 17 as the minimal JDK version to build and run applications. One of the reasons is the fact that the OpenJDK community stopped active support for Java 11 in September 2023. Next to that, Quarkus dependencies are also upgrading their baseline to Java 17.
By Johan Janssen
Read: https://www.infoq.com/news/2023/12/quarkus-3-7-java-17/
Quarkus 3.7, planned for release in January 2024, will require Java 17 as the minimal JDK version to build and run applications. One of the reasons is the fact that the OpenJDK community stopped active support for Java 11 in September 2023. Next to that, Quarkus dependencies are also upgrading their baseline to Java 17.
By Johan Janssen
Read: https://www.infoq.com/news/2023/12/quarkus-3-7-java-17/
🎉5
Интеграция Keycloak в приложение Spring Boot 3 с использованием протокола OAuth2.0
В современном мире веб-разработки обеспечение безопасности пользовательских идентификаторов и управление доступом к ресурсам становятся все более важными задачами. Один из мощных инструментов, предоставляющих полноценное решение для этих задач, это Keycloak, современная система управления идентичностью и доступом.
В данной статье мы рассмотрим процесс интеграции Keycloak в наше приложение Spring Boot 3 в качестве сервера авторизации с использованием протокола OAuth2. Обсудим смысл OAuth2, его механизм работы и сравним его с другими протоколами. Кроме того, мы настроим Keycloak с использованием Docker Compose, воспользовавшись PostgreSQL в качестве базы данных для Keycloak. Затем мы интегрируем Keycloak с нашим приложением Spring Boot 3, используя протокол OAuth2. Также мы подключим Keycloak Admin Client и, наконец, проверим функциональность всей системы.
Читать: https://habr.com/ru/companies/axenix/articles/780422/?utm_campaign=780422
В современном мире веб-разработки обеспечение безопасности пользовательских идентификаторов и управление доступом к ресурсам становятся все более важными задачами. Один из мощных инструментов, предоставляющих полноценное решение для этих задач, это Keycloak, современная система управления идентичностью и доступом.
В данной статье мы рассмотрим процесс интеграции Keycloak в наше приложение Spring Boot 3 в качестве сервера авторизации с использованием протокола OAuth2. Обсудим смысл OAuth2, его механизм работы и сравним его с другими протоколами. Кроме того, мы настроим Keycloak с использованием Docker Compose, воспользовавшись PostgreSQL в качестве базы данных для Keycloak. Затем мы интегрируем Keycloak с нашим приложением Spring Boot 3, используя протокол OAuth2. Также мы подключим Keycloak Admin Client и, наконец, проверим функциональность всей системы.
Читать: https://habr.com/ru/companies/axenix/articles/780422/?utm_campaign=780422
👍10
FizzBuzz for Senior
Алоха всем.
Ни для кого не секрет, что алгоритмические задачи уже стали/становятся обыденными на техническом интервью. Кто то может любить это, кто то ненавидеть, но факт остается фактом, что бы пройти собеседование нужно научится решать алгоритмы.
А как быть интервьюерам? Какую задачу дать кандидату? Как понять сигналы, что кандидат "шарит"?
Я наткнулся на интересную статью по интервью на Senior инженера C++. Там у парня спрашивают базовую задачу FizzBuzz.
В этой статье мы рассмотрим бенчмарки различных решений на Java, начиная от простых вариантов и заканчивая многопоточными реализациями. Давайте разбираться вместе!
как "Senior" решает FizzBuzz
Читать: https://habr.com/ru/articles/781256/?utm_campaign=781256
Алоха всем.
Ни для кого не секрет, что алгоритмические задачи уже стали/становятся обыденными на техническом интервью. Кто то может любить это, кто то ненавидеть, но факт остается фактом, что бы пройти собеседование нужно научится решать алгоритмы.
А как быть интервьюерам? Какую задачу дать кандидату? Как понять сигналы, что кандидат "шарит"?
Я наткнулся на интересную статью по интервью на Senior инженера C++. Там у парня спрашивают базовую задачу FizzBuzz.
В этой статье мы рассмотрим бенчмарки различных решений на Java, начиная от простых вариантов и заканчивая многопоточными реализациями. Давайте разбираться вместе!
как "Senior" решает FizzBuzz
Читать: https://habr.com/ru/articles/781256/?utm_campaign=781256
❤8👍1
Проектирование БД рекомендательной системы по подходу DB-first
В данной статье мы рассмотрим проектирование системы по подходу DB-first и то, какие проблемы он помогает не просто решить, а устранить как явление.
Читать: https://habr.com/ru/articles/781550/?utm_campaign=781550
В данной статье мы рассмотрим проектирование системы по подходу DB-first и то, какие проблемы он помогает не просто решить, а устранить как явление.
Читать: https://habr.com/ru/articles/781550/?utm_campaign=781550
Идемпотентность: больше, чем кажется
Друзья, всем привет! Идемпотентность в проектировании API — не просто формальность. Это свойство, часто рассматриваемое как способ получения одинакового ответа на повторяющийся запрос, на самом деле означает гораздо больше...
Читать: https://habr.com/ru/companies/domclick/articles/779872/?utm_campaign=779872
Друзья, всем привет! Идемпотентность в проектировании API — не просто формальность. Это свойство, часто рассматриваемое как способ получения одинакового ответа на повторяющийся запрос, на самом деле означает гораздо больше...
Читать: https://habr.com/ru/companies/domclick/articles/779872/?utm_campaign=779872
🔥3👏1