강의

멘토링

커뮤니티

NEW
Programming

/

Back-end

Học thiết kế hệ thống quy mô lớn bằng cách tự tay xây dựng với Spring Boot - Chiến lược Cache

Học cách xây dựng chiến lược cache có thể sử dụng trong hệ thống quy mô lớn bằng cách tự tay tạo ra với Spring Boot. Hiểu và triển khai các chiến lược giải quyết cho các tình huống vấn đề Cache Penetration, Cache Stampede, Hot Key.

(5.0) 6 đánh giá

170 học viên

  • kuke
cache
redis
SpringBoot
backend
system-design
Spring Boot
Redis

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

Bạn sẽ nhận được điều này sau khi học.

  • Khái niệm và tính cần thiết của Cache

  • Các tình huống vấn đề cache trong hệ thống quy mô lớn và chiến lược giải quyết

  • Khả năng ứng dụng Spring Boot

  • Khả năng hiểu và ứng dụng Redis

  • Khả năng viết và triển khai mã ứng dụng

Đối tượng khuyến nghị

  • Người tò mò về các tình huống vấn đề và chiến lược giải quyết khi sử dụng cache trong hệ thống quy mô lớn

  • Những người chưa từng sử dụng cache hoặc vẫn chưa hiểu rõ về cache

  • Người chỉ đơn giản sử dụng annotation cache của Spring (@Cacheable)

    • Nếu bạn đã từng nghi ngờ liệu điều này có thực sự đủ hay không thì tôi càng khuyến khích hơn


  • Người muốn học sâu và đa dạng về các chiến lược cache


Kiến thức tiên quyết

  • Spring Boot :

    Spring Boot không đề cập đến nguyên lý hoạt động hay cách sử dụng.

  • Java :

    Sử dụng Java 21 nhưng không sử dụng cú pháp mới phức tạp, vì vậy không nhất thiết phải biết về phiên bản 21. Nếu đã học cú pháp Java 8 trở lên thì đã đủ.

  • Redis :

    Redis được giải thích trong khóa học nên không cần kiến thức tiên quyết. Tuy nhiên, vì chủ yếu đề cập đến khía cạnh ứng dụng nên có thể cần học thêm những phần còn thiếu.

  • Kiến thức Computer Science : Có nền tảng kiến thức CS có thể giúp việc hiểu bài dễ dàng hơn, nhưng không phải là điều kiện bắt buộc.

Công nghệ và công cụ

  • Spring Boot 3.5.6

  • Java 21

  • Redis 8.2.1


  • Gradle


  • Docker

  • Test Container


  • IntelliJ IDEA


Đây không phải là khóa học bị ràng buộc bởi phiên bản cụ thể nào, nhưng để thực hành thuận lợi, chúng tôi khuyến nghị sử dụng cùng một môi trường.

Ngay cả khi sử dụng ngôn ngữ hoặc framework khác, các khái niệm và phương thức thiết kế vẫn giống nhau. Nếu bạn có thể trực tiếp cân nhắc và phát triển những phần này, thì dù không sử dụng Spring Boot, bạn vẫn có thể học được.

Từ khóa học tập

Tôi đã tổng hợp các từ khóa có thể học được trong khóa học.
Việc chưa biết những điều này là bình thường, nhưng thông qua khóa học, bạn sẽ học và triển khai các khái niệm dưới đây.

#Cache #Redis #Redis_Cluster #Shard #Look_Aside #Cache_Penetration

#Null_Object_Pattern #Bloom_Filter #Cache_Stampede #Jitter

#Probabilistic_Early_Recomputation #Request_Collapsing #Rate_Limit #Write_Through

#List_Cache #Hot_Data #Cold_Data #Distributed_Lock #Hot-Key

#Application-Level_Sharding #Application-Level_Replication #Docker


Q&A trước khi học

Q. Tôi hoàn toàn mới bắt đầu học backend và Spring Boot, liệu có thể tham gia khóa học này không?

A. Đây không phải là khóa học nhập môn nên sẽ không giải thích các khái niệm backend, nguyên lý và cách sử dụng Spring. Do đó, kiến thức cơ bản về Spring là yêu cầu bắt buộc, và chỉ cần có thái độ sẵn sàng học hỏi trong quá trình học là đủ dù chưa hiểu rõ lắm. Tôi khuyến khích khóa học này cho những ai đã từng tạo ra ít nhất 1 lần một sản phẩm nào đó, dù chỉ là một bảng tin đơn giản.

Q. Tôi không biết về Redis, liệu có thể tham gia khóa học không?

A. Redis được giải thích và đề cập trong khóa học nên bạn không biết cũng không sao. Tuy nhiên, vì chủ yếu được đề cập ở khía cạnh ứng dụng nên có thể cần học thêm những phần còn thiếu.

Q. Nếu chỉ hoàn thành khóa học, liệu có thể hiểu được tất cả nội dung không?

A. Để học tập và tiếp thu hoàn toàn nội dung của khóa học có thể mất gấp nhiều lần thời gian. Chỉ đơn giản nghe bằng mắt và gõ theo code một lần thôi thì không thể hiểu được toàn bộ nội dung. Đây là một chủ đề khó đến vậy. Tôi khuyến khích các bạn liên tục ôn tập và nắm bắt cấu trúc tổng thể trong quá trình học. Ngoài ra, những phần không liên quan đến hướng của khóa học hoặc được đánh giá là cần học tập trực tiếp sẽ không được giải thích trong khóa học, nên có thể không cảm thấy thân thiện lắm. Những phần này cần học tập cá nhân.

Q. Tôi có kinh nghiệm về backend nhưng chỉ sử dụng các framework khác chứ không phải Spring Boot. Liệu tôi có thể học khóa học này không?

A. Các khái niệm đều giống nhau nên bạn có thể nghe mà không có vấn đề gì. Tuy nhiên, vì chỉ cung cấp code được viết bằng ngôn ngữ Java trong Spring Boot, nên có thể cần khả năng triển khai để chuyển đổi trực tiếp sang ngôn ngữ khác.

Q. Tôi không hiểu gì về những từ khóa được đề cập trong phần giới thiệu khóa học.

A. Nếu chỉ cần đáp ứng các điều kiện tiên quyết đã đề cập, thì sẽ không có vấn đề gì nếu bạn có thể theo kịp được, vì khóa học sẽ giúp bạn học lý thuyết thông qua bài giảng và trực tiếp thực hiện bằng code.

Q. Khóa học có đề cập đến triển khai server hoặc phát triển client không?

A. Chỉ tiến hành phát triển và kiểm thử trên môi trường local, không tiến hành triển khai server hoặc phát triển giao diện client.

Q. Trong quá trình giảng dạy có phát sinh chi phí bổ sung nào như cloud không?

A. Vì việc phát triển và kiểm thử chỉ diễn ra trên môi trường local, nên không cần chi phí bổ sung.

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

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

  • Người tò mò về các chiến lược cache có thể áp dụng trong hệ thống quy mô lớn

  • Người chưa từng sử dụng cache

  • Người vẫn chưa hiểu rõ về cache

  • Người chỉ đơn giản sử dụng annotation @Cacheable

  • Người muốn học sâu và đa dạng về các chiến lược cache

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

  • Java

  • Spring Boot

Xin chào
Đây là

1,758

Học viên

186

Đánh giá

232

Trả lời

4.9

Xếp hạng

3

Các khóa học

안녕하세요.

IT 기업 개발자로 근무하며, 대규모 시스템을 지탱하기 위해 다양한 기술을 활용해보고 있습니다.

실무 관점의 개발 지식을 공유하고자 개설하였고, 많은 도움이 되었으면 좋겠습니다.

 

[문의]

Email : kukekyakya@gmail.com

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

Tất cả

44 bài giảng ∙ (7giờ 40phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

6 đánh giá

5.0

6 đánh giá

  • fruitworldplanet3134님의 프로필 이미지
    fruitworldplanet3134

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Khóa học này thực sự có nội dung rất sâu sắc và tôi cảm thấy học được rất nhiều điều ! Đặc biệt là những khái niệm mà tôi chỉ biết lý thuyết nhưng không biết cách triển khai thực tế, giờ đã được giải đáp rất hữu ích và tuyệt vời !!

    • kuke
      Giảng viên

      Hyeonjin, cảm ơn bạn vì đánh giá tốt! Mục tiêu của tôi không chỉ là truyền đạt khái niệm về chiến lược mà còn từ góc độ triển khai thực tế, thật may mắn khi thấy rằng bạn đã hiểu rõ! Chúc mừng bạn đã hoàn thành khóa học~!

  • hamn201715님의 프로필 이미지
    hamn201715

    Đánh giá 26

    Đánh giá trung bình 4.9

    5

    32% đã tham gia

    Anh Kuke ơi, em đã nghe bài giảng về bảng thông báo rất hay nên em đã thanh toán ngay bài giảng về chiến lược cache! Đây chính xác là nội dung em đang muốn tìm hiểu nên em sẽ nghe kỹ ạ

    • kuke
      Giảng viên

      Cảm ơn Mongmong đã để lại đánh giá đầu tiên! Tiếp nối từ khóa học trước, lần này bạn lại học tiếp nữa! Hy vọng bạn sẽ thu được những gì mình mong muốn! Fighting~!

  • wisehero님의 프로필 이미지
    wisehero

    Đánh giá 56

    Đánh giá trung bình 4.7

    5

    100% đã tham gia

    Tôi không biết gì về chiến lược cache ngoài Look-Aside và Write-Through, nhưng đã học được nhiều chiến lược đa dạng.

    • kuke
      Giảng viên

      wisehero, cảm ơn bạn vì đánh giá tốt! Cảm ơn bạn đã học tập tốt, và hy vọng bạn sẽ áp dụng hiệu quả trong thực tế nhé!

  • maruhxn님의 프로필 이미지
    maruhxn

    Đánh giá 4

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    • kuke
      Giảng viên

      maruhxn, cảm ơn bạn vì đánh giá tốt! Tên quen thuộc quá, lần này bạn cũng đã tham gia khóa học rồi đấy. 😊😊😊 Tôi cũng tò mò không biết bạn đang thích nghi tốt không. Chúc bạn tiếp tục cố gắng với những bài giảng còn lại nhé~!

    • Ồ bạn còn nhớ à,, cảm ơn bạn rất nhiều 😭😭 Nhờ ôn lại những nội dung đã học từ khóa học của anh Kuke, những đoạn code đã thấy trong live coding mà mình đã thích nghi tốt với công ty!! Lần này cũng cảm ơn anh rất nhiều vì khóa học bổ ích và thú vị! Tuy chưa xem hết khóa học nhưng đã mong chờ khóa học tiếp theo rồi!

  • troman6958님의 프로필 이미지
    troman6958

    Đánh giá 9

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    Giải thích rất tỉ mỉ và các ví dụ triển khai cũng có code rất gọn gàng

    • kuke
      Giảng viên

      Haeman, cảm ơn bạn vì đánh giá tốt! Chúc bạn tiếp tục cố gắng với những bài học còn lại!

4.151.357 ₫

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

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

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!