|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/discovering-backend-bottlenecks-unlocking-peak-performance/
课程评论:没有评论
Coursera 课程《后端性能故障排除》课程总结 本课程旨在帮助开发者和工程师深入理解并诊断后端应用程序的性能问题。课程强调,后端性能不仅取决于应用逻辑,还受到网络、连接建立、安全、后端通信、协议序列化、中间件等多种因素的影响。 **课程核心内容:** * **超越代码的视角:** 课程重点介绍在无法访问源代码或调试复杂应用耗时过长的情况下,如何通过“黑盒测试”方法来分析后端性能。 * **实用工具介绍:** * **浏览器开发者工具 (DevTools):** 用于检查 Web 应用程序的流量,从中获取大量关于应用行为的信息。 * **MITM Proxy:** 演示如何使用中间人代理来拦截和记录 HTTP 流量,从而识别导致问题的请求。 * **tcpdump 和 Wireshark:** 介绍如何捕获和分析低级数据包,以应对非 HTTP 协议的性能问题。 * **适用人群:** 课程面向已构建过后端和前端应用程序,并希望提升技能的开发者和工程师。 * **课程级别:** 中高级。 * **前提知识:** 建议学习者具备网络基础知识和后端开发基础。 本课程将提供一套实用的工具和方法论,使学习者能够在不深入代码的情况下,有效地定位和解决后端性能瓶颈。
I used to think that performance of the backend depends on the application logic itself. However, there are many other factors that play a role in overall quality and performance of the application. Networking, connection establishment, security, backend communication, protocol serialization, intermediaries and much more.Often debugging the app if you have the source code allows the developer to zone in to the problem and identify it, However most of the time as an engineer you either don't have access to the source code or its time consuming to debug a complex app. That is why in this course I present you with some tools I use to analyze the backend application performance and provide a good guess and what might be the problem without stepping in the code. Often known as black box testing.If your application is a web application that is consumable through a browser, devtools allow us to pretty much inspect all traffic going out from the app and can tell us so much about the app. If the app is not available in the browser we will then demonstrate MITM proxy which is a proxy that intercepts HTTP traffic and log it, this way we can inspect requests and see which of those are the culprit. Finally, if the app uses a protocol that isn't HTTP intercepting it with a proxy becomes little tricky, so we will use both tcpdump and Wireshark to capture low level packets and see our requests this way.This course is designed for developers and engineers who have built backend and frontend applications and would like to take their skills further. This course is intermediate to advanced and it is recommended that students have a background in networking and backend fundamentals both of which I have courses for.