ASP.NET Core 1.0 High Performance - Softcover

Singleton, James

 
9781785881893: ASP.NET Core 1.0 High Performance

Synopsis

Key Features

  • Learn the importance of measuring, profiling, and locating the most impactful problems
  • Discover the common areas you might encounter performance problems and areas you don't need to worry about
  • Understand the differences between development workstations and production infrastructure and how these can amplify problems
  • Design workflows that run asynchronously and are resilient to transient performance issues

Book Description

ASP.NET Core is the new, open source, and cross-platform, web-application framework from Microsoft. It's a stripped down version of ASP.NET that's lightweight and fast. This book will show you how to make your web apps deliver high performance when using it.

We'll address many performance improvement techniques from both a general web standpoint and from a C#, ASP.NET Core, and .NET Core perspective. This includes delving into the latest frameworks and demonstrating software design patterns that improve performance.

We will highlight common performance pitfalls, which can often occur unnoticed on developer workstations, along with strategies to detect and resolve these issues early. By understanding and addressing challenges upfront, you can avoid nasty surprises when it comes to deployment time.

We will introduce performance improvements along with the trade-offs that they entail. We will strike a balance between premature optimization and inefficient code by taking a scientific- and evidence-based approach. We'll remain pragmatic by focusing on the big problems.

By reading this book, you'll learn what problems can occur when web applications are deployed at scale and know how to avoid or mitigate these issues. You'll gain experience of how to write high-performance applications without having to learn about issues the hard way.

You'll see what's new in ASP.NET Core, why it's been rebuilt from the ground up, and what this means for performance. You will understand how you can now develop on and deploy to Windows, Mac OS X, and Linux using cross-platform tools, such as Visual Studio Code.

What you will learn

  • Why performance matters and when it should be considered
  • Use different tools to measure performance
  • Spot common performance issues for different types of applications, their root causes, and how to easily mitigate some of the simple ones
  • Improve performance at the network level and I/O level, and how to optimize the application as a whole
  • Work with caching and message queuing tools, and patterns and strategies to apply at various levels of abstraction
  • See the dark side of performance improving technologies and find out how to manage complexity
  • Monitor performance as part of continuous integration and regression testing
  • Assess and solve performance issues and educate yourself on other available advanced technology to enhance the working of your application

"synopsis" may belong to another edition of this title.

About the Author

James Singleton is a British software developer, engineer, and entrepreneur, who has been writing code since the days of the BBC Micro. He is formally trained in electrical and electronic engineering, yet he has worked professionally in .NET software development for nearly a decade.

He is active in the London start-up community, and he helps organize Cleanweb London events for environmentally conscious technologists. He runs Cleanweb Jobs, which aims to help get developers, engineers, managers, and data scientists into roles that can help tackle climate change and other environmental problems. He also does public speaking, and he has presented talks at many local user groups, including at the Hacker News London meet up.

James holds a first class degree (with honours) in electronic engineering with computing, and he has designed and built his own basic microprocessor on an FPGA along with a custom instruction set to run on it. He is also a Science, Technology, Engineering, and Mathematics (STEM) ambassador, who encourages young people to study these fields.

James contributes to, and he is influenced by, many open source projects, and he regularly uses alternative technologies, such as Python, Ruby, and Linux. He is enthusiastic about the direction that Microsoft is taking .NET, and their embracing of open source practices.

He is particularly interested in hardware, environmental, and digital rights projects, and he is keen on security, compression, and algorithms. When not hacking on code or writing for books and magazines, he enjoys walking, skiing, rock climbing, travelling, brewing, and craft beer.

James gained varied skills from working in many diverse industries and roles from high performance stock exchanges to video-encoding systems. He has worked as a business analyst, consultant, tester, developer, and technical architect. He has a wide range of knowledge, gained from big corporates to start-ups and a lot of places in between. He has first-hand experience of the best and worst ways of building high-performance software.

You can read his blog at unop.uk.

"About this title" may belong to another edition of this title.