Thiết kế hệ thống máy chủ chịu được lưu lượng tăng đột biến - Dịch vụ phát hành Coupon

Thông qua việc triển khai hệ thống phiếu giảm giá theo nguyên tắc ai đến trước được phục vụ trước, bạn sẽ giải quyết các vấn đề cốt lõi trong backend thực tế như vấn đề đồng thời, tính nhất quán của dữ liệu và xử lý lưu lượng truy cập cao điểm. Bạn sẽ trực tiếp viết mã, phát hiện vấn đề và nắm vững các kỹ thuật thiết yếu trong công việc như xử lý đồng bộ/bất đồng bộ và quản lý hàng đợi. Đây là khóa học dựa trên dự án, giúp các lập trình viên junior và người đang chuẩn bị xin việc tích lũy kinh nghiệm thực tế.

(4.9) 22 đánh giá

805 học viên

Độ khó Cơ bản

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

Java
Java
Kotlin
Kotlin
MySQL
MySQL
Docker
Docker
Spring Boot
Spring Boot
Java
Java
Kotlin
Kotlin
MySQL
MySQL
Docker
Docker
Spring Boot
Spring Boot

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

4.9

5.0

SPRING

100% đã tham gia

Tôi đã xem kỹ luồng kiến trúc hệ thống. Mặc dù độ khó của bài giảng được ghi là cấp độ cơ bản, nhưng cơ sở hạ tầng được sử dụng dường như không ở mức cơ bản. Về cá nhân, tôi thích trực tiếp lập trình cùng AI hơn là xem AI viết code rồi đánh giá, nên phần này khá tốt. Tuy nhiên, vì đã quen với Java nên cú pháp Kotlin khá xa lạ với tôi. Ngoài ra, tôi đã tự ý thay đổi tên package trước khi bắt đầu học, và vì chạy K6 dưới dạng container trên Windows Git Bash nên việc kiểm thử bằng shell script lại khiến quá trình học trở nên khó khăn hơn. Có thể sẽ có người thấy tiện khi sao chép và dán các shell script kiểm thử, nhưng tôi thì không thích cách này. Luồng kiểm thử của K6 và shell script khó đọc hơn tôi nghĩ, và có lẽ sau một thời gian, khi xem lại, tôi sẽ lại quên mất luồng kiểm thử. Tuy nhiên, xét về góc độ kiến trúc và việc ứng dụng Redis, tôi nghĩ đây là một khóa học hay, vì sẽ mang lại nhiều 도움이 cho học viên.

5.0

maruhxn

61% đã tham gia

Những vấn đề có thể phát sinh khi có lưu lượng truy cập lớn vốn chưa được sắp xếp rõ ràng trong đầu tôi, nhưng nhờ bài giảng này mà những kiến thức rời rạc dường như đã được kết nối lại làm một.. Tôi rất biết ơn vì có thể được nghe một bài giảng như thế này.

5.0

AKBA

100% đã tham gia

