万本电子书0元读

万本电子书0元读

顶部广告

ASP.NET Core 1.0 High Performance电子书

售       价:¥

3人正在读 | 0人评论 9.8

作       者:James Singleton

出  版  社:Packt Publishing

出版时间:2016-06-01

字       数:325.5万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Create fast, scalable, and high performance applications with C#, ASP.NET Core 1.0, and MVC 6 About This Book 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 Who This Book Is For This book is for ASP.NET and C# developers who have experience with the MVC framework for web application development and are looking to deploy applications that will perform well in live production environments. These could be virtual machines or hosted by a cloud service provider such as AWS or Azure. What You Will Learn Why performance matters and when it should be considered Use different tools to measure performance Spot common performance issues, their root causes, and how to easily mitigate them 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, including patterns and strategies Discover the dark side of performance improvement and find out how to manage complexity Monitor performance as part of continuous integration and regression testing Assess and solve performance issues with other advanced technologies In Detail 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. Style and approach Starting with a drill down into the nuts and bolts of various performance parameters, you will get an understanding of the ASP.NET MVC 6 framework with the help of rich code-based examples that will equip you to build highly scalable and optimized applications.
目录展开

ASP.NET Core 1.0 High Performance

ASP.NET Core 1.0 High Performance

Credits

Foreword

About the Author

Acknowledgments

About the Reviewer

www.PacktPub.com

eBooks, discount offers, and more

Why subscribe?

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Errata

Piracy

Questions

1. Why Performance Is a Feature

Performance as a feature

Common classes of performance problems

Language considerations

Types of performance problems

When performance matters

Slower is sometimes better

Why issues are missed

Measuring

The benefits of planning ahead

Understanding hardware

Storage access speeds

Scaling approach changes

Tools and costs

Tools

Looking at some alternative tools

The new .NET

Summary

2. Measuring Performance Bottlenecks

Tools

SQL

SQL Server Profiler

Executing a simple query

MiniProfiler

Application profiling

Glimpse

Using Glimpse

IDE

Monitoring HTTP

Browsers

Chrome

Firefox

Fiddler

Network

Microsoft Message Analyzer

Wireshark

Roll your own

Science

Repeatability

Only change one thing

Summary

3. Fixing Common Performance Problems

Latency

Asynchronous operations

Simple asynchronous tools

Background queuing

Hangfire

Select N+1 problems

Efficient paging

Static site generators

Pragmatic solutions with hardware

A desktop example

Web applications

Oversized images

Image resolution

Image format

Summary

4. Addressing Network Performance

Internet protocols

TCP/IP

Slow-start

HTTP

Headers

HTTP methods

Status codes

Encryption

Key exchange

Delay diagnostics

Performance tweaks

HTTP/2

WebSockets

Compression

Lossless compression algorithms

Bundling and minification

Bundling

Minification

Changes in ASP.NET Core

Image optimization

PNG

JPEG

Other image formats

Resizing images

Caching

Browser

Server

Proxy servers between you and your users

CDNs

Summary

5. Optimizing I/O Performance

Input/output

Categories of I/O

Disks

Virtual file systems

Databases

APIs

Network diagnostics tools

Ping

Tracert

Nslookup

Build your own

Solutions

Batching API requests

Efficient DB operations

Database tuning

Reporting

Aggregates

Sampling

Inserting data

GUIDs

Advanced DB topics

Simulation and testing

Summary

6. Understanding Code Execution and Asynchronous Operations

Getting started with the core projects

.NET Core

ASP.NET Core

Kestrel

Data structures

Lists

Dictionaries

Collection benchmarks

Bloom filters

Hashing and checksums

Hashing benchmarks

Serialization

SIMD CPU instructions

Parallel programming

Task Parallel Library

Parallel LINQ

Parallel benchmarking

Parallel programming limitations

Practices to avoid

Reflection

Regular expressions

String concatenation in tight loops

Dynamic typing

Synchronous operations

Exceptions

Summary

7. Learning Caching and Message Queuing

Why caching is hard

Web caching

Caching background

HTTP headers

Cache busting

Service workers

Service worker example

Web and proxy servers

IIS

Varnish

Working with a content delivery network

When not to cache

Application layer caching

Redis

Database result set caching

Message queuing

Coffee shop analogy

Message queuing styles

Common messaging patterns

Unicast

Pub/sub

RabbitMQ

Queuing frameworks and libraries

Summary

8. The Downsides of Performance-Enhancing Tools

Managing complexity

Understanding complexity

Complexity reduction

Frameworks

Architecture

Monolith versus microservices

Architecture comparison

Refactoring

A culture of high performance

A blameless culture

Intellectual dishonesty

Slow down to go faster

From the ground up

Shared values

The price of performance

Distributed debugging

Logging

Error logging

Application Insights

Integrated logging

Centralized logging

Statistics

Managing stale caches

Summary

9. Monitoring Performance Regressions

Profiling and measurement

Testing

Automated testing

Continuous integration

Slow testing

Fixing performance regressions

Load testing

Realism

Realistic environments

Realistic workloads

Feature switching

Experimenting for science

A/B testing

User interface testing

Web UI testing tools

Automating UI performance tests

Staying alert

DevOps

DevOps tooling

Provisioning

Monitoring

Hosting

Summary

10. The Way Ahead

Reviewing what we learned

Further reading

Going native

Processor architecture

Hardware is hard

Machine learning

Big data and MapReduce

Orleans

Custom transports

Advanced hashing

Library and framework support

The future

Summary

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部