Выбор темы тренинга Саши Гольдштейна по производительности .NET В один из смежных с DotNext 2017 Moscow дней мы планируем провести отдельный performance-тренинг Саши Гольдштейна на целый день. Тренинги будут проходить на английском языке. Тренинг будет оплачиваться отдельно от конференции DotNext.Помогите нам понять, какую (или какие?) из доступных тем выбрать. Выберите тренинг, на который вы хотели бы пойти. Question Title * 1. Выберите один тренинг, на который вы бы пошли: SENIOR LEVEL: Production Performance and Troubleshooting of .NET ApplicationsModern applications are extremely complex, and with complexity come difficulties in diagnosing performance issues, memory leaks, crashes, and other problems that might manifest only in the production environment. In this workshop, we will review the tools, libraries, and best practices for setting up your production monitoring and diagnostic environment. Through a series of detailed hands-on labs, you will learn how to measure performance in a production environment without interrupting operations, how to automatically diagnose and detect the root cause of crashes and memory leaks, how to identify and display specific objects in memory without suspending or modifying the application code, and how to set up alerts for performance issues.Topics:– Requirements for production monitoring and diagnostics– The USE (Utilization, Saturation, Errors) performance method and checklist– Continuous performance monitoring using Windows performance counters– Configuring performance counter alerts– Event Tracing for Windows and related tools (PerfView, WPR, WPA, etrace)– Collecting ETW traces on-demand and continuously with memory buffers– Diagnosing high-CPU and high-memory spikes– Collecting and comparing heap snapshots for memory leak analysis– Dump files and dump file types– Collecting dumps automatically for crashes or extreme leaks– Basic dump file analysis with Visual Studio and WinDbg– Automatic dump analysis with the CLRMD library and related tools (msos, PerfView)– Using CLRMD for live process diagnostics SENIOR LEVEL: Making .NET Applications Faster with ETW.Event Tracing for Windows (ETW) has been on the scene for several years, but it is only recently that is has become so popular for performance monitoring in production and development environments. Today, .NET developers can use freely available tools with a minimal performance overhead to monitor their application performance: CPU utilization, blocked threads, memory usage, and garbage collection metrics. In this workshop we will explore the rich world of ETW through free tools such as the Windows Performance Toolkit and PerfView. We will also see how to produce ETW logs from .NET applications, push them to custom ETW sinks (including ElasticSearch and Azure Storage), and monitor ETW data in real-time from .NET code. This workshop includes labs in which you will practice performance measurement and diagnostic techniques.Topics:– Challenges in production performance diagnostics– Traditional profilers vs. Event Tracing for Windows– ETW roles and components– Using ETW as a diagnostics log framework with TraceEvent and Semantic Logging Application Block– Pushing ETW logs to ElasticSearch and other storage engines– Tools for ETW recording and analysis: WPR, WPA, PerfView, etrace– Diagnosing high CPU and blocked time issues– Diagnosing slow I/O, application startup, and system boot issues– Diagnosing high GC and memory traffic issues– Diagnosing memory leaks with compact heap snapshots and dump files MIDDLE LEVEL: Mastering .NET Performance ToolsEveryone wants their application to be as fast as possible, but a methodical approach is required to truly make a difference in the right places. In this workshop we will review the modern tools .NET developers should use to measure, improve, compare, and monitor the performance of their application at development-time and in production. Before we dive into the tools, we'll discuss a methodical approach for performance optimization that includes finding the congested resource, developing benchmarks if necessary, and setting up a performance regression environment. We will look at sampling and instrumentation-based profilers for diagnosing high-CPU and blocked threads, tools for diagnosing high memory traffic and excessive garbage collection, memory profilers for figuring out what's keeping objects alive and causing a memory leak, and monitoring tools that can run in the background and report on performance problems. Each topic will be accompanied by a short hands-on lab where you'll get to experience the tools first-hand.Topics:– Methodical approach for performance optimization– Finding the bottleneck with the USE (Utilization, Saturation, Errors) method– Micro-benchmarking with BenchmarkDotNet– Setting up a performance test with Visual Studio– Sampling and instrumentation profilers from Microsoft and JetBrains– Concurrency analysis with Visual Studio Concurrency Profiler– Allocation profiling with ETW (PerfView) and .NET Memory Profiler– Heap snapshots and memory leak analysis with .NET Memory Profiler– Continuous monitoring with Windows performance counters and ETW MIDDLE LEVEL: Mastering .NET Debugging with Visual StudioModern debugging is not just stepping through breakpoints in Visual Studio. Debuggers can do much more and if you want to be a productive .NET developer, you need to master their capabilities. During this day, packed with demonstrations and hands-on labs, you will master the power of the Visual Studio debugger – conditional breakpoints, tracepoints, Parallel Stacks, memory snapshots and heap analysis, dump analysis, remote debugging, cloud debugging, and many other topics. We will also discuss related technologies that help debug more effectively in production environments, such as Windows dump files and performance counters. At the end of the day, you will have a variety of techniques to apply to debug your applications more effectively.Topics:– Methodical debugging process– Mastering Visual Studio breakpoints– Visual Studio tool windows for effective multi-threaded debugging: Parallel Stacks, Parallel Tasks, Parallel Watch– Memory diagnostics while debugging– Dump analysis and heap analysis– Remote debugging on a local network– Remote debugging cloud services (on Azure)– Windows dump files and automatic dump generation with – Performance counters and continuous monitoring Ни на какой из перечисленных Question Title * 2. Оставьте ваш email для связи.Мы пришлем на него анонс, если мы решим проводить тренинг, выбранный вами. Готово