[Đánh giá tổng quan] Đây là một khóa học không chỉ dừng lại ở việc giới thiệu tổng quan về kiến trúc, mà còn xây dựng các tình huống vấn đề và giải thích sâu sắc về What, Why, How. Tôi có thể học bằng cách suy nghĩ không chỉ về việc sử dụng gì, mà còn về lý do cần sử dụng, cũng như cách áp dụng. Tôi chủ yếu sử dụng Python, nhưng cũng đang tự học riêng Kotlin và Spring nên không gặp quá nhiều khó khăn khi theo dõi khóa học. Cá nhân tôi đã học được rất nhiều điều, nhưng cũng vì vậy mà khá khó để tiếp thu đầy đủ mọi nội dung chỉ sau một lần học. Đây là một khóa học có chiều sâu đến mức tôi muốn xem lại ít nhất hai lần để ôn tập. Về độ khó, có thể sẽ hơi khó đối với người mới bắt đầu, nhưng đây là một khóa học đáng để theo học dù có những thử thách như vậy. [Những điểm còn hạn chế và phần mong muốn được bổ sung] Tôi thực hành trên môi trường Windows, nhưng một số script kiểm thử ở phần sau khá khó chạy nguyên bản trên PowerShell, nên có những lúc tôi phải thay đổi sang cách khác để tiếp tục. Tôi vẫn có thể giải quyết nhờ sự hỗ trợ của AI, nhưng đã mất một chút thời gian để chỉnh sửa cho phù hợp với môi trường. Nếu sau này có thể cung cấp riêng script kiểm thử hoặc hướng dẫn chạy dành cho Windows thì sẽ rất hữu ích. Tôi thuộc kiểu người muốn tự viết code để cố gắng hiểu logic nhiều nhất có thể, nên những bài giảng dài hơn 30 phút đôi khi cũng tạo cảm giác hơi nặng nề khi học một bài. Dĩ nhiên, tôi cũng hiểu ý định muốn giải thích trọn vẹn một chủ đề mà không làm gián đoạn mạch nội dung. Đây là một khóa học hay.

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

  • Các kỹ thuật giải quyết vấn đề đồng thời và đảm bảo tính nhất quán của dữ liệu

  • Thiết kế phân tán tải lưu lượng thông qua xử lý đồng bộ/bất đồng bộ

  • Triển khai hệ thống hàng đợi và kiến trúc phòng vệ lưu lượng truy cập cao điểm


Máy chủ vốn vẫn hoạt động ổn định, tại sao lại sụp đổ khi sự kiện bắt đầu? 🚦


  • Khi sự kiện phát hành coupon theo thứ tự ai đến trước được nhận trước bắt đầu, vô số yêu cầu cùng lúc truy cập vào một lượng hàng tồn kho duy nhất.

  • Có thể phát hành nhiều hơn số lượng đã chuẩn bị, cùng một người dùng nhận được hai phiếu, hoặc dữ liệu giữa nhiều kho lưu trữ bị sai lệch.



Thay vì học thuộc một kiến trúc hoàn chỉnh, trong khóa học này bạn sẽ trực tiếp làm sụp đổ rồi thiết kế lại một dịch vụ phát hành coupon.


Tái hiện vấn đề, đo lường TPS, P99, tỷ lệ lỗi và độ chính xác phát hành thực tế, sau đó lựa chọn DB Lock, Redis, Kafka, Cache và phòng chờ ảo rồi kiểm chứng lại với cùng mức tải.


Thiết kế hệ thống máy chủ chịu được lưu lượng tăng đột biến - Dịch vụ phát hành Coupon

  • Viết mã bằng Kotlin và Spring Boot.

  • Bạn sẽ chạy MySQL, Redis và Kafka bằng Docker Compose; ngay cả khi chưa từng sử dụng Redis và Kafka, chỉ cần có kiến thức cơ bản về HTTP, RDB và Spring Boot là bạn vẫn có thể theo kịp từng bước.


Đặc điểm của khóa học này


📌 Liên tục phát triển một dịch vụ coupon từ triển khai cơ bản đến xử lý đồng thời, xử lý bất đồng bộ, bộ nhớ đệm, khôi phục tính nhất quán và kiểm soát lưu lượng.

📌 Quy trình tái hiện vấn đề → đo lường điểm nghẽn → lựa chọn thiết kế → kiểm chứng lại trong cùng điều kiện được lặp lại ở mọi phần.

📌 Không chỉ xem TPS và P99. Chúng tôi cũng kiểm tra xem đã phát hành chính xác N vé chưa, quy định mỗi người một vé có được tuân thủ không, và các sự kiện có được lưu đầy đủ đến MySQL hay không.

📌 So sánh trực tiếp nhiều phương án như khóa bi quan của DB và Redis Lua, hàng đợi trong bộ nhớ và Kafka để đánh giá khi nào nên chọn phương án nào.

