강의

멘토링

커뮤니티

BEST
Programming

/

Back-end

Testing backend application performance

This course will provide you with the basic knowledge to perform performance testing and improve the APIs of your own backend applications.

(4.9) 51 reviews

817 learners

  • foo
3시간 만에 완강할 수 있는 강의 ⏰
artillery
성능
stress-testing

Reviews from Early Learners

What you will gain after the course

  • API Performance Testing

  • CS knowledge required for performance testing

I created an API, but do you know how well it performs?

When I think about what's changed most about my work before and after I started developing, it's the way I measure and improve the performance of the applications I've created. When I developed applications on my own, performance wasn't usually an issue because there were only a few users or I was the only one using them. However, in the real world, we deal with a lot of data and generate a lot of traffic, so performance testing became essential.

Even if the functionality is functional, an application with poor performance can ultimately become a point of failure for the entire system and create a poor user experience. After all, no one wants to use a service that takes tens of seconds to load a single list.

This lecture covers how to performance test backend applications to prevent these issues. We'll begin with a background in performance testing, conduct actual performance tests using a performance testing tool called Artillery, and demonstrate a simple performance improvement experience.

In fact, improving performance after performance testing is never simple. It may require streamlining application logic, tuning database queries, or even revising the system design itself. However, all these improvements begin with measuring performance. In this lecture, I hope you'll learn how to measure the performance of your backend applications and then gradually develop ways to improve them. I'll also be developing a future lecture on performance improvement.

Performance test scripts written in class

Example of performance test results

Learn about these things

Background knowledge required for performance testing

This section covers the essentials of performance testing. Starting with latency and throughput, we'll cover the operating system, server resources, network, and database resources you should consider when conducting performance tests.

How to Use Performance Testing Tools

We'll cover how to use a performance testing tool called Artillery . We'll cover how to conduct performance tests, interpret the results, and how to set up scenarios and change parameters to test performance, just like in real-world scenarios.

Simple performance improvement experience

We'll first run performance tests, then refine the same behavior to achieve better performance. Then, we'll figure out why this behavior can be improved.

Things to note before taking the course

Practice environment

  • Operating System and Version (OS): Windows 10

  • Tools used: Intellij Community 2023.2, JDK 17, Node.js 20

Learning Materials

Player Knowledge and Precautions

  • You should have experience developing backend applications. While the examples are written in Java, you should be able to understand the course content without any prior knowledge of Java. If you have any questions about the course content due to your lack of Java knowledge, please leave a comment. :)

  • This lecture will explain the fundamental concepts necessary for performance testing and improvement and provide guidance on how to get started with performance testing. Specific methods for improving performance will be covered in a later lecture.

  • If you have any questions while taking the course, please leave a question. I'll update the information if necessary.

Recommended for
these people

Who is this course right for?

  • People who have created backend applications but have never performed performance tests

  • I've heard that performance testing is needed before service launch, but I don't know where to start.

Need to know before starting?

  • Experience in building backend applications

  • Basic knowledge of Java (not required)

Hello
This is

5,792

Learners

271

Reviews

116

Answers

4.9

Rating

9

Courses

안녕하세요.

멘토링을 하면서 주니어 개발자들이 어려워 하는 개념들에 대해 어떻게 하면 쉽게 전달할 수 있을지에 대해서 많은 고민을 하고 있는 푸(Foo)라고 합니다.

잘 부탁 드리겠습니다.


이력

  • 2019. 08 ~ 현재 : 카카오 자바 백엔드 개발자

  • 2021. 08 ~ 현재 : programmers 백엔드 데브코스 멘토

  • 2021. 12 ~ 현재 : F-Lab 자바 백엔드 멘토

 

  • 이것이 취업을 위한 백엔드 개발이다 with 자바(링크)

 

기타 이력 및 타 플랫폼 강의들은 아래 GitHub 링크에서 확인할 수 있습니다.

GitHub - https://github.com/lleellee0

Curriculum

All

19 lectures ∙ (2hr 53min)

Published: 
Last updated: 

Reviews

All

51 reviews

4.9

51 reviews

  • perfectgame님의 프로필 이미지
    perfectgame

    Reviews 7

    Average Rating 5.0

    5

    78% enrolled

    This lecture is a ray of light for those who want to experience large-scale traffic but cannot. What on earth is the experience of handling large-scale traffic that is considered important in service companies? Or, you can experience it if you go to a service company, but you need to know it to go to a service company. I think this lecture is suitable for those who think, "What should a newbie like me do?" I think it is better because the lecture is set up so that you can see some functions that are not provided if you follow the current Artillery document. A few days ago, I remember an anecdote where a cell manager of a certain company was so well-versed in legacy that he gathered his team members and said, "Now, press F5 to refresh!" and said, "Let's do a traffic test!" I recommend this lecture because I think it can encompass even experienced people who do not have the concept of stress testing.

    • foo
      Instructor

      Thank you, Chae Jong-hoon, for the detailed course review!! I think you appealed to who needs the course better than the course introduction page ㅎㅎ

  • blockelectronicwave님의 프로필 이미지
    blockelectronicwave

    Reviews 19

    Average Rating 5.0

    5

    32% enrolled

    During the technology review process prior to a new project, we were able to quickly perform performance tests without separately setting up nGrinder or JMeter. This saved us time building the test infrastructure.

    • foo
      Instructor

      Thank you, Paprikaman, for leaving a review. :) As you said, I think the strength of artillery is that it can be used to test performance in the simplest way.

  • sjun2918님의 프로필 이미지
    sjun2918

    Reviews 2

    Average Rating 5.0

    5

    100% enrolled

    I'm actually working on a personal project. As the instructor said at the beginning of the lecture, I created an API, but I had doubts about how well my API could perform. That's why this lecture was even more touching, and I think I was able to take my first step toward performance testing easily through this lecture! And I realized that it's more developer-like to say more specific things like 'latency' and 'throughput' instead of just using the vague word 'performance' on my resume! I also liked that I could quickly review my knowledge about the operating system, and I think it was even more stimulating because he gave me gentle advice(?) that hit me in the face every now and then. ㅎㅎ

    • foo
      Instructor

      Thank you, Maengsuhobbang, for your vivid class review. :) It seems like you have learned well the content I wanted to convey in the lecture! I hope you can apply it well to your personal projects~! I will come back with a better lecture. (_ _)

  • jjhgwx님의 프로필 이미지
    jjhgwx

    Reviews 609

    Average Rating 4.9

    5

    16% enrolled

    Thank you for the great lecture! However, the sound seems to be very low. That's a bit inconvenient - would it be possible to adjust the sound much louder??

    • foo
      Instructor

      Thank you for leaving a review, Jang Jaehoon~ I will increase the volume and re-upload it by this weekend! Sorry for the inconvenience with your learning. (_ _)

    • Thank you so much! The class content seems really great!

    • foo
      Instructor

      Thank you. :) I've increased the video volume and re-uploaded it! Please check it out, and have a great holiday~!

  • javython님의 프로필 이미지
    javython

    Reviews 52

    Average Rating 5.0

    5

    100% enrolled

    It's not a lengthy lecture, but it helps you easily understand performance testing. It lays the groundwork for you to study performance testing on your own.

    Limited time deal

    $20,790.00

    30%

    $23.10

    foo's other courses

    Check out other courses by the instructor!