Thread pool is a core concept in multithreaded programming which, simply put, represents a collection of idle threads that can be used to execute tasks. First, let’s outline a frame of reference for multithreading and why we may need to use a thread pool. A thread is an execution context that can run a set of instructions within a process – …
Prefix New Release: Prefix v3.0 is Here!
After months of hard work, we’re thrilled to release the latest version of Prefix, Prefix v3.0. In this new version, we fixed a number of bugs and added a few major enhancements including: A major .NET profiler update Better remote tracing New feature: the ability to disable suggestions Improved Remote Tracing with Prefix v3.0 One of Prefix’s key features has …
Understanding & Profiling C# Async Await Tasks
Microsoft and the .NET community have made asynchronous programming very easy with their implementation of async await in C#. The latest versions of ASP.NET heavily utilize it to improve performance. Many performance monitoring and profiling tools struggle to support and visualize the performance of asynchronous C# code. Stackify’s Prefix & Retrace products both have excellent support for applications using C# async await. …
Transaction tracing helps developers optimize their code as they write it
The best time for developers to optimize their code is while they are writing it. Developers can leverage the detailed transaction tracing available from APM type tools, like Prefix, as a fast feedback loop to understand what their code is doing and how long it takes. Prefix works as an ASP.NET profiler and also works with several common JVMs for …
Essential Application Profiling Tools to Find Bugs in Your Code
Developers love tools, and they tend to use a lot of them. Many of them are such a normal part of our daily lives and toolchain that we don’t even think of them as tools anymore. Your computer, the Internet, a simple text editor, and source code repositories are a good example of this. They are just fundamental things we …
Prefix: A lightweight ASP.NET profiler helping you write better software
Of all the modern development practices which I use day to day, none other has been more beneficial to me than the introduction of quick feedback loops in my workflow. Although a concept made popular by the Agile methodology and practices, it’s something most of us deal with when we invoke the compiler (or linter) which tells us if our …
The Best Log Viewer for Developers in the Universe
It is hard for developers to imagine troubleshooting applications problems without debug logging. When all else fails and you can’t figure out what your code is doing, our answer is to always add more logging. But unfortunately, log files can a spaghetti style mess thanks to lots of web requests happening at a single time. Prefix can organize your logging …
How to track the performance of any method in your code with Prefix
Prefix is a lightweight profiler for .NET and Java developers. It enables developers to easily see what their code is doing. Including SQL queries, HTTP calls, errors, logs, and much more. Because it is a profiler, it can also be customized to track any method in your code or third party libraries! In this article we explore why that is useful …
Debugging Windows Services with Prefix
Prefix enables developers to easily see what their code is doing as they write and test their code, including SQL queries, HTTP calls, errors, logs, and much more. Prefix is most often used with web applications, but .NET Windows Services are also supported. This article discusses how to use Prefix with a Windows Service or console application. Learn more about …
Finding Hidden Exceptions in Your Application with Prefix
Prefix enables developers to easily see what their code is doing as they write and test their code, including SQL queries, HTTP calls, errors, logs, and much more. One of the best features of Prefix is its ability to see all of the exceptions that are occurring in your code. There are 3 types of exceptions: Unhandled – the user got a …
How to Use Prefix to Troubleshoot Remote HTTP Calls
Prefix enables to developers to easily see what their code is doing. Including SQL calls, errors, logs, and much more. One of the key features is tracking remote HTTP calls to know if they worked, how long they took, etc. Viewing what the code did on a remote server takes it one step further to simplify the daily life of …
Getting to Production Faster – With More Confidence
“I want to spend less time in QA, but I still want to go to production with full confidence in the release. The more time we spend in QA, the more time we waste – we just can’t expect to catch everything in testing, our product is too complex and our QA team is too small. Can you guys help …
How we named Prefix: It was a little hairy
Naming things is hard—unless it’s a dog or a kid. That’s easy (apparently)! A brand or product name is a totally different kind of anxiety. Creating the product is comparatively easy. This is the story of the name that almost won, how it came to be, and how it continues to live exactly where it should—in the dark recesses of our code. …
Why Calling a Web Service Takes Longer Than You Think
There are a lot of ways to make a web service or web request in .NET. Common libraries include HttpClient, WebClient, WCF generated clients, RestSharp, and, of course, your low-level HttpWebRequest/HttpWebResponse objects. If you want to track the true performance and amount of time it takes to make such a request, you need to understand all the steps involved in …
How to use Prefix to profile your own custom code
Today’s desktops and servers are amazingly fast. For most developers and apps, their actual code takes nearly ZERO time to execute. Almost all of the time is spent executing a database query, connecting to web service, etc. This is also why asynchronous programming is so important and has become so popular. Our goal with Prefix and the Stackify APM is …
Prefix vs Glimpse: SQL Queries
This article is meant to illustrate a high-level comparison of how Prefix and Glimpse track SQL queries. While the two tools are similar (they’re both designed to help us understand different elements of our code’s performance) the two products have some unique pros and cons. Here’s a comparison based on our own experience with both tools. How to enable Glimpse …
How to Measure Real World SQL Query Performance for ASP.NET
Almost every ASP.NET application uses some sort of database. But from my experience, the reporting of how long SQL queries take is wildly inaccurate. In this article I’m going to explain why, and show you how you can see the real amount of time that your queries take. This article is really specific to Microsoft SQL Server but the principle …
Understanding ASP.NET Performance for Reading Incoming Data
Receiving incoming data in an ASP.NET application is a common task that most apps do. There are lots of ways of receiving data. Developers commonly write apps to handle HTML forms, file uploads, and APIs. There are a lot different types of APIs and they can receive data in JSON, XML, or other formats via ASP.NET Web API, MVC, WCF, …
Prefix Tips and Tricks
We’ve been getting some great feedback about our new Prefix tool. If you haven’t downloaded it yet, get it here. We’ve been using this tool as we build our Stackify product and want to share a few Prefix tips and tricks that you may or may not have picked up as you are using it. Watch the video for step-by-step detail. We’ve summarized …
Websites Every Developer Should Visit: Programming News, Tutorials & More
In every industry, there are at least a handful of experts considered authorities on the subject. Most have a blog or website, making them the premier trusted resources industry-wide. You’ll usually find a community where all professionals turn to when they need to converse with like-minded professionals. The same holds true in the world of development. Developers are such a …