Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
BEST
Programming

/

Back-end

Kiểm tra hiệu suất ứng dụng phụ trợ

Thông qua bài giảng này, bạn có thể có được những kiến ​​thức cơ bản để kiểm thử và cải thiện hiệu suất API của ứng dụng backend mà bạn đã tạo.

(4.9) 47 đánh giá

773 học viên

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

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Kiểm tra hiệu suất API

  • Kiến thức CS cần thiết để kiểm tra hiệu suất

Tôi đã tạo một API, nhưng bạn có biết nó hoạt động tốt như thế nào không?

Khi nghĩ về những thay đổi lớn nhất trong công việc của tôi trước và sau khi bắt đầu phát triển, tôi nhận thấy đó là cách tôi đo lường và cải thiện hiệu suất của các ứng dụng mình đã tạo ra. Khi tôi tự phát triển ứng dụng, hiệu suất thường không phải là vấn đề vì chỉ có một vài người dùng hoặc tôi là người duy nhất sử dụng chúng. Tuy nhiên, trong thế giới thực, chúng ta xử lý rất nhiều dữ liệu và tạo ra rất nhiều lưu lượng truy cập, vì vậy việc kiểm thử hiệu suất trở nên thiết yếu.

Ngay cả khi chức năng hoạt động tốt, một ứng dụng có hiệu suất kém cuối cùng cũng có thể trở thành điểm lỗi cho toàn bộ hệ thống và tạo ra trải nghiệm người dùng kém. Suy cho cùng, không ai muốn sử dụng một dịch vụ mất hàng chục giây để tải một danh sách duy nhất.

Bài giảng này sẽ trình bày cách kiểm tra hiệu năng ứng dụng back-end để ngăn ngừa những vấn đề này. Chúng ta sẽ bắt đầu với kiến thức nền tảng về kiểm tra hiệu năng, tiến hành kiểm tra hiệu năng thực tế bằng công cụ kiểm tra hiệu năng Artillery và trình bày một trải nghiệm cải thiện hiệu năng đơn giản.

Trên thực tế, việc cải thiện hiệu suất sau khi kiểm thử hiệu suất chưa bao giờ là điều đơn giản. Nó có thể đòi hỏi việc tinh giản logic ứng dụng, tinh chỉnh các truy vấn cơ sở dữ liệu, hoặc thậm chí là sửa đổi thiết kế hệ thống. Tuy nhiên, tất cả những cải tiến này đều bắt đầu bằng việc đo lường hiệu suất. Trong bài giảng này, tôi hy vọng bạn sẽ học cách đo lường hiệu suất của các ứng dụng back-end và sau đó dần dần phát triển các phương pháp để cải thiện chúng. Tôi cũng sẽ phát triển một bài giảng trong tương lai về cải thiện hiệu suất.

Các tập lệnh kiểm tra hiệu suất được viết trong lớp

Ví dụ về kết quả kiểm tra hiệu suất

Tìm hiểu về những điều này

Kiến thức nền tảng cần thiết cho thử nghiệm hiệu suất

Phần này trình bày những yếu tố cơ bản của kiểm thử hiệu năng. Bắt đầu với độ trễ và thông lượng, chúng tôi sẽ đề cập đến hệ điều hành, tài nguyên máy chủ, mạng và tài nguyên cơ sở dữ liệu mà bạn nên cân nhắc khi thực hiện kiểm thử hiệu năng.

Cách sử dụng công cụ kiểm tra hiệu suất

Chúng tôi sẽ hướng dẫn cách sử dụng công cụ kiểm tra hiệu suất có tên là Artillery . Chúng tôi sẽ hướng dẫn cách thực hiện kiểm tra hiệu suất, diễn giải kết quả, cách thiết lập kịch bản và thay đổi thông số để kiểm tra hiệu suất, giống như trong các tình huống thực tế.

Trải nghiệm cải thiện hiệu suất đơn giản

Trước tiên, chúng ta sẽ chạy thử nghiệm hiệu suất, sau đó tinh chỉnh hành vi tương tự để đạt hiệu suất tốt hơn. Tiếp theo, chúng ta sẽ tìm hiểu lý do tại sao có thể cải thiện hành vi này.

Những điều cần lưu ý trước khi tham gia khóa học

Môi trường thực hành

  • Hệ điều hành và Phiên bản (OS): Windows 10

  • Công cụ được sử dụng: Intellij Community 2023.2, JDK 17, Node.js 20

Tài liệu học tập

Kiến thức và biện pháp phòng ngừa của người chơi

  • Bạn nên có kinh nghiệm phát triển ứng dụng back-end. Mặc dù các ví dụ được viết bằng Java, bạn vẫn có thể hiểu nội dung khóa học mà không cần kiến thức Java trước đó. Nếu bạn có bất kỳ câu hỏi nào về nội dung khóa học do chưa có kiến thức về Java, vui lòng để lại bình luận. :)

  • Bài giảng này sẽ giải thích các khái niệm cơ bản cần thiết cho việc kiểm thử và cải thiện hiệu suất, đồng thời hướng dẫn cách bắt đầu kiểm thử hiệu suất. Các phương pháp cụ thể để cải thiện hiệu suất sẽ được trình bày trong bài giảng sau.

  • Nếu bạn có bất kỳ thắc mắc nào trong quá trình học, vui lòng để lại câu hỏi. Tôi sẽ cập nhật thông tin nếu cần thiết.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Những người đã tạo ứng dụng phụ trợ nhưng chưa bao giờ thực hiện kiểm tra hiệu năng

  • Những người đã nghe nói rằng kiểm tra hiệu suất là cần thiết trước khi mở một dịch vụ nhưng không biết bắt đầu từ đâu

Cần biết trước khi bắt đầu?

  • Kinh nghiệm tạo ứng dụng backend

  • Kiến thức Java cơ bản (bắt buộc X)

Xin chào
Đây là

5,206

Học viên

220

Đánh giá

104

Trả lời

4.9

Xếp hạng

9

Các khóa học

안녕하세요.

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

잘 부탁 드리겠습니다.


이력

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

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

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

 

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

 

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

GitHub - https://github.com/lleellee0

Chương trình giảng dạy

Tất cả

19 bài giảng ∙ (2giờ 53phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

47 đánh giá

4.9

47 đánh giá

  • 채종훈님의 프로필 이미지
    채종훈

    Đánh giá 7

    Đánh giá trung bình 5.0

    5

    78% đã tham gia

    이 강의는 대규모 트래픽을 경험하고 싶어도 경험할 길이 없는 사람들에게 한 줄기 빛과 같은 강의입니다. 도대체 서비스기업에서 중요시한다는 대규모 트래픽 처리 경험이 뭔데? 라던지 그걸 서비스기업 가야 체험할수 있는데 서비스기업에 가려면 그걸 알아야 한다 나같은 신입은 어쩌라는거냐 라는 생각을 하고 계신 분들에게 적합한 강의라고 생각합니다. 현재 아틸러리 도큐먼트대로 하면 제공되지 않는 일부 기능들을 볼 수 있도록 세팅해놓은 강의라 더 좋다고 생각합니다. 며칠전 모 기업 셀장이라는 분이 너무 레거시에만 통달하신 나머지 팀원들을 모아놓고 트래픽 테스트를 한답시고 지금부터 f5 눌러서 새로고침 하세요! 라고 했다던 일화가 생각나는데 스트레스 테스트 개념이 없는 경력자들까지 아우를 수 있는 강의라고 생각해서 추천합니다.

    • 이준형(Foo)
      Giảng viên

      채종훈님 구체적인 수강평 감사합니다!! 어떤 분들에게 강의가 필요한지 강의 소개페이지 보다 더 잘 어필해주신 것 같네요 ㅎㅎ

  • 전자파차단님의 프로필 이미지
    전자파차단

    Đánh giá 19

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    신규 프로젝트에 앞서 기술검토 과정중에 nGrinder나 JMeter를 별도로 구축하지않고 빠르게 성능테스트를 할 수 있었습니다. 테스트 인프라 구축 시간을 벌었네요.

    • 이준형(Foo)
      Giảng viên

      파프리카맨님 수강평 남겨주셔서 감사합니다. :) 말씀해주신대로 artillery는 가장 간단하게 성능 테스트를 해볼 수 있다는 것에 강점이 있는 것 같습니다.

  • 맹수호빵님의 프로필 이미지
    맹수호빵

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    실제로 개인 프로젝트를 진행하고 있습니다. 강의 초반에 강사님이 말씀하신 것처럼 'API를 만들긴 했는데, 내 API가 어느 정도의 성능을 낼 수 있는지'에 대한 의구심을 가지고 있었습니다. 그래서 더욱 이번 강의가 와닿았고, 해당 강의를 통해 성능 테스트에 대한 첫 발걸음을 쉽게 뗄 수 있었던것 같습니다! 그리고 단순히 이력서 등에 '성능'이라는 모호한 단어만 썼는데 더 구체적인 '지연 시간', '처리량' 이라고 말하는게 더 개발자스럽다 라는 것도 깨달았습니다! 또 운영체제에 관한 지식도 빠르게 복습할 수 있어서 좋았고, 중간중간 나긋하게 팩폭+뼈를 때려주시는 조언(?)들을 해주셔서 더욱 자극이 되었던 것 같습니다 ㅎㅎ

    • 이준형(Foo)
      Giảng viên

      맹수호빵님 생생한 수강평 감사합니다. :) 제가 강의로 전달드리고 싶은 내용들 잘 학습하신 것 같습니다! 진행하고 계신 개인 프로젝트에 잘 적용해보셨으면 좋겠네요~! 더 좋은 강의로 찾아 뵙겠습니다. (_ _)

  • Jang Jaehoon님의 프로필 이미지
    Jang Jaehoon

    Đánh giá 495

    Đánh giá trung bình 4.8

    5

    16% đã tham gia

    좋은 강의 감사합니다! 헌데 소리가 굉장히 작은 듯 합니다. 그 점이 좀 불편한 데, 소리를 훨씬 크게 조정 가능하신지요??

    • 이준형(Foo)
      Giảng viên

      Jang Jaehoon님 수강평 남겨주셔서 감사합니다~ 제가 이번주말 안으로 소리 키워서 다시 업로드 하겠습니다! 수강에 불편드려서 죄송합니다. (_ _)

    • 정말 감사합니다! 수업 내용은 정말 좋은 내용 같습니다!

    • 이준형(Foo)
      Giảng viên

      감사합니다. :) 영상 볼륨은 키워서 다시 업로드 해놨습니다! 확인해보시고, 연휴 잘 보내세요~!

  • 잉여인간님의 프로필 이미지
    잉여인간

    Đánh giá 43

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    많은 분량의 강의는 아니지만 성능 테스트에 대해 쉽게 이해할 수 있도록 도와줍니다. 스스로 성능 테스트를 공부할 수 있게 기본기를 만들어 줍니다.

    626.827 ₫

    Khóa học khác của foo

    Hãy khám phá các khóa học khác của giảng viên!