This is a list of useful articles which I’ll try and update when I find them rather than immediately forgetting them after reading!

2019/12/04 – Converting integration tests to .NET Core 3.0

How to use the new generic Host object for integration testing rather than the old WebHost as well as how to implement it into a WebApplicationFactory for more streamlined testing.

2019/11/18 – I Wanna Go Fast: Why Searching Through 500M Pwned Passwords Is So Quick

A good guide on how to make Azure Functions as fast as possible, the main relevant point for me is that using blobs instead of table storage can be up to 50% faster for read operations.

2019/11/18 – Breaking Azure Functions with Too Many Connections

Some good Azure Function design advice and a reminder to use HttpClient properly.

HttpClient is intended to be instantiated once and reused throughout the life of an application. The following conditions can result in SocketException errors:

  • Creating a new HttpClient instance per request.
  • Server under heavy load.

Creating a new HttpClient instance per request can exhaust the available sockets.

2019/11/18 – .NET Core Dependency Injection with Options

A good introduction on how to use the Options pattern with Dependency Injection.

Categories: Programming

Leave a Reply

Your email address will not be published. Required fields are marked *


Fatal error: Uncaught GuzzleHttp\Exception\ClientException: Client error: `POST https://dc.services.visualstudio.com/v2/track` resulted in a `400 Invalid instrumentation key` response: {"itemsReceived":1,"itemsAccepted":0,"errors":[{"index":0,"statusCode":400,"message":"Invalid instrumentation key"}]} in D:\home\site\wwwroot\wp-content\plugins\application-insights\vendor\guzzlehttp\guzzle\src\Exception\RequestException.php:113 Stack trace: #0 D:\home\site\wwwroot\wp-content\plugins\application-insights\vendor\guzzlehttp\guzzle\src\Middleware.php(66): GuzzleHttp\Exception\RequestException::create(Object(GuzzleHttp\Psr7\Request), Object(GuzzleHttp\Psr7\Response)) #1 D:\home\site\wwwroot\wp-content\plugins\application-insights\vendor\guzzlehttp\promises\src\Promise.php(203): GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object(GuzzleHttp\Psr7\Response)) #2 D:\home\site\wwwroot\wp-content\plugins\application-insights\vendor\guzzlehttp\promises\src\Promise.php(156): GuzzleHttp\Promise\Promise::callHandler(1, Object(GuzzleHttp\P in D:\home\site\wwwroot\wp-content\plugins\application-insights\vendor\guzzlehttp\guzzle\src\Exception\RequestException.php on line 113