<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>InfoQ - Microservices - Articles</title>
    <link>https://www.infoq.com</link>
    <description>InfoQ Microservices Articles feed</description>
    <item>
      <title>Article: Virtual Threads after JDK 24: What Changed for Production Java</title>
      <link>https://www.infoq.com/articles/virtual-threads-after-jdk24/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Microservices-articles</link>
      <description>&lt;img src="https://res.infoq.com/articles/virtual-threads-after-jdk24/en/headerimage/virtual-threads-after-jdk24-header-1785232507934.jpg"/&gt;&lt;p&gt;JDK 24 removed the monitor-related carrier-thread pinning that stalled Netflix and similar teams on Java 21. What has replaced it on JDK 25 LTS is downstream-resource saturation: the bottleneck moved and now demands explicit bounding in application code. This article maps the failure modes that surface after virtual-thread adoption and gives a practical sequence backed by a public benchmark.&lt;/p&gt; &lt;i&gt;By Sandeep Bharadwaj&lt;/i&gt;</description>
      <category>Structured Concurrency</category>
      <category>JDK 24</category>
      <category>Java</category>
      <category>Spring Boot</category>
      <category>Virtual Thread</category>
      <category>ThreadLocal</category>
      <category>Spring MVC</category>
      <category>Reactor</category>
      <category>Spring WebFlux</category>
      <category>JDK 25</category>
      <category>Scoped Values</category>
      <category>JDK 21</category>
      <category>Development</category>
      <category>Architecture &amp; Design</category>
      <category>article</category>
      <pubDate>Fri, 31 Jul 2026 09:00:00 GMT</pubDate>
      <guid>https://www.infoq.com/articles/virtual-threads-after-jdk24/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Microservices-articles</guid>
      <dc:creator>Sandeep Bharadwaj</dc:creator>
      <dc:date>2026-07-31T09:00:00Z</dc:date>
      <dc:identifier>/articles/virtual-threads-after-jdk24/en</dc:identifier>
    </item>
    <item>
      <title>Article: The Hard-Stop Rule: from 3 HCM Monoliths to 120 Domain Microservices</title>
      <link>https://www.infoq.com/articles/pull-based-migration/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Microservices-articles</link>
      <description>&lt;img src="https://res.infoq.com/articles/pull-based-migration/en/headerimage/pull-based-migration-header-1784812950594.jpg"/&gt;&lt;p&gt;A payroll and HR software team rebuilt three monoliths into over 120 smaller services over five years, with no dedicated migration budget. Every new feature was built as its own service instead of changing the old ones. The article covers the pull-based migration, the tools that made this possible, how costs were kept down, and the problems the team ran into along the way.&lt;/p&gt; &lt;i&gt;By Prashanth Pasham&lt;/i&gt;</description>
      <category>Azure</category>
      <category>Feature Toggle</category>
      <category>Microservices</category>
      <category>Cloud</category>
      <category>Cost Optimization</category>
      <category>Cloud Computing</category>
      <category>Platform Engineering</category>
      <category>Modular Monolith</category>
      <category>Architecture &amp; Design</category>
      <category>DevOps</category>
      <category>article</category>
      <pubDate>Tue, 28 Jul 2026 09:00:00 GMT</pubDate>
      <guid>https://www.infoq.com/articles/pull-based-migration/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Microservices-articles</guid>
      <dc:creator>Prashanth Pasham</dc:creator>
      <dc:date>2026-07-28T09:00:00Z</dc:date>
      <dc:identifier>/articles/pull-based-migration/en</dc:identifier>
    </item>
  </channel>
</rss>
