Index
A
- ADO.NET
- about / Introduction
- overview / Overview of ADO.NET
- bulk copy / ADO.NET bulk copy
- Amdahls law / Simplified grid computing
- APM
- Delegate / Asynchronous Programming Model (APM)
- about / Asynchronous Programming Model (APM)
- AppDomains
- working with / Working with AppDomains
- IDisposable interface / IDisposable interface
- AppFabric Cache / Performance concerns, Caching, when and where
- about / AppFabric Cache
- URL / AppFabric Cache
- Application Lifecycle Management (ALM) / Test and Continuous Integration
- ASP.NET MVC
- about / Model-View-Controller and ASP.NET MVC
- performance concerns / Performance concerns
- AsParallel() method / Partitions
- async/await pattern
- about / Async/await
- URL / Async/await
- asynchronous programming
- async method / Async/await
B
- background thread / Threading
- batch mode / Collection tuning
- Big Data
- about / What is big data?
- URL / What is big data?
- solutions, architecting / Architecting big data solutions
- Automotive Big Data system / Case study – automotive big data system
- Worker Role / Case study – automotive big data system
- Data Purge Engine / Case study – automotive big data system
- Missing Device Notifier / Case study – automotive big data system
- End-User Data Extractor / Case study – automotive big data system
- AppFabric cache / Case study – automotive big data system
- Redis cache engine / Case study – automotive big data system
- lookup programming / Lookup programming
- Big Data, Microsoft Azure for
- about / Microsoft Azure for big data
- Service Bus Topic / Service Bus Topic
- AppFabric Cache / AppFabric Cache
- Redis Cache / Redis Cache
- BigInteger data type
- about / BigInteger
- performance, evaluating / BigInteger
- BizTalk ESB Toolkit / Service discoverability
- BizTalk Server / Service discoverability
- BLOB storage / Architecting cloud web applications
- Bulk Insert
- URL / ADO.NET bulk copy
- business-to-business (B2B) / Performance concerns
- business-to-consumer (B2C) / Performance concerns
C
- C# / Object-oriented design principles
- chunk partitioning / Partitions
- class of applications
- about / Class of applications
- performance aspects, of desktop application / Case study: performance aspects of a desktop application
- performance aspects, of mobile application / Case study: performance aspects of a mobile application
- performance aspects, of server application / Case study: performance aspects of a server application
- performance concerns / Performance concerns as time changes
- ClickOnce
- CloudService deployment / Architecting cloud web applications
- CLR
- about / Introduction to CLR
- code-first architecture / An overview of Entity Framework
- Code Access Security (CAS) / Working with AppDomains
- collect / Garbage collection
- Common Intermediate Language (CIL) / Introduction to CLR
- Common Language Runtime (CLR) / Object-oriented design principles
- Common Language Specification (CLS) / Exception handling
- Common Object Request Broker Architecture (CORBA) / Performance concerns
- contract programming / Layered architecture
D
- DataAnnotation / An overview of Entity Framework
- database-first architecture / An overview of Entity Framework
- data definition language (DDL) / Overview of ADO.NET
- data manipulation language (DML) / Overview of ADO.NET
- data mapper pattern / Performance concerns
- data parallelism
- about / Parallel programming, Data parallelism
- TPL, using / Data parallelism with TPL
- data parallelism, with PLINQ
- about / Data parallelism with PLINQ
- partitioning optimization / Partitioning optimization
- data parallelism, with TPL
- about / Data parallelism with TPL
- ThreadPool, tuning / ThreadPool tuning
- parallel execution abortion / Parallel execution abortion
- partitions / Partitions
- parallel programming, sliding / Sliding parallel programming
- Data Transfer Object (DTO) pattern / Performance thoughts
- data transfer object (DTO) pattern / Layered architecture
- data types
- performance, evaluating / Evaluating the performance of data types
- Decimal datatype / Evaluating the performance of data types
- BigInteger / BigInteger
- half-precision data type / Half-precision data type
- DBMS / Performance concerns about architecture
- deadlock state
- about / Drawbacks of locks
- URL / Drawbacks of locks
- Decimal datatype
- about / Evaluating the performance of data types
- reference / Evaluating the performance of data types
- decorator pattern / An overview of Entity Framework
- Delegate class / Asynchronous Programming Model (APM)
- Delegate object / Task parallelism
- Dependency Injection (DI) / The dependency inversion principle
- dependency inversion principle / The dependency inversion principle
- design-by-contract programming
- about / Layered architecture
- URL / Layered architecture
- designs and architectures
- about / Common designs and architectures
- layered architecture / Layered architecture
- Model-View-Controller (MVC) / Model-View-Controller and ASP.NET MVC
- ASP.NET MVC / Model-View-Controller and ASP.NET MVC
- Model-View-ViewModel (MVVM) / Model-View-ViewModel and XAML
- eXtensible Application Markup Language (XAML) / Model-View-ViewModel and XAML
- 3-tier architecture / The 3-tier architecture
- Service-Oriented Architecture (SOA) / Service-Oriented Architecture (SOA)
- performance concerns / Performance concerns
- Dispatcher class / Task UI synchronization
- distributed computing
- about / Distributed computing
- URL / Distributed computing
- domain-driven design (DDD) / An overview of Entity Framework
- dynamic analysis / Static program analysis
- dynamic partitioning
- example, URL / Partitions
E
- eager loading
- about / Querying approaches
- pros / Performance thoughts
- cons / Performance thoughts
- Entity Framework / Performance concerns
- Entity Framework (EF)
- overview / An overview of Entity Framework
- advanced querying / Advanced querying
- querying optimization / Entity Framework querying optimization
- performance consideration, URL / Querying execution lifecycle
- persistence optimization / Entity Framework persistence optimization
- ETL (Extract, Transform, Load) / Stream-like querying
- Event-based Asynchronous Pattern (EAP) / Event-based Asynchronous Pattern (EAP)
- exception handling / Exception handling
- eXtensible Application Markup Language (XAML) / Model-View-ViewModel and XAML
- Extension methods / Integrated querying with LINQ
F
- First In First Out (FIFO) / Architecting cloud web applications
- foreground thread / Threading
- Fourier transform case study
- about / Case study: Fourier transform
- rolling average / Rolling average
- low-pass filtering, for audio / Low-pass filtering for Audio
- framework performance
- comparing / Performance comparison
- stream-like querying / Stream-like querying
- FromAsync method
- URL / Task creation
G
- GC
- about / Garbage collection
- large object heap (LOH) / Large object heap
- collection tuning / Collection tuning
- URL / Collection tuning
- Geographic Information System (GIS) / Simplified grid computing
- Graphics Device Interface (GDI) / Performance concerns
- Graphics Processing Unit (GPU) / Performance concerns
- grid computing / Grid computing
- URL / Grid computing
- about / Simplified grid computing
H
- half-precision data type
- about / Half-precision data type
- performance, evaluating / Half-precision data type
I
- IaaS / Distributed computing
- IBM 5100 / Efficiency
- Infrastructure as a Service (IaaS) / Performance concerns about architecture
- instrumentation profiling
- about / Instrumentation profiling
- integrated querying
- LINQ, using / Integrated querying with LINQ
- integration test / The Integration test
- Intellisense / Integrated querying with LINQ
- interactive (or concurrent) mode / Collection tuning
- interface segregation principle / The interface segregation principle
- Interlocked / Multithreading synchronization
- Intermediate Language (IL) / Introduction to CLR
- Inversion of Control (IoC) / The dependency inversion principle, Inversion of Control (IoC)
J
- Just-in-Time (JIT) / Introduction to CLR
L
- large object heap (LOH) / Large object heap
- layer / Common designs and architectures
- layered architecture
- about / Layered architecture
- performance concerns / Performance concerns
- lazy loading
- about / Querying approaches
- pros / Performance thoughts
- cons / Performance thoughts
- Lazy Load pattern / Performance thoughts
- line-of-business (LoB) / Architecting desktop applications
- LINQ
- used, for integrated querying / Integrated querying with LINQ
- URL / Integrated querying with LINQ
- LINQ framework / PLINQ everywhere
- LINQ to Entities (LINQ) / Advanced querying
- Liskov substitution principle / The Liskov substitution principle
- livelock
- about / Drawbacks of locks
- URL / Drawbacks of locks
- low-pass filtering
- about / Low-pass filtering for Audio
M
- managed heap / Memory management
- managed stack / Memory management
- memory management
- about / Memory management
- memory leak issue / Memory management
- memory corruption issue / Memory management
- URL / Memory management
- Microsoft® Azure / Distributed computing
- model-first architecture / An overview of Entity Framework
- Model-View-Controller (MVC)
- about / Software architecture, Model-View-Controller and ASP.NET MVC
- performance concerns / Performance concerns
- Model-View-Presenter (MVP)
- Model-View-ViewModel (MVVM)
- about / Software architecture, Model-View-ViewModel and XAML
- performance concerns / Performance concerns
- MSDN
- URL / Partitions, Code metrics
- multithreaded programming / Multithreaded programming
- multithreading (MT) / Parallel programming
- multithreading synchronization
- about / Multithreading synchronization
- URL / Multithreading synchronization
- locks / Locks
- locks, signaling / Signaling locks
N
- .NET
- reference / Half-precision data type
- .NET Remoting API / Performance concerns
- n-tier architecture / Distributed computing
- NAudio
- about / Low-pass filtering for Audio
O
- object-oriented design principles
- about / Object-oriented design principles
- single responsibility principle / The single responsibility principle
- open-closed principle / The open-closed principle
- Liskov substitution principle / The Liskov substitution principle
- interface segregation principle / The interface segregation principle
- dependency inversion principle / The dependency inversion principle
- object-oriented programming (OOP)
- about / Object-oriented design principles
- encapsulation / Object-oriented design principles
- inheritance / Object-oriented design principles
- polymorphism / Object-oriented design principles
- object-relational mapping (OR/M) / Performance concerns about architecture
- open-closed principle / The open-closed principle
P
- Parallel.ForEach method / Data parallelism with TPL
- parallel programming / Parallel programming
- task parallelism / Parallel programming, Task parallelism
- data parallelism / Parallel programming, Data parallelism
- partitions / Partitions
- performance
- about / Understanding performance
- as requirement / Performance as a requirement
- functional requirement / Performance as a requirement
- non-functional requirement / Performance as a requirement
- engineering / Performance engineering
- aspects / Performance aspects
- performance, data types
- evaluating / Evaluating the performance of data types
- performance aspects
- about / Performance aspects
- latency / Latency
- throughput / Throughput
- resource usage / Resource usage
- availability/reliability / Availability/reliability
- scalability / Scalability
- efficiency / Efficiency
- of desktop application / Case study: performance aspects of a desktop application
- of mobile application / Case study: performance aspects of a mobile application
- of server application / Case study: performance aspects of a server application
- performance concerns
- of software architecture / Performance concerns about architecture
- performance considerations
- about / Performance considerations
- data, caching / Caching, when and where
- PLINQ / PLINQ everywhere
- Inversion of Control (IoC) / Inversion of Control (IoC)
- lazy loading / Lazy loading
- reusability of code / Reusability of code
- agnostic, versus idiom-powered implementation / Agnostic versus idiom-powered implementation
- short coding / Short coding
- remote computation / Remote computation
- cloud, versus on-premise applications / Cloud versus on-premise applications
- performance per watt / Efficiency
- persistence points
- about / Simplified grid computing
- platform architectures
- about / Common platform architectures
- desktop applications, architecting / Architecting desktop applications
- mobile applications, architecting / Architecting mobile applications
- web applications, architecting / Architecting web applications
- cloud web applications, architecting / Architecting cloud web applications
- Platform as a Service (PaaS) / Performance concerns about architecture
- PLINQ
- using, with data parallelism / Data parallelism with PLINQ
- PLINQ (LINQ + TPL) / PLINQ everywhere
- presentation tier, 3-tier architecture / The 3-tier architecture
- profiling
- software profiling / Software profiling
- about / Software profiling
- with Visual Studio / Profiling with Visual Studio
- instrumentation profiling / Instrumentation profiling
- report comparison / The analysis report comparison
Q
- querying approaches
- about / Querying approaches
- lazy loading / Querying approaches
- eager loading / Querying approaches
- performance analysis / Performance thoughts
- querying optimization, Entity Framework (EF)
- about / Entity Framework querying optimization
- execution lifecycle, querying / Querying execution lifecycle
- approaches / Querying approaches
R
- race condition / Drawbacks of locks
- range partitioning / Partitions
- Rapid Application Development (RAD) / Performance concerns
- real-time applications
- about / Real-time applications
- testing / Real-time applications
- real-time computing
- about / Real-time applications
- reference / Real-time applications
- Redis Cache
- about / Redis Cache
- URL / Redis Cache
- report comparison
- about / The analysis report comparison
- Reporting Database pattern
- request-reply pattern / Layered architecture
- resource starvation
- URL / Drawbacks of locks
S
- Service-Oriented Architecture (SOA)
- about / Service-Oriented Architecture (SOA)
- standardized service contract / Standardized service contract
- service loose coupling / Service loose coupling
- service abstraction / Service abstraction
- service reusability / Service reusability
- service autonomy / Service autonomy
- service statelessness / Service statelessness
- service discoverability / Service discoverability
- service composability / Service composability
- Service Bus Topic
- about / Service Bus Topic
- URL / Service Bus Topic
- set / Data parallelism
- set theory / Data parallelism
- shaped query
- pros / Performance thoughts
- cons / Performance thoughts
- short coding
- about / Short coding
- URL / Short coding
- Simple Object Access Protocol (SOAP) / Performance concerns
- single responsibility principle / The single responsibility principle
- Single Thread Apartment (STA) / Task UI synchronization
- sliding processing
- about / Sliding processing
- example / Sliding processing
- SLOC
- URL / Code metrics
- Small office Home office (SoHo) / Performance concerns
- software architecture
- about / Software architecture
- performance concerns / Performance concerns about architecture
- comparing / Architecture comparison
- software design / Performance as a requirement
- software metrics
- URL / Code metrics
- software profiling
- about / Software profiling
- SOLID
- speculative execution / Task parallelism with TPL
- SQL Management Studio / Overview of ADO.NET
- starvation / Drawbacks of locks
- static program analysis
- about / Static program analysis
- URL / Static program analysis
- code analysis / Code analysis
- code metrics / Code metrics
- system architecture / Performance as a requirement, Common designs and architectures
T
- 3-tier architecture / Distributed computing
- about / The 3-tier architecture
- performance concerns / Performance concerns
- TAP
- about / Task-based Asynchronous Pattern (TAP)
- task creation / Task creation
- task synchronization / Task synchronization
- task exception handling / Task exception handling
- task cancellation / Task cancellation
- task continuation / Task continuation
- task factories / Task factories
- Task.Factory.StartNew method / Task synchronization
- Task.Run method / Task creation, Task synchronization
- Task.WhenAll method / Async/await
- Task Based Asynchronous Pattern (TAP) / Task parallelism
- TaskFactory class / Task creation
- task parallelism
- about / Parallel programming, Task parallelism
- TPL, using / Task parallelism with TPL
- Task Parallel Library (TPL) / PLINQ everywhere, Signaling locks, Task cancellation
- task UI synchronization
- about / Task UI synchronization
- TcpBinding / Working with AppDomains
- Team Foundation Server (TFS) / Test and Continuous Integration
- technique
- overview / Technical overview
- multithreaded programming / Multithreaded programming
- parallel programming / Parallel programming
- distributed computing / Distributed computing
- grid computing / Grid computing
- Test-driven development (TDD) / TDD
- threading / Threading
- Thread Stack / Memory management
- tier / Common designs and architectures
- TPL
- using, with task parallelism / Task parallelism with TPL
- using, with data parallelism / Data parallelism with TPL
U
- Unit of Work pattern / An overview of Entity Framework
- Universal Apps project / Architecting mobile applications
V
- Visual Studio
- profiling with / Profiling with Visual Studio
- Visual Studio 2013, testing with
- about / Testing with Visual Studio 2013
- integration test / The Integration test
- performance related tests / Performance-related tests
- load test / Performance-related tests
- stress test / Performance-related tests
- Test-driven development (TDD) / TDD
- Test and Continuous Integration / Test and Continuous Integration
W
- WaitHandle class / Asynchronous Programming Model (APM)
- Web Forms / Software architecture
- Wide Area Network (WAN) / Grid computing
- Windows Communication Foundation (WCF) / Performance concerns
- Windows Presentation Foundation (WPF) / Performance concerns as time changes
- WPF Performance Suite
X
- XAML
- performance concerns / Performance concerns