jvm

Featured image for Java topics.
Article

How the JVM uses and allocates memory

Aashish Patil

Explore the JVM options used to control how the JVM uses memory in your Java applications, including monitoring for memory leaks and out-of-memory errors.

Java logo
Article

Using Byteman to Find Out Why the TimeZone Changed on a Java App Server

Durgesh Anaokar

Using Byteman to Find Out Why the TimeZone Changed on a Java App Server. This article is about a real problem I faced where the timezone on a Java application server (in my case it was JBoss) changed unexpectedly during the run time of the server.

Java logo
Article

Java Class Metadata: A User Guide

Andrew Dinn

A user guide of Java Class Metadata. I presented a talk last week in the Free Java Room at FOSDEM 2018 on the subject of Java Class Metadata, explaining what it is, why it helps to know about it, what you might do to measure it, and reduce the impact of it's footprint on  your Java application.

Kubernetes logo
Article

New Distributed Primitives for Developers

Bilgin Ibryam

Object-Oriented Primitives (in-process primitives) As a Java developer, I'm well familiar with object-oriented concepts such as class, object, inheritance, encapsulation, polymorphism, etc. In addition to the object-oriented concepts, I'm also well familiar with the Java runtime, what features it provides, how it manages my applications, what would be the life cycle of my object and the application as a whole, etc. And for over a decade, I've used all the primary tools, primitives, and building blocks as a developer to...

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...

Article Thumbnail
Article

Securing Fuse 6.3 Fabric Cluster Management Console with SSL/TLS

Elvadas Nono

Introduction Enabling SSL/TLS in a Fabric is slightly more complex than securing a jetty in a standalone Karaf container. In the following article, we are providing feedback on the overall process. For clarity and simplification, the article will be divided into two parts. Part1: The Management Console Part2: Securing Web Service:including gateway-http For the purpose of this PoC, the following environment will be used. Environment Host fabric1.example.com (192.168.56.1), localhost MacOS Host fabric2.example.com (192.168.56.101), RHEL 7.2 Virtual Box VM Host fabric3.example.com...

Article Thumbnail
Article

DevNation Live Blog: Analyzing Java applications using Thermostat

Salem Elrahal

Omair Majid, a Red Hat Senior Software Engineer, addressed the primordial issue of performance on the Java Virtual Machine. Performance issues of OS, CPU, Memory, and IO origins plague modern systems and present a complex issue to developers so the Thermostat tool focuses on alleviating and easing serviceability while enhancing monitoring of the JVM. After highlighting the problem many sources of performance information (CPU Usage, Memory Regions, GC, Classloading, JMX, JIT, IO calls, threading, etc...) and many ways to collect...

Article Thumbnail
Article

Node.js - Harnessing the power of Java (for PDF generation and more)

Cesar Valdez

At Red Hat, we all love playing with new technologies, and sometimes we find gaps that haven't yet been filled. I want to take a few minutes to share a personal project I've been working on in my spare time. It is a native C++11 add-on that allows you to run a JVM in Node.js, giving access to the mature Java ecosystem of libraries and frameworks. Motivation I just wanted some mature PDF library in Node.js, like iText , PDFBox...

Article Thumbnail
Article

Origins of .NET on Linux: An explanation for Java Developers

Lincoln Baxter III

The .NET framework is a relatively young technology when compared to the rest of computer science history, but as it turns fourteen this year, we can look back and see a long-standing record of innovation, developer productivity, and more recently a refreshing open-source mentality from Microsoft that has resulted in the first ever release of (the official) .NET framework in a Linux distribution. .NET is a development platform that includes several programming languages, notably C# and Visual Basic, and the...

DevNation logo
Article

DevNation 2014 - Jason Greene - JVM Finalize Pitfalls: How to Avoid the Danger

Mike Guerette

Abstract: Properly freeing external resources such as files and connections in a garbage collected environment requires care. The JVM's finalize() and PhantomReference features provide APIs and JVM targetted languages a way to handle the common case of a forgotten close. Unfortunately these capabilities are deeply flawed, and require specialized techniques to use correctly. This session will dive deeply into the problem, showing how the JVM can get it wrong. It will offer useful tips on how developers can safely manage...