📌 Không dừng lại ở lý thuyết. Mã nguồn hoạt động, môi trường thực thi, kịch bản tải k6 và kết quả kiểm chứng trước và sau khi thay đổi sẽ được lưu lại thành một bộ hoàn chỉnh.

Khóa học này phù hợp với những người sau đây

Lập trình viên backend junior lần đầu xử lý lưu lượng truy cập cao điểm

Phù hợp với những ai bối rối không biết nên bắt đầu tối ưu DB, cache hay queue ở đâu khi lượng yêu cầu dồn dập.

Ứng viên backend đang chuẩn bị xin việc và muốn nâng cao năng lực thiết kế

Khóa học phù hợp với những ai muốn giải thích vấn đề, lựa chọn và kết quả qua các dự án thay vì liệt kê tên công nghệ.

Những người học phát triển máy chủ muốn kiểm chứng hiệu năng bằng các con số

Dành cho những ai muốn phát triển hệ thống vượt ra ngoài CRUD thông qua kiểm thử tải và tái hiện sự cố.

Phù hợp với những bạn đã quen với việc triển khai đơn giản nhưng vẫn bối rối không biết nên kiểm tra từ đâu và lựa chọn công nghệ nào khi lưu lượng truy cập tăng đột biến. Thông qua quá trình trực tiếp tái hiện vấn đề và cải thiện thiết kế dựa trên kết quả đo lường, bạn sẽ xây dựng được tiêu chí đánh giá có thể áp dụng trong thực tế.


Sau khi hoàn thành khóa học,

✓ Bạn có thể triển khai logic phát hành vừa đảm bảo số lượng chính xác ngay cả khi có các yêu cầu đồng thời, vừa tuân thủ quy tắc mỗi người chỉ được 1 vé.

✓ Có thể so sánh ưu nhược điểm của khóa bi quan trong DB, khóa phân tán Redis và phép toán nguyên tử Redis Lua, đồng thời lựa chọn phương thức phù hợp với từng tình huống.

✓ Tách phản hồi người dùng và việc lưu DB bằng Kafka, đồng thời khôi phục các tin nhắn thất bại thông qua DLT và quy trình xử lý lại.

✓ Có thể phát hiện và ứng phó với Cache Stampede, tình trạng bùng nổ yêu cầu sau khi hết vé và sự không nhất quán giữa Redis với MySQL.

✓ Kết nối phòng chờ ảo với Gateway Rate Limit để người dùng hợp lệ chờ đợi, còn kẻ lạm dụng bị chặn ngay từ cửa.

✓ Không chỉ TPS, P99 và tỷ lệ lỗi, bạn còn có thể đo lường số lượng phát hành, tình trạng trùng lặp và cả việc thiếu dữ liệu lưu trữ để chứng minh hiệu quả cải tiến thiết kế bằng kết quả.


Bạn sẽ học những nội dung như thế này

Tái hiện vấn đề và tìm ra nguyên nhân bằng những con số

Hãy cố ý tạo ra tình trạng phát hành coupon vượt mức và nút thắt cổ chai. Đọc các chỉ số TPS, P99, tỷ lệ lỗi và độ chính xác, đồng thời so sánh trước và sau khi thiết kế trong cùng điều kiện tải k6. Không dựa vào cảm giác, hãy dùng các số liệu đo được làm cơ sở cho lựa chọn tiếp theo.

Phát triển qua 6 giai đoạn, từ triển khai cơ bản đến kiểm soát lưu lượng

Triển khai yêu cầu coupon, kiểm soát tính đồng thời, xử lý bất đồng bộ, chiến lược bộ nhớ đệm, khôi phục tính nhất quán và kiểm soát lưu lượng theo thứ tự. Khi xác định giới hạn của từng giai đoạn, bạn sẽ tự nhiên hiểu được lý do cần thiết kế tiếp theo.

Kết nối nhiều công nghệ thành một quy trình phát hành coupon

Gateway và phòng chờ ảo kiểm soát tốc độ truy cập, còn Redis xử lý nguyên tử việc tồn kho và cấp phát trùng lặp. Kafka Worker lưu dữ liệu vào MySQL, còn bộ lập lịch batch kiểm tra sự không nhất quán giữa hai kho lưu trữ.

Mã nguồn và kết quả xác minh được lưu lại cùng nhau

Bạn sẽ xây dựng ứng dụng bằng Kotlin và Spring Boot. Chạy MySQL, Redis và Kafka bằng Docker Compose, đồng thời tạo tải thực tế bằng k6 để kiểm tra TPS, P99, tỷ lệ lỗi, số lượng phát hành, tình trạng trùng lặp và việc lưu trữ bị thiếu.

Lý do tạo ra khóa học này

  • Khi nhìn vào một kiến trúc hoàn chỉnh, mọi lựa chọn đều có vẻ hiển nhiên, nhưng trong thực tế công việc, bạn phải tìm ra nguyên nhân và chọn một trong nhiều phương án thay thế.

  • Tôi muốn truyền đạt năng lực quyết định nên kiểm soát yêu cầu ở đâu, đặt trạng thái nào ở đâu và dùng tiêu chí gì để đánh giá thành công, thay vì cách gắn thêm một công nghệ nổi tiếng.

Khóa học này không đề cập đến

  • Chúng ta sẽ không xem xét rộng các miền liên quan đến coupon như thanh toán và giao hàng, cũng như toàn bộ lý thuyết về hệ thống phân tán.

  • Tập trung vào các điều kiện như phát hành số lượng coupon cố định từ trước, mỗi người một coupon, thời điểm bắt đầu được định sẵn và kết thúc khi hết hàng.

Lưu ý trước khi tham gia khóa học

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

• Sử dụng Kotlin, Spring Boot và Gradle.

• MySQL, Redis và Kafka được chạy bằng Docker Compose.

• Bài kiểm thử tải sử dụng k6.

• Bạn có thể thực hành trên môi trường Windows, macOS hoặc Linux có thể chạy Docker.

• Để thực hành thuận lợi, khuyến nghị sử dụng thiết bị có từ 8GB bộ nhớ trở lên.

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

• Cung cấp slide bài giảng và toàn bộ mã nguồn.

(Mặc dù khóa học được giảng dạy bằng Kotlin, mã thực hành được cung cấp cả phiên bản Kotlin và Java.)

• Cung cấp môi trường thực thi và cấu hình Docker Compose cho từng phần.

• Có các kịch bản kiểm thử tải k6 mà bạn có thể trực tiếp chạy lặp lại.

• Cùng xem tài liệu thiết kế của từng giai đoạn và kết quả kiểm chứng trước và sau khi thay đổi.

Kiến thức cần có và lưu ý

• Cần có kiến thức cơ bản về HTTP và REST API.

• Sử dụng cơ sở dữ liệu quan hệ và các câu lệnh SQL ở mức SELECT, UPDATE.

• Bạn cần biết cú pháp Java hoặc Kotlin.

• Khuyến khích có kiến thức cơ bản về Spring Boot.

• Kinh nghiệm với Redis và Kafka không bắt buộc.




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

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

  • Lập trình viên backend trẻ muốn tích lũy kinh nghiệm thực tế

  • Ứng viên backend đang chuẩn bị xin việc, muốn học cách kiểm soát tính đồng thời và xử lý lưu lượng truy cập lớn

  • Sinh viên đại học chuyên ngành Khoa học Máy tính muốn có kinh nghiệm thiết kế hệ thống backend ở cấp độ thực tế công việc

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

  • Hiểu cú pháp cơ bản của các ngôn ngữ lập trình backend (Java, Python, v.v.)

  • Kiến thức cơ bản về cơ sở dữ liệu và SQL

  • Các khái niệm cơ bản về REST API và giao tiếp HTTP

Xin chào
Đây là apiece

Xác minh Inflearn

Xác minh sự nghiệp

1,770

Học viên

62

Đánh giá

53

Trả lời

4.9

Xếp hạng

7

Các khóa học

Xin chào, tôi là nhà phát triển Hanjo각.
Tôi đã thiết kế và vận hành nhiều hệ thống backend trong môi trường dịch vụ thực tế qua thời gian làm việc tại Kakao và SK.

Tôi đưa vào nội dung chia sẻ kiến thức những vấn đề và thử nghiệm, sai lầm đã gặp trong quá trình đó, cũng như những trăn trở khi lựa chọn công nghệ.
Tôi muốn truyền đạt cùng với bối cảnh thực tế, từ việc sử dụng công nghệ khi nào và vì sao cho đến việc thiết kế hệ thống dựa trên những tiêu chí nào.

Tôi hy vọng những trăn trở và kinh nghiệm mà tôi từng trải qua sẽ giúp các bạn giảm bớt những lần thử và sai,
đồng thời đưa ra những lựa chọn tốt hơn.

Nếu có điều gì khiến bạn thắc mắc hoặc chưa hài lòng khi xem nội dung, hãy thoải mái chia sẻ với tôi bất cứ lúc nào.
Dựa trên những phản hồi chân thành của các bạn, tôi muốn cùng tạo ra những nội dung tốt hơn.

Cảm ơn bạn.

apiece.dev.ai@gmail.com

Thêm

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

Tất cả

59 bài giảng ∙ (10giờ 17phú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ả

22 đánh giá

4.9

22 đánh giá

  • gylim78265525님의 프로필 이미지
    gylim78265525

    Đánh giá 21

    ∙

    Đánh giá trung bình 5.0

    5

    31% đã tham gia

    Ban đầu tôi học Java, sau đó chuyển sang Kotlin và học bằng cách gõ theo mã nguồn. Vì hai ngôn ngữ không khác nhau quá nhiều nên không gặp khó khăn gì, đồng thời tôi cũng đã có thể định hình được các khái niệm về tính đồng thời ㅎㅎ

    • apiece
      Giảng viên

      Xin chào Gapalja! Dù bạn chuyển từ Java sang Kotlin nhưng vẫn có thể theo kịp mà không gặp nhiều khó khăn, thật may mắn quá. Hơn hết, tôi rất vui vì bài giảng đã giúp bạn hệ thống hóa một trong những khái niệm cần thiết cho việc phát triển máy chủ, đó là tính đồng thời 🙂 Tôi sẽ tiếp tục cố gắng tạo ra những bài giảng hữu ích cho quá trình học tập của bạn. Xin cảm ơn.

  • s1121238291님의 프로필 이미지
    s1121238291

    Đánh giá 100

    ∙

    Đánh giá trung bình 4.9

    5

    100% đã tham gia

    Tôi đã xem kỹ luồng kiến trúc hệ thống. Mặc dù độ khó của bài giảng được ghi là cấp độ cơ bản, nhưng cơ sở hạ tầng được sử dụng dường như không ở mức cơ bản. Về cá nhân, tôi thích trực tiếp lập trình cùng AI hơn là xem AI viết code rồi đánh giá, nên phần này khá tốt. Tuy nhiên, vì đã quen với Java nên cú pháp Kotlin khá xa lạ với tôi. Ngoài ra, tôi đã tự ý thay đổi tên package trước khi bắt đầu học, và vì chạy K6 dưới dạng container trên Windows Git Bash nên việc kiểm thử bằng shell script lại khiến quá trình học trở nên khó khăn hơn. Có thể sẽ có người thấy tiện khi sao chép và dán các shell script kiểm thử, nhưng tôi thì không thích cách này. Luồng kiểm thử của K6 và shell script khó đọc hơn tôi nghĩ, và có lẽ sau một thời gian, khi xem lại, tôi sẽ lại quên mất luồng kiểm thử. Tuy nhiên, xét về góc độ kiến trúc và việc ứng dụng Redis, tôi nghĩ đây là một khóa học hay, vì sẽ mang lại nhiều 도움이 cho học viên.

    • apiece
      Giảng viên

      Xin chào SPRING! Cảm ơn bạn đã để lại đánh giá tốt cùng nhận xét khóa học chi tiết! Cảm ơn bạn đã chia sẻ rằng khóa học hữu ích đối với bạn ở khía cạnh nắm bắt quy trình của kiến trúc hệ thống và cách sử dụng Redis, cũng như đánh giá tích cực về phương pháp lập trình trực tiếp. Mặt khác, chúng tôi cũng đồng cảm với ý kiến rằng phần cơ sở hạ tầng được sử dụng trong khóa học có thể khiến bạn cảm thấy khó hơn so với trình độ nhập môn, và sẽ chú ý hơn đến độ khó cũng như cách xây dựng bài giảng trong thời gian tới. Ngoài ra, chúng tôi cũng sẽ ghi nhận phản hồi rằng những cú pháp Kotlin chưa quen thuộc hoặc các bài kiểm thử dựa trên shell script có thể khiến quá trình học trở nên khó khăn hơn. Dù vậy, bạn vẫn học đầy đủ toàn bộ khóa học và để lại đánh giá tốt cùng những phản hồi chi tiết. Xin chân thành cảm ơn bạn! Dựa trên những phản hồi bạn đã chia sẻ, chúng tôi sẽ tiếp tục cải thiện để mang đến những khóa học tốt hơn trong tương lai. Cảm ơn bạn 🙇‍♂️

  • maruhxn님의 프로필 이미지
    maruhxn

    Đánh giá 13

    ∙

    Đánh giá trung bình 5.0

    5

    61% đã tham gia

    Những vấn đề có thể phát sinh khi có lưu lượng truy cập lớn vốn chưa được sắp xếp rõ ràng trong đầu tôi, nhưng nhờ bài giảng này mà những kiến thức rời rạc dường như đã được kết nối lại làm một.. Tôi rất biết ơn vì có thể được nghe một bài giảng như thế này.

    • apiece
      Giảng viên

      Chào bạn maruhxn, Tôi rất vui khi biết rằng những kiến thức rời rạc đã được kết nối lại thành một, điều đó cho thấy ý định của tôi khi tạo ra bài giảng này đã được truyền tải tốt. Hy vọng bài giảng đã giúp bạn thiết lập được các tiêu chuẩn khi nhìn nhận vấn đề lưu lượng truy cập lớn (large-scale traffic). Cảm ơn bạn đã để lại đánh giá khóa học! 😊

  • lv032k34님의 프로필 이미지
    lv032k34

    Đánh giá 9

    ∙

    Đánh giá trung bình 5.0

    Đã chỉnh sửa

    5

    100% đã tham gia

    [Đánh giá tổng quan] Đây là một khóa học không chỉ dừng lại ở việc giới thiệu tổng quan về kiến trúc, mà còn xây dựng các tình huống vấn đề và giải thích sâu sắc về What, Why, How. Tôi có thể học bằng cách suy nghĩ không chỉ về việc sử dụng gì, mà còn về lý do cần sử dụng, cũng như cách áp dụng. Tôi chủ yếu sử dụng Python, nhưng cũng đang tự học riêng Kotlin và Spring nên không gặp quá nhiều khó khăn khi theo dõi khóa học. Cá nhân tôi đã học được rất nhiều điều, nhưng cũng vì vậy mà khá khó để tiếp thu đầy đủ mọi nội dung chỉ sau một lần học. Đây là một khóa học có chiều sâu đến mức tôi muốn xem lại ít nhất hai lần để ôn tập. Về độ khó, có thể sẽ hơi khó đối với người mới bắt đầu, nhưng đây là một khóa học đáng để theo học dù có những thử thách như vậy. [Những điểm còn hạn chế và phần mong muốn được bổ sung] Tôi thực hành trên môi trường Windows, nhưng một số script kiểm thử ở phần sau khá khó chạy nguyên bản trên PowerShell, nên có những lúc tôi phải thay đổi sang cách khác để tiếp tục. Tôi vẫn có thể giải quyết nhờ sự hỗ trợ của AI, nhưng đã mất một chút thời gian để chỉnh sửa cho phù hợp với môi trường. Nếu sau này có thể cung cấp riêng script kiểm thử hoặc hướng dẫn chạy dành cho Windows thì sẽ rất hữu ích. Tôi thuộc kiểu người muốn tự viết code để cố gắng hiểu logic nhiều nhất có thể, nên những bài giảng dài hơn 30 phút đôi khi cũng tạo cảm giác hơi nặng nề khi học một bài. Dĩ nhiên, tôi cũng hiểu ý định muốn giải thích trọn vẹn một chủ đề mà không làm gián đoạn mạch nội dung. Đây là một khóa học hay.

    • apiece
      Giảng viên

      Xin chào AKBA, cảm ơn bạn đã để lại đánh giá khóa học rất tâm huyết! Tôi rất vui khi biết bạn cảm nhận được chiều sâu của khóa học đến mức muốn ôn tập lại nhiều lần. Việc bạn trực tiếp viết mã và cố gắng tìm hiểu logic cũng trùng với mục đích tôi hướng đến khi xây dựng khóa học, nên tôi nghĩ điều đó hẳn đã giúp ích cho bạn. Tôi cũng sẽ ghi nhận những ý kiến của bạn về độ khó và thời lượng dài của khóa học để tham khảo kỹ khi chuẩn bị khóa học tiếp theo. Về những bất tiện bạn gặp phải khi thực hành trên Windows, các tập lệnh kiểm thử gần đây đã được chuẩn bị để tương thích với Git Bash, nhưng có lẽ phần hướng dẫn vẫn chưa đầy đủ. Trong thời gian tới, tôi sẽ bổ sung để bạn có thể dễ dàng tìm thấy cách chạy trên Windows hơn. Một lần nữa, chân thành cảm ơn bạn vì bài đánh giá khóa học đầy tâm huyết, và cảm ơn bạn đã nhận xét đây là một khóa học hay 😊

  • devdev123님의 프로필 이미지
    devdev123

    Đánh giá 1

    ∙

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    [Điểm tốt] - Vì kiến trúc được phát triển dần theo từng bước nên có thể cảm nhận rõ ràng ở mỗi giai đoạn điều gì được cải thiện và tại sao - Đặc biệt, có thể học được tiêu chí đánh giá thời điểm và vị trí nên áp dụng Redis, Kafka, rất hữu ích từ góc độ thiết kế [Điểm chưa tốt] - Trong môi trường Windows, phải chạy vòng qua Git Bash hoặc tương tự để thực thi các script shell, nhưng đôi lúc vẫn gặp vướng mắc giữa chừng nên phải trực tiếp chỉnh sửa trong quá trình thực hiện [Độ khó] - Mặc dù được ghi là cấp độ cơ bản, nhưng thực tế gần với trình độ trung cấp hơn. Ở cấp độ cơ bản, có thể sẽ khó tiếp thu trọn vẹn phần giải thích

    • apiece
      Giảng viên

      Xin chào bạn 개발중! Cảm ơn bạn đã học kỹ về quá trình từng bước phát triển kiến trúc, cũng như việc nên đưa công cụ nào vào sử dụng, vào thời điểm nào và vì lý do gì; đồng thời cảm ơn bạn đã để lại nhận xét khóa học đầy tâm huyết! 😊 Về việc sử dụng shell script trong môi trường Windows và mức độ khó mà bạn đã đề cập, chúng tôi sẽ bổ sung để các học viên có thể theo dõi dễ dàng hơn. Một lần nữa, xin cảm ơn bạn đã để lại phản hồi hữu ích! 🙏

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

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!