Our blog contains the activity stream of Orchard Dojo: general news, new resources or tutorials are announced here.

Copilot Integration, Last call: Speaker application for Orchard Harvest 2026 - This week in Orchard (01/05/2026)

This week, Mike Alhayek shows how to use Copilot directly inside Orchard Core!

But before that, check out some code where you can see that, starting now, Orchard supports static data migration methods, and suppressions are no longer required for migration steps that don't use instance state.

Welcome the first contribution from Jack Liu, who made the pagination of the List Part configurable to decide whether to show a full pager with page numbers or just the arrows to navigate to the previous and next pages.

Do you know that since 2013, we've been working with Óbuda University in a hands-on way to teach web development? If you are interested in our Orchard Core courses at the university, check out our post on our site!

As we mentioned, we started publishing last year's Harvest recordings to YouTube. Check them out for some inspiration, and don't forget to apply to be a speaker for this year's Harvest by the 5th of May, midnight, anywhere on Earth!

Ready to explore? Let's dive in!

Latest tutorials

Featured tags

AI
IIS
MCP
API
SMS
SEO
All tags >

How we reduced our app's server-side latency in Azure by 98% while lowering cost by 28%

Sounds like clickbait, right? Fair enough, here's the TL;DR: We moved our Azure Web App from the Windows S1 plan to the new Linux P0v4 plan. Read on for the details!How we used to run our Orchard Core apps in AzureThose Orchard Core web apps of ours that aren't too resource-hungry (like the app running Orchard Dojo) we've been running on the Windows S1 plan of App Services. This now legacy plan provides 1 vCPU, 1,75 GB of RAM, and HDD local storage for a cost of USD 73/month. Not a lot of processing power, but it was enough if your requirements weren't high either. And it, as you may have guessed it, runs on a Windows server.We've done measurements before, and the Linux pair of this App Service plan performed worse. The newer Premium tiers, with newer hardware and SSD storage performed better, but were too expensive for our use-cases and the added performance wasn't necessary. However, two things happened since then: The S1 tier of App Services became deprecated, and a new, v4 Premium tier was rolled out. What's more, the lowest plan of Premium v4, P0v4, is actually cheaper at USD 53,3/month! This is a 28% cost reduction right off the bat, and it promised better performance, too, so we had to try it out. And this was a great success!Windows S1 App Services — the baselineThe test subject was our Lombiq Tenants Core app. This runs most of our own websites, including Orchard Dojo, dotnest.com (but not the sites created on DotNest), and our company website. This is how its performance looked under the Windows S1 plan: Not great, but not terr... No, at face value, it's actually quite terrible, with the 99th percentile being at 18 seconds for generating a server-side response. However, digging into the details revealed that the vast majority of requests that users cared about (e.g. excluding error pages that spambots hit) performed on an acceptable level, within 1-200 ms. Now, this is indeed not great, but not terrible either. Still, the average response time for all requests, even if this includes ones that no real person was seeing and one-off outliers, was 3,7 s. Can we fix this?The charts in this post are from Azure Application Insights, BTW, Azure's app monitoring service. We use it enhanced by our open-source Lombiq Hosting - Azure Application Insights for Orchard Core module, check it out!Linux wasn't always betterAn ASP.NET Core web app, especially in its source form but even when compiled to binaries, consists of a lot of small files, and it constantly works with a lot of small files too (like stylesheets, images). You'd expect that this is a clear case where Linux (with its usually used ext4 file system) has an advantage over Windows (with NTFS). Linux also generally has a lower resource footprint in itself, leaving more for the web app. So, it should just be faster, right? Nope!At least, it wasn't faster at the time when we compared the Windows and Linux S1 tiers. The average server-side latency was about 68% worse under Linux, although for a lower price. The tiny savings weren't worth the worse UX.But then the P0v4 App Service plan came.Migrating to Linux P0v4 App Services and reducing latency by 98%The new P0v4 App Service plan, which came out of preview and entered general availability in September 2025, offers still 1 vCPU but 4 GB RAM, and SSD storage. It also contains the latest hardware all around. So, we checked out how it performs in real life.Moving from a Windows to Linux App Service Plan is a manual process: You have to create a new App Service, configure every service connection and automation to use it instead of the old one, and deploy your app to it anew. It's a chore, but you have to do it only once. And this is your reward: As you can see, 50th percentile was reduced to only 39 ms from 226, and the 99th percentile from 17,8 s to 738 ms. The average response time on the Windows S1 App Service was 3,7 s, while on the Linux P0v4 one 77,5 ms. Let me write it out in a more obvious way: 3700 ms vs 77,5. That's a 98% reduction in latency! Which is absolutely awesome. There must be multiple generations between the CPUs and RAM of the S1 and P0v4 tiers, and I guess having an SSD and newer everything else helps too. More RAM surely does as well, although that was always enough before too.ConclusionMy recommendation would be to keep an eye on the offering that Azure, or your hosting provider, has, because the cost of compute is constantly coming down while performance is going up. With clever and not always ethical tricks, providers try to keep you paying ever increasingly more. However, the reality of hardware advances should eventually be reflected in your monthly bill and your app's performance metrics — you might need to work for it, though.Do you also want better performance for your Orchard Core or any ASP.NET Core app? Contact us and we can take a look!

Centralize the Indexing process, Remove Media files for a removed tenant when using Azure Blob Storage - This week in Orchard (20/06/2025)

This time, you can see a demo about centralizing the Indexing process and having a unified UI for managing Indexes and the Search Settings! But first, let's look at our other topics, like removing Media files for a removed tenant when using Azure Blob Storage, and adding RouteEndpoint cache. Don't forget that you can still fill out our Orchard Core Admin UI experience renewal survey to help shape the future of Orchard Core!

AI Data Source Management feature, allow the use of the site's time zone in workflow timer activities - This week in Orchard (13/06/2025)

This time, you can see a fascinating AI Data Source Management feature demo! But first, let's look at our other topics, like allowing the use of the site's time zone in workflow timer activities, and adding a warning when using Redis for data protection. Don't forget to fill out our Orchard Core Admin UI experience renewal survey to help shape the future of Orchard Core!

OpenAI feature including Azure OpenAI integration, Orchard Harvest 2025 survey - This week in Orchard (17/01/2025)

This time, you can see a fascinating demo of the OpenAI feature, including Azure OpenAI integration! But first, let's check out our other topics, like removing ReCaptchaMode and DetectionThreshold, introducing the new ReCaptcha shape, and exposing properties of ITrackingConsentFeature and cookie policy in Liquid! Oh, and did we mention that we have just created a survey for Orchard Harvest 2025?