sfeldman.NET
.NET, code, personal thoughts
-
Azure Functions
When Azure Functions were announced at the Build2016 conference, I had to see what is it. Part of my curiosity was fueled by the same thought I had for WebJobs when those where announced first. To be more specific, an alternative hosting environment for NServiceBus in the Azure cloud. I'll share my personal conclusions in a little bit. However, first, what are Azure Functions?
-
Choosing Topology with Azure Service Bus
Last week at the Calgary .NET usergroup presentation on Azure Service Bus I was talking about different options the services provides. Along with that, have also noted the quotas and limits subject to tier and usage. There were good questions asked, and one of those question I'd like to highlight here - choosing what topology to use with Azure Service Bus.
-
Azure Service Bus - Number of Messages in a Single Transaction
Azure Service Bus will not accept a transaction with more than a 100 messages. Not even if you send a batch. It is still a subject to the maximum 100 messages. If you try to send more, the exception "Cannot send more than 100 messages in a single transaction." will be upon you.
-
Azure Service Bus - OnMessage API
When it comes to receiving messages with ASB, there are plenty of options:
-
EventProcessorHost Inject Dependencies
Processing with Azure EventHubs can be significantly simplified if using
EventProcessorHost
. EventProcessorHost is using Azure Storage account to track last read locations (pointers) in event hub partitions. -
Reducing Comments Clutter with GitHub Reactions
Last week GitHub has introduced what seems like a small feature, but a huge comments de-clutter if you ask me: reactions. I've been using Slack for quite a while and among the feature that slack has had for a while was reactions for comments. From the UI perspective, reactions allow to provide the needed feedback w/o taking too much of the vertical space.
-
Azure Service Bus - NoMatchingSubscriptionException
Azure Service Bus has a rich pub/sub mechanism supporting multiple options.
-
ServiceBus Explorer tool
Tooling is an important part of the development experience. No matter how good a service you're using is, if there are no decent tools, you always have that disgruntled feeling about the entire experience. When developing against hosted services, tools are either coming from the service provider or a third party.
-
Elvis Operator to the Rescue
Null-Conditional Operator in C# 6 (
?.
), also known as "Elvis" operator, has allowed compacting code by removing boilerplate code for a null check to avoidNullReferenceException
. But there's more to that than just a null check. I've run into a case where Elvis operator also removed need for an extra code to implement a Decorator pattern, which resulted in removing complexity. Here's the original code implemented using Decorator pattern: -
Azure and Open Source Software
Not so long ago Microsoft made a deliberate choice to play the OSS game, and it was quite a welcomed change. Rome wasn't built in a day. So it this initiative. It's a long and bumpy way. Along the way we all, maintainers and contributors, learn along.