강의

멘토링

커뮤니티

BEST
Programming

/

Back-end

Học thiết kế hệ thống quy mô lớn qua thực hành với Spring Boot - Chiến lược Cache

Học về các chiến lược cache có thể áp dụng trong các hệ thống quy mô lớn thông qua việc trực tiếp xây dựng bằng Spring Boot. Tìm hiểu các tình huống vấn đề như Cache Penetration, Cache Stampede, Hot Key và triển khai các chiến lược giải quyết.

(5.0) 10 đánh giá

227 học viên

Độ khó Trung cấp trở lên

Thời gian Không giới hạn

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

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

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

5.0

5.0

wjsyuwls

100% đã tham gia

Tôi đã có thể học được những nội dung cốt lõi về cache một cách súc tích và nhanh chóng. Việc áp dụng từng loại cache một, đồng thời giới thiệu các vấn đề của mỗi phương pháp áp dụng cache và các phương pháp cache khác có thể giải quyết những vấn đề đó đã giúp tôi rất nhiều trong việc hiểu một cách từng bước. Khóa học diễn ra hấp dẫn đến mức tôi đã mua thêm khóa học về게시판 của anh Kuke nữa ㅎㅎ Mong anh tiếp tục cho ra nhiều khóa học hay như vậy!

5.0

김현진

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 !!

5.0

몽몽

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ỹ ạ

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

  • Khái niệm và sự cần thiết của cache

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

  • Kỹ năng sử dụng Spring Boot

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

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

Đối tượng khuyên dùng

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

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

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

    • Càng đề xuất hơn nếu bạn từng thắc mắc liệu bấy nhiêu đây đã thực sự đủ chưa.


  • Những người muốn tìm hiểu sâu và đa dạng về các chiến lược cache


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

  • Spring Boot :

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

  • Java :

    Mặc dù sử dụng Java 21, nhưng vì không dùng các cú pháp mới phức tạp nên bạn không nhất thiết phải biết về phiên bản 21. Chỉ cần nắm vững cú pháp từ Java 8 trở lên là đủ.

  • Redis :

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

  • Kiến thức Khoa học Máy tính: Nếu có nền tảng về kiến thức CS thì việc thấu hiểu có thể sẽ dễ dàng hơn, nhưng đây tuyệt đối không phải là yêu cầu bắt buộc.

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

  • Spring Boot 3.5.6

  • Java 21

  • Redis 8.2.1


  • Gradle


  • Docker

  • Test Container


  • IntelliJ IDEA


Mặc dù khóa học không phụ thuộc vào các phiên bản cụ thể, nhưng chúng tôi khuyến nghị sử dụng cùng một môi trường để việc thực hành được thuận tiện nhất.

Dù bạn sử dụng ngôn ngữ hay framework khác, các khái niệm và phương pháp thiết kế vẫn tương tự nhau. Nếu bạn có thể tự mình cân nhắc và phát triển những phần này, bạn vẫn có thể theo học ngay cả khi không sử dụng Spring Boot.

Từ khóa học tập

Tôi đã tổng hợp các từ khóa mà bạn có thể học được trong bài giảng.
Việc chưa biết là điều đương nhiên, nhưng thông qua bài giảng này, bạn sẽ được 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


Hỏi đáp trước khi đăng ký

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

A. Vì đây không phải là khóa học nhập môn nên tôi sẽ không giải thích các khái niệm về backend, nguyên lý hay 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à ngay cả khi bạn chưa nắm vững, chỉ cần có tinh thần sẵn sàng vừa học vừa tìm tòi là đủ. Tôi đề xuất khóa học này cho những ai đã từng tự tay xây dựng một sản phẩm nào đó ít nhất một lần, cho dù chỉ là một trang bảng tin đơn giản.

Q. Tôi không biết Redis thì có thể tham gia khóa học được không?

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

Q. Chỉ cần hoàn thành khóa học là có thể hiểu hết mọi nội dung không?

