Java

Red Hat Logo
Article

It takes more than a Circuit Breaker to create a resilient application

Bilgin Ibryam

Topics such as application resiliency, self-healing, antifragility are my area of interest. I've been trying to distinguish, define, and visualize these concepts, and create solutions with these characteristics. Software characteristics"> However, I notice repeatedly, that there are various conference talks about resiliency, self-healing, and antifragility and often they lazily conclude that Netflix OSS Hystrix is the answer to all of that. It is important to remember that conference speakers are overly optimistic, wishful thinkers, and it takes more than a...

Using API keys securely in your OpenShift microservices and applications
Article

The CoolStore Microservices Example: DevOps and OpenShift

Alessandro Arrichiello

An introduction to microservices through a complete example Today I want to talk about the demo we presented @ OpenShift Container Platform Roadshow in Milan & Rome last week. The demo was based on JBoss team's great work available on this repo: https://github.com/jbossdemocentral/coolstore-microservice In the next few paragraphs, I'll describe in deep detail the microservices CoolStore example and how we used it for creating a great and useful example of DevOps practices. We made some edits to the original project...

Eclipse logo
Article

Continuously Building a Book

Clement Escoffier

I’m thrilled to announce the availability of a mini-book about Eclipse Vert.x. This book focuses on the development of reactive microservices in Java and covers reactive systems and reactive programming. Writing a book, even for a mini-book is a tough task. While writing code and writing a book are very different experiences, you can apply the same process and good practice. I would like to list a couple of tips I’ve used to make the writing a bit easier. 1...

Article Thumbnail
Article

Infinispan’s Java 8 Streams Capabilities

Samantha Donaldson

Let’s be honest: it’s pretty exciting that Infinispan now supports Java 8 for many reasons, but perhaps one of the most anticipated reasons is because of the new stream classes.

Red Hat JBOSS Data Grid
Article

Enabling LDAP Security for DataGrid Cache

Kamesh Sampath

Expanding on Tristan's blog, where he spoke of enabling security for JBoss Data Grid caches, in this post we will cover how to add LDAP based security to the JDG caches. The principles and techniques remain defined by Tristan, but there are some minor changes that I will be highlighting in this blog for a successful working configuration of JDG enabled with LDAP security. Before we jump on to configuring the JDG for security, I would like to brush up...

Red Hat OpenShift logo
Article

Develop and Deploy on OpenShift Next-Gen using Red Hat JBoss Developer Studio

Jeff Maury

The OpenShift Next-Gen platform is available for evaluation: visit https://console.preview.openshift.com/. It is based on Red Hat OpenShift Container Platform 3.4. This preview allows you to play with OpenShift Container Platform 3.4 and deploy artifacts. The evaluation is limited to one month. The purpose of the article is to describe how to use Red Hat JBoss Developer Studio or JBoss Tools together with this online platform. Install Red Hat JBoss Developer Studio If you have not already installed Red Hat JBoss...

Article Thumbnail
Article

OpenJDK and Containers

Christine Flood

What can be done to help the OpenJDK JVM play well in the world of Linux Containers? I thought I'd start tackling this issue by answering some frequently asked questions: Why is it when I specify -Xmx=1g my JVM uses up more memory than 1gb of memory? Specifying -Xmx=1g is telling the JVM to allocate a 1gb heap. It's not telling the JVM to limit its entire memory usage to 1gb. There are card tables, code caches, and all sorts...

Red Hat JBOSS Data Grid
Article

Offload your database data into an in-memory data grid for fast processing made easy

Cojan van Ballegooijen

An in-memory data grid is a distributed data management platform for application data that: Uses memory (RAM) to store information for very fast, low-latency response time, and very high throughput. Keeps copies of that information synchronized across multiple servers for continuous availability, information reliability, and linear scalability. Can be used as distributed cache, NoSQL database, event broker, compute grid, and Apache Spark data store. The technical advantages of an in-memory data grid (IMDGs) provide business benefits in the form of...

Eclipse Vert.X book cover
Cheat Sheet

Eclipse Vert.x Cheat Sheet

Clement Escoffier

Eclipse Vert.x applications are fast, responsive, resilient and elastic. Here are step-by-step details to create them.

WildFly Swarm Cheat Sheet Cover
Cheat Sheet

WildFly Swarm Cheat Sheet

Andrew Block

In this cheat sheet, learn how to develop a WildFly Swarm application, including how to customize the runtime and configure a WildFly Swarm application.

Google Summer of Code
Article

JBoss participates in Google Summer of Code 2017

Heiko Rupp

Google Summer of Code (GSoC), for those who are not familiar, is an initiative led by Google to encourage students to participate in Open Source projects during their summer break. Projects like JBoss Community, Eclipse Vert.X or Fedora apply to be a mentoring organization and if selected by Google, are paired with students with whom they will mentor. Selected and successful students will receive a stipend from Google for their participation. The JBoss community has been participating in GSoC for...

Java inside docker
Article

Java inside docker: What you must know to not FAIL

Rafael Benevides

Many developers are (or should be) aware that Java processes running inside Linux containers ( docker, rkt, runC, lxcfs, etc) don't behave as expected when we let the JVM ergonomics set the default values for the garbage collector, heap size, and runtime compiler. When we execute a Java application without any tuning parameter like "java -jar mypplication-fat.jar", the JVM will adjust by itself several parameters to have the best performance in the execution environment. This blog post takes a straightforward...

Getting started with OpenShift Java S2I
Article

Getting started with OpenShift Java S2I

Thomas Qvarnström

Introduction The OpenShift Java S2I image, which allows you to automatically build and deploy your Java microservices, has just been released and is now publicly available. This article describes how to get started with the Java S2I container image, but first, let’s discuss why having a Java S2I image is so important. Why Java S2I? The Java S2I image enables developers to automatically build, deploy and run java applications on demand, in OpenShift Container Platform, by simply specifying the location...

Red Hat Logo
Article

Download A-MQ 7 Beta 2 Today

Christina Lin

A-MQ 7 Beta provides fast, lightweight, and secure messaging for Internet-scale applications. It sets a strong foundation for building modern distributed reactive architecture. A-MQ offers the rich feature set and reliability that enterprise customers depend on. A-MQ gives you the strong foundation you need to build modern distributed applications. Messaging for enterprise applications - A-MQ Broker is a pure-Java multiprotocol message broker, with fast message persistence and advanced high availability modes. It is very highly optimized for general message use-cases...

Using API keys securely in your OpenShift microservices and applications
Article

How to build a containerized IoT solution with OpenShift

Ishu Verma

For businesses looking to build scalable Internet of Things (IoT) solutions using containers, here is a sample project built on the Red Hat OpenShift Container Platform . This project implements an intelligent IoT gateway on the OpenShift Container platform. The IoT Gateway is critical for enterprise IoT as it brings intelligence, and enables key services, at the edge. In this project, the gateway application is deployed as a set of microservices inside containers on OpenShift. A software sensor sends a...

Camel / Red Hat Fuse
Article

Microservices: Zero Downtime Deployment; Hot reconfiguration on OpenShift

Abdellatif Bouchama

2017: Time for a new resolution and the most important resolution for this year should be to adopt microservices to spend less effort on development and improve your time to market (TTM). Nowadays, there are plenty of tools and frameworks at the disposal of the discerning developer to rapidly build microservices. A few examples include Spring Boot, Vertx, etc. Once you build your microservices, the next step is to ensure that these frequent deployments do not impact the availability of...

Camel / Red Hat Fuse
Article

Applying API Best Practices in Fuse

Christina Lin

API plays a huge part in modern integration architecture design, a good design will allow your application to thrive, a bad design will end up on the cold stone bench and eventually vanishes. :( Well, to avoid this tragedy from happening to our APIs, there are certain guidelines that we might want to consider to follow. I know there are many debates out there on the best practice of API design, and I don't think it will ever end. It...

How To Thumbnail
How To

Build your first application using Java on RHEL 7 with OpenJDK 8

mguerett

Get started developing with Java 8 on Red Hat Enterprise Linux in under 10 minutes. Introduction and Prerequisites In this tutorial, you will see how to get started with Java development on Red Hat Enterprise Linux by creating a simple Hello World application. You will install a Java Development Kit (JDK), and learn what Java packages are available. The whole tutorial should take less than 10 minutes to complete. You will need a Red Hat Enterprise Linux 7 system with...

Article Thumbnail
Article

Data Encapsulation vs. Immutability in Javascript

Lance Ball

A while ago, I wrote a fairly long post attempting to shed some light on a few things you can do in your JavaScript classes to enforce the concept of data encapsulation - or data "hiding". But as soon as I posted it, I got some flak from a friend who is a Clojure programmer. His first comment about the article was this. Mutability and data encapsulation are fundamentally at odds. Eventually, he walked that back - but only just...

Camel / Red Hat Fuse
Article

Getting Started with Fuse Integration Service 2.0 Tech preview

Christina Lin

To get started with FIS 2.0, for people who are just getting to know the technology, here is how I interpret it. Basically, it's divided into two aspects. 1. Integration development: FIS uses Apache Camel as the core technology that creates, orchestrates, and composes microservices into a super lightweight thin integration layer, and becomes the API provider and service orchestrator through exposing RESTful or messaging service endpoints. And you can choose to either package and run it with Spring-Boot or...

Article Thumbnail
Article

A-MQ 7 Beta Component

Justin Ross

A-MQ Components A-MQ is a suite of servers and clients that work together to form the foundation of a reliable distributed application. A-MQ Broker A-MQ Broker is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core, with a fast native journal for message persistence and the option of shared-nothing state replication for high availability. Persistence - A fast, native-IO journal or a JDBC-based store High availability - Shared store or shared-nothing state replication Advanced queueing - Last...

Red Hat Logo
Article

Spring Boot and OAuth2 with Keycloak

Kamesh Sampath

The tutorial Spring Boot and OAuth2 showed how to enable OAuth2 with Spring Boot with Facebook as AuthProvider; this blog is the extension of showing how to use KeyCloak as AuthProvider instead of Facebook. I intend to keep this example as close to the original Spring Boot and OAuth2 and will explain the changes to the configuration to make the same application work with KeyCloak. The source code for the examples are available in the github repositories listed below. Keycloak...

Eclipse logo
Article

Eclipse Vert.x Core Cheat Sheet

Clement Escoffier

Eclipse Vert.x is a toolkit used to build reactive and distributed systems on the Java Virtual Machine. Vert.x supports a variety of languages letting you choose which one you’d prefer. The Vert.x Core cheat sheet covers the creation of a project using Apache Maven, Gradle or the Vert.x CLI, and references most common Vert.x Core APIs, in 3 different languages (Java, JavaScript, and Groovy). Forgot how to create an HTTP server, use the HTTP client, implement a request-response on the...