Tags

#performance
performance

79stories
1 d agolatest
PostSharp 2027.0
Typed aspect advices
PMMetalama / PostSharp Blog Gaël Fraiteur Oct 23

PostSharp 2027.0 advice parameter binding removes boxing and allocations from aspects

PostSharp 2027.0 makes advice parameter binding public: aspect advices receive typed parameters instead of a MethodExecutionArgs object. That removes per-call heap allocations, boxing and casts on hot paths. Bindings are checked at build time, so mismatches fail the build rather than production.

ASP.NET Core 10
Fix common API mistakes
DVDEV Community: #aspnetcore Pankaj Singh Oct 23

Six common ASP.NET Core Web API mistakes and the patterns to use instead

A developer who has maintained ASP.NET Core APIs for years lists six recurring problems: scattered try/catch blocks, unbounded list queries, ignored cancellation tokens, lost UTC kinds, late config failures and unprotected login endpoints. Each comes with a suggested pattern using .NET 10 and EF Core 10, noted to work on .NET 8 with small changes.

Wolverine 6.51.3
Safer durable messaging
WOWolverine releases jeremydmiller Oct 23

Wolverine 6.51.3: durable inbox and outbox hardening

Wolverine 6.51.3 is a durability release that fixes a run of problems in the durable inbox and outbox. A new receiver compliance suite exercised PostgreSQL, SQL Server, Marten, EF Core, RabbitMQ and SQS, and the fixes cover transactions, deduplication, retries and dead lettering. There are no breaking API changes, and the one schema addition is optional.

SharePoint Embedded
Production limits and throttling
M3Microsoft 365 Developer Blog Steve Pucelik Oct 22

Building enterprise apps with SharePoint Embedded: limits, throttling and permissions

SharePoint Embedded guidance for moving apps to production has been updated. It covers container and tenant limits, handling throttling, narrower Graph permissions and Office co-authoring. For developers building on the Microsoft 365 platform, it offers concrete planning and security points.

Kafka .NET
Resume after a crash
CCC# Corner Niharika Gupta Oct 22

Kafka Consumer Recovery: Resuming Processing After a Crash

Kafka consumers must pick up where they left off after a restart, crash or network failure. This article explains how committed offsets, consumer groups and manual commits govern recovery, using a C# example built on Confluent.Kafka. It also covers duplicate deliveries, poison messages and the monitoring signals that reveal a consumer quietly falling behind.

ASP.NET Core 10
Wrong page from cache
DVDEV Community: #aspnetcore Sukhpinder Singh Oct 22

SetVaryByQuery Can Make ASP.NET Core Output Cache Serve Wrong Pages

The article explains how calling SetVaryByQuery in an ASP.NET Core output cache policy replaces the default vary-by-all-query-keys behavior. A policy that names only sort stops varying by page, so different pages can receive the same cached body. The author reproduces the bug with a small test and shows the fix.

ASP.NET Core 10
Headers are not server cache
DVDEV Community: #aspnetcore Sukhpinder Singh Oct 22

Cache-Control Header Is Not Output Caching: A Handler Counter Test

The author compares a Cache-Control header with ASP.NET Core output caching using a handler counter. The header only instructs clients and proxies, so the handler ran on all ten calls, while output caching stored the response on the server and ran the handler once. It is a concrete warning for anyone who thinks a cache header caches on the server.

ASP.NET Core
Server time in DevTools
MBMaarten Balliauw Maarten Balliauw Oct 22

Server-Timing Headers in ASP.NET Core: Backend Metrics in Browser DevTools

Maarten Balliauw shows how to add a Server-Timing response header in ASP.NET Core so database and external API timings appear in browser DevTools next to the network timings. The post builds a small middleware, a measurement feature that endpoints can use, and ways to reuse OpenTelemetry Activity data. It also covers gating the header so internal timings are not exposed to every caller.

C# derleyici
Why jump addresses break
HBHabr C# (ru) Stefanio Oct 22

Why stable instruction addresses beat numeric indexes in a C# compiler

The author of the C# interpreter HydraScript explains why numeric instruction indexes broke code generation and how switching to stable IAddress objects fixed it. Addresses now stay with their instructions when code is inserted, removed or replaced, so jumps keep pointing to the right place. It is a concrete case for developers building compilers or interpreters with the Visitor pattern.

Feedback

Found a bug or have an idea? Your message lands straight in my inbox.

Type of message