<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Jasmine Taylor on foojay.io - Friends of OpenJDK</title><link>https://foojayio.github.io/website/today/author/jasmine-taylor/</link><description>Articles written by Jasmine Taylor on foojay.io - Friends of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Wed, 24 Jan 2024 20:05:53 +0000</lastBuildDate><atom:link href="https://foojayio.github.io/website/today/author/jasmine-taylor/index.xml" rel="self" type="application/rss+xml"/><item><title>Microservices Architecture: Navigating the Buzz</title><link>https://foojayio.github.io/website/today/microservices-architecture-navigating-the-buzz/</link><pubDate>Wed, 24 Jan 2024 20:05:53 +0000</pubDate><guid>https://foojayio.github.io/website/today/microservices-architecture-navigating-the-buzz/</guid><description>&lt;p&gt;Lately I&amp;rsquo;ve been exploring what all the talk around &amp;lsquo;&lt;a href="https://semaphoreci.com/blog/microservice-architecture" title="microservices architecture" target="_blank" rel="noopener noreferrer"&gt;microservices architecture&lt;/a&gt;
&amp;rsquo; is really about. From it popping up in every other social media debate to it increasingly becoming a must-have skill on job listings, what is it that has caused this strong divide between the proponents of the traditional monolithic approach and those who have embraced the microservices paradigm.&lt;/p&gt;
&lt;p&gt;In this article I&amp;rsquo;m here to break it down for you as I outline the benefits, some common challenges, and offer some insights from microservices experts for those considering this approach.&lt;/p&gt;</description></item><item><title>Memory Management in Java: An Introduction</title><link>https://foojayio.github.io/website/today/java-memory-management/</link><pubDate>Wed, 27 Sep 2023 13:47:28 +0000</pubDate><guid>https://foojayio.github.io/website/today/java-memory-management/</guid><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Understanding memory management in Java, and particularly the role of object allocation is essential when optimising system performance.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In Java, memory management is an automatic process that is managed by the Java Virtual Machine (JVM), and one that does not need explicit intervention. Java, being a block-structured language, uses a model where its memory is divided into two main types: stack and heap.&lt;/p&gt;
&lt;p&gt;Local variables and method parameters use memory based on a &amp;lsquo;stack&amp;rsquo;. This area of memory grows and shrinks automatically when a code block or method is entered or exited, respectively. In situations where a request is made to the system for an amount of memory, whose size is only known at runtime, or when creating an object, these requests are usually satisfied by an area of the process&amp;rsquo; memory known as &amp;lsquo;dynamic memory&amp;rsquo; or the &amp;lsquo;heap&amp;rsquo;. Strictly speaking &amp;ndash; there is an occasion when an object that may be destined for the heap is instead written to the stack, however we will leave this discussion for a later document.&lt;/p&gt;</description></item><item><title>How to Automatically Create Microservices Architecture Diagrams</title><link>https://foojayio.github.io/website/today/automatically-creating-microservices-architecture-diagrams/</link><pubDate>Thu, 20 Apr 2023 08:01:21 +0000</pubDate><guid>https://foojayio.github.io/website/today/automatically-creating-microservices-architecture-diagrams/</guid><description>&lt;p&gt;In application development, microservices is an architectural style where larger applications are structured as a collection of smaller, independent, yet interconnected services.&lt;/p&gt;
&lt;p&gt;While this allows for highly maintainable and testable applications (as each service can be maintained independent of the larger application), the problem with this method is the inherent complexity of interactions between microservices.&lt;/p&gt;
&lt;p&gt;It can be difficult for developers and team members to visualise how these microservices are connected to each other. We have been looking for ways to produce architectural diagrams that illustrate these interactions.&lt;/p&gt;</description></item><item><title>Chronicle Wire: Object Marshalling</title><link>https://foojayio.github.io/website/today/chronicle-wire-object-marshalling/</link><pubDate>Wed, 29 Mar 2023 13:35:43 +0000</pubDate><guid>https://foojayio.github.io/website/today/chronicle-wire-object-marshalling/</guid><description>&lt;p&gt;At &lt;a href="https://chronicle.software/?utm_source=foojay&amp;amp;amp;utm_medium=article&amp;amp;amp;utm_campaign=jasmine-article" title="Chronicle" target="_blank" rel="noopener noreferrer"&gt;Chronicle&lt;/a&gt;
, we know that efficient code doesn&amp;rsquo;t just run faster; if it&amp;rsquo;s using less compute-resource, it may also be cheaper to run.&lt;/p&gt;
&lt;p&gt;In particular, distributed cloud applications can benefit from fast, lightweight serialisation.&lt;/p&gt;
&lt;p&gt;In this article, we will demonstrate the efficiencies of using Chronicle Wire to encode small Strings into long primitives, with a few step-by-step examples of object marshalling, and show how this can improve the performance of your application&amp;rsquo;s serialisation.&lt;/p&gt;</description></item></channel></rss>