A. Để học kỹ và nắm vững hoàn toàn nội dung bài giảng, bạn có thể mất gấp nhiều lần thời gian. Bạn không thể hiểu hết mọi nội dung chỉ bằng cách chỉ xem bằng mắt và gõ theo mã nguồn một lần. Đó là một chủ đề khó đến mức như vậy. Tôi khuyên bạn nên liên tục ôn tập và cố gắng 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 định hướng của bài giảng hoặc được đánh giá là cần tự học sẽ không được giải thích trong bài giảng, nên có thể bạn sẽ không cảm thấy bài giảng hoàn toàn "tận tình". Những phần này đòi hỏi bạn phải tự nghiên cứu thêm.

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

A. Vì các khái niệm đều giống nhau nên bạn hoàn toàn có thể tham gia khóa học. Tuy nhiên, do khóa học chỉ cung cấp mã nguồn được viết bằng ngôn ngữ Java trên Spring Boot, bạn có thể cần có khả năng tự triển khai để chuyển đổi sang các ngôn ngữ khác.

Q. Tôi không biết một từ khóa nào được đề cập trong phần giới thiệu bài giảng cả.

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

Q. Có bao gồm việc triển khai máy chủ hay phát triển client không?

A. Quá trình phát triển và thử nghiệm chỉ diễn ra trên môi trường local, việc triển khai máy chủ hay phát triển màn hình client sẽ không được thực hiện.

Q. Trong quá trình học, có phát sinh thêm chi phí phụ nào như dịch vụ đám mây (cloud) không?

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

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

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

  • Những ai 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 mới chỉ sử dụng đơn thuần annotation @Cacheable

  • Những người muốn nghiên cứu sâu và đa dạng về chiến lược cache.

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

  • Java

  • Spring Boot

Xin chào
Đây là

1,923

Học viên

201

Đánh giá

244

Trả lời

4.9

Xếp hạng

3

Các khóa học

Xin chào.

Làm việc với tư cách là nhà phát triển tại một doanh nghiệp IT, tôi đang áp dụng nhiều công nghệ đa dạng để duy trì các hệ thống quy mô lớn.

Tôi lập blog này nhằm chia sẻ những kiến thức phát triển phần mềm từ góc độ thực tiễn, hy vọng sẽ giúp ích được nhiều cho các bạn.

 

[Liên hệ]

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ả

10 đánh giá

5.0

10 đá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~!

  • minnseong6505님의 프로필 이미지
    minnseong6505

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    • kuke
      Giảng viên

      minnseong, cảm ơn bạn vì đánh giá tốt!

  • wjsyuwls님의 프로필 이미지
    wjsyuwls

    Đánh giá 24

    Đánh giá trung bình 5.0

    Đã chỉnh sửa

    5

    100% đã tham gia

    Tôi đã có thể học được những nội dung cốt lõi về cache một cách súc tích và nhanh chóng. Việc áp dụng từng loại cache một, đồng thời giới thiệu các vấn đề của mỗi phương pháp áp dụng cache và các phương pháp cache khác có thể giải quyết những vấn đề đó đã giúp tôi rất nhiều trong việc hiểu một cách từng bước. Khóa học diễn ra hấp dẫn đến mức tôi đã mua thêm khóa học về게시판 của anh Kuke nữa ㅎㅎ Mong anh tiếp tục cho ra nhiều khóa học hay như vậy!

    • kuke
      Giảng viên

      wjsyuwle, cảm ơn bạn đã đánh giá tốt! Thường thì mọi người chuyển sang từ khóa học게시판 (bảng tin) nhưng thật thú vị và biết ơn khi bạn bắt đầu từ khóa học về cache ㅎㅎㅎ Cảm ơn bạn đã học tập chăm chỉ và tập trung, và chúc mừng bạn đã hoàn thành khóa học!!

  • 40141338234님의 프로필 이미지
    40141338234

    Đánh giá 10

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    • kuke
      Giảng viên

      Anh Seojin, cảm ơn anh vì đánh giá tốt!!

4.079.228 ₫

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!