<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Performance on Dimitri Laaraybi</title>
    <link>https://www.dimitrilaaraybi.com/tags/performance/</link>
    <description>Recent content in Performance on Dimitri Laaraybi</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Tue, 27 Jan 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://www.dimitrilaaraybi.com/tags/performance/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Exploring TUnit, a modern take on .NET testing</title>
      <link>https://www.dimitrilaaraybi.com/blog/tunit/</link>
      <pubDate>Tue, 27 Jan 2026 00:00:00 +0000</pubDate>
      <guid>https://www.dimitrilaaraybi.com/blog/tunit/</guid>
      <description>&lt;p&gt;The .NET testing ecosystem has been dominated for years by well‑established frameworks such as &lt;strong&gt;xUnit&lt;/strong&gt;, &lt;strong&gt;NUnit&lt;/strong&gt;, and &lt;strong&gt;MSTest&lt;/strong&gt;. They are mature, stable, and battle‑tested. But as .NET itself evolves, becoming faster, more async‑friendly, and more careful about performance, new tools are emerging to better match these modern expectations.&lt;/p&gt;&#xA;&lt;p&gt;One of the most interesting newcomers is &lt;strong&gt;&lt;a href=&#34;https://tunit.dev/&#34;&#xA;    target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&#xA;  TUnit&#xA;&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In this article, we’ll try to explore what TUnit is, its core concepts and advantages, but also explore concrete examples of tests compared to xUnit.&lt;br&gt;&#xA;Let&amp;rsquo;s go ! 🔥&lt;/p&gt;</description>
    </item>
    <item>
      <title>Say Hello to .NET 10 !</title>
      <link>https://www.dimitrilaaraybi.com/blog/migratetodotnet10/</link>
      <pubDate>Tue, 02 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://www.dimitrilaaraybi.com/blog/migratetodotnet10/</guid>
      <description>&lt;h1 id=&#34;introduction&#34;&gt;Introduction&lt;/h1&gt;&#xA;&lt;p&gt;It&amp;rsquo;s been a recurrent meeting every 2 years, as this month Microsoft gave us the chance to try and adopt the new LTS version of our beloved framework, which is .NET 10 🔥&lt;br&gt;&#xA;In this post, I&amp;rsquo;ll show you what are the big new improvements and features in this new LTS version, and also how to migrate your apps, which, you will see, has not changed a lot since the previous versions and this is a pretty good point.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Combining memory and distributed cache with HybridCache</title>
      <link>https://www.dimitrilaaraybi.com/blog/hybridcache/</link>
      <pubDate>Sat, 31 May 2025 00:00:00 +0000</pubDate>
      <guid>https://www.dimitrilaaraybi.com/blog/hybridcache/</guid>
      <description>&lt;h1 id=&#34;exploring-the-new-hybridcache-in-net&#34;&gt;Exploring the new HybridCache in .NET&lt;/h1&gt;&#xA;&lt;p&gt;New major dotnet releases always come with their bunch of new interesting features.&lt;br&gt;&#xA;With the release of .NET 9, Microsoft introduced a powerful new caching mechanism called &lt;code&gt;HybridCache&lt;/code&gt;.  It’s designed to combine the benefits of both in-memory and distributed caching, providing better performance and scalability for modern applications.   Let&amp;rsquo;s dive into it 😎&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-is-hybridcache&#34;&gt;What is HybridCache?&lt;/h2&gt;&#xA;&lt;p&gt;HybridCache is a new caching abstraction that intelligently uses both:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Beware of Task.Run() !</title>
      <link>https://www.dimitrilaaraybi.com/blog/bewareoftaskrun/</link>
      <pubDate>Tue, 18 Mar 2025 00:00:00 +0000</pubDate>
      <guid>https://www.dimitrilaaraybi.com/blog/bewareoftaskrun/</guid>
      <description>&lt;h1 id=&#34;introduction&#34;&gt;Introduction&lt;/h1&gt;&#xA;&lt;p&gt;Hey all ! 🫡&lt;/p&gt;&#xA;&lt;p&gt;A little post to share some thoughts about the &lt;strong&gt;Task.Run()&lt;/strong&gt; method, and the problems you could encounter especially in a .NET API using a GlobalExceptionHandler. ❌&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-actually-happen-when-you-need-to-start-a-task-as-fire-and-forget-and-you-have-an-exceptionhandler-configured-globally-&#34;&gt;What actually happen when you need to start a Task as &amp;ldquo;fire and forget&amp;rdquo;, and you have an ExceptionHandler configured globally ?&lt;/h2&gt;&#xA;&lt;p&gt;This kind of case can happen frequently, for example if you need to await a particular business process, and start some tasks after that process that does not need to be awaited by the calling context.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to migrate your application to .NET 8 ?</title>
      <link>https://www.dimitrilaaraybi.com/blog/migratetodotnet8/</link>
      <pubDate>Wed, 14 Feb 2024 00:00:00 +0000</pubDate>
      <guid>https://www.dimitrilaaraybi.com/blog/migratetodotnet8/</guid>
      <description>&lt;h1 id=&#34;introduction&#34;&gt;Introduction&lt;/h1&gt;&#xA;&lt;p&gt;Hey devs !&lt;/p&gt;&#xA;&lt;p&gt;As you may all know, the new version of .NET, .NET 8, has been released on November 14 2023. A lot of you may have applications still in .NET 6 or earlier.&lt;br&gt;&#xA;The end of support date for .NET 6 is November 12, 2024, so it&amp;rsquo;s good considering migrating your applications right now.&lt;br&gt;&#xA;In this article, we&amp;rsquo;ll see what improvements brings .NET 8, and how to migrate your applications.&lt;br&gt;&#xA;Microsoft has done a good job to make it easy for us to migrate from .NET 6 to .NET 8, or .NET 7 to .NET 8 (at least if you don&amp;rsquo;t rely on a Blazor app&amp;hellip;), so we might as well make the most of it 😁&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
