Quantcast
Channel: Steve Gordon
Browsing all 170 articles
Browse latest View live

ASP.NET Core 2.2 First Look – Endpoint Routing (aka Dispatcher)

The first preview of ASP.NET Core 2.2 is due (very) soon and it will be our first chance to test the changes and new features which are expected to be released by the end of this year. ASP.NET Core 2.2...

View Article


Running AWS DynamoDB Locally for .NET Core Developers

For a recent set of .NET Core based microservices I have found myself using AWS DynamoDB as a data store. I recently discovered that AWS provides (and have done for 5 years!) a local version of...

View Article


Passing an ILogger to Polly Policies

In a previous post, I looked at how we could use the Polly context to obtain a retry count after policy execution. In this post, I want to explore a similar requirement that can also be solved by using...

View Article

ASP.NET Core 2.2 – Options Validation

I was listening to this week’s ASP.NET Community Standup and during the introduction, Jon Galloway shared Andrew Lock’s blog post, “Delaying strongly-typed options configuration using PostConfigure in...

View Article

Publishing to AWS Simple Notification Service (SNS) from ASP.NET Core

In this post, I’ll demonstrate how to publish a message to AWS Simple Notification Service from an ASP.NET Core application. The same steps will work just as easily from a .NET Core generic host based...

View Article


Running AWS S3 (Simple Storage Service) Locally for .NET Core Developers

In a previous post, I described how to run AWS DynamoDb locally using the AWS supplied docker image. I’ve recently been doing some work where I’m benchmarking code that works against AWS services. For...

View Article

Motivations for Writing High-Performance C# Code

This post marks the beginning of what I expect will be a fairly long series of performance related posts. I’ll use this post as of a table of contents for accessing those future posts as well as to...

View Article

Introduction to Benchmarking C# Code with Benchmark .NET

In my previous post, I introduced this series in which I’ll share my experiences while learning about the new performance features in C# and the .NET Core (corefx) framework. In this post, I want to...

View Article


HttpClient Creation and Disposal Internals: Should I Dispose of HttpClient?

A common question that I get asked quite often and a point of reasonable confusion for developers is “Should I dispose of HttpClient or not?” There isn’t one yes or no answer to this. It really does...

View Article


An Introduction to Optimising Code Using Span

This post continues my series about writing high-performance C# code. In this post, we’ll continue from the last two posts by introducing the Span<T> type and refactor some existing code by...

View Article

An Early Look at gRPC and ASP.NET Core 3.0

In this post, I want to introduce my very early experience (after a few hours of experimentation) of gRPC and ASP.NET Core 3.0. I’ve conducted some experiments as part of our quarterly Madgex hack day....

View Article

Campaigning for a .NET Foundation Board Seat

Please excuse me for interrupting the normally educational and generally technical .NET content for a short announcement! I’m running for a seat on the board of directors of the .NET Foundation!!! It...

View Article

Demystifying HttpClient Internals

I’ve written a few blog posts about HttpClientFactory and HttpClient and these are proving popular topics. There exists some confusion about how HttpClient should be used and there is a degree of...

View Article


Demystifying HttpClient Internals: HttpRequestMessage

Anyone who regularly works with HttpClient will have likely have also used the HttpRequestMessage class. While HttpClient supports some convenience methods for quick actions such as sending a GET...

View Article

Demystifying HttpClient Internals: HttpResponseMessage

In the previous post in my demystifying HttpClient series, I looked at the internals of HttpRequestMessage. I want to continue the series by investigating the HttpResponseMessage. This class is mostly...

View Article


Creating Strings with No Allocation Overhead Using String.Create

In this post, I’ll continue my series about writing high-performance C# and .NET code. This time, I will focus on a new(ish) method available on the String type – String.Create. First introduced in...

View Article

Profiling .NET Core Memory Traffic using JetBrains dotMemory

In this post, I will continue my journey into writing high-performance C# and .NET Core code by taking a look at a benchmarking challenge I recently encountered. While writing some sample code for an...

View Article


Interpreting the .NET Core Memory Timeline in JetBrains dotMemory

In my last post, which is part of my ‘Writing High-Performance C# and .NET Code‘ series,  we looked at how dotMemory can be used to view the amount of memory allocated by code in an application using...

View Article

Analysing the Large Object Heap in JetBrains dotMemory

In my last post, which is part of my ‘Writing High-Performance C# and .NET Code‘ series, we looked at how we can begin interpreting some of the data from a dotMemory profiling session. In this post,...

View Article

Using High-Performance Techniques to Base64 Encode a GUID

It’s been a little while since my last high-performance post, but my use of the techniques and features continues! In this post, I want to present a more practical example which I hope will help to...

View Article
Browsing all 170 articles
Browse latest View live