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

/

Back-end

Kevin's dễ hiểu Spring Reactive Web Applications: Reactor phần 2

Nếu bạn muốn tạo Reactor, một trong những công nghệ cốt lõi của các ứng dụng phản ứng dựa trên Spring WebFlux, và Reactor Operator, một công nghệ quan trọng đến mức không ngoa khi nói rằng nó là tất cả mọi thứ về Reactor, của riêng bạn, hãy đọc Easy-to của Kevin. -Hiểu về Spring Reactive WebApplications: Reactor Phần 2. x60; Tham gia lớp học.

(4.9) 8 đánh giá

308 học viên

  • kevin
스프링
Reactive Programming
웹개발
시리즈
webflux
Spring
project-reactor
Java

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

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

  • Cách sử dụng Operator để tạo Reactor Sequence

  • Cách sử dụng Operator để lọc dữ liệu trong Reactor Sequence

  • Cách sử dụng Operator để chuyển đổi dữ liệu được phát ra từ Reactor Sequence

  • Cách sử dụng Operator để kiểm tra hoạt động bên trong của Reactor Sequence

  • Cách sử dụng Operator liên quan đến thời gian

  • Cách sử dụng Operator để xử lý lỗi xảy ra trong Reactor Sequence

  • Cách sử dụng Operator để chia dữ liệu được phát ra từ Reactor Sequence

Bài giảng trực tiếp từ tác giả của "Lập trình phản ứng với Spring" !

Kevin, người đã mở khóa học RxJava dễ hiểu của Kevin, đã trở lại với loạt bài giảng và sách về lập trình phản ứng trên Inflearn sau ba năm!


Có một điều mà những người muốn phát triển ứng dụng web dựa trên Spring WebFlux dễ bỏ qua nhất .

Nghĩa là, họ muốn học Spring WebFlux ngay mà không tìm hiểu kỹ về Operator, cốt lõi của lập trình phản ứng.

Chúng tôi hiểu mong muốn của bạn là nhanh chóng triển khai các ứng dụng dựa trên Spring WebFlux.

Nhiều người chuyển sang Spring WebFlux mà không có hiểu biết vững chắc về các toán tử của Reactor, nhưng họ thường gặp phải trở ngại gọi là toán tử và phải học lại các toán tử.

Để tránh những lần thử và sai này, trong bài giảng thứ hai , chúng ta sẽ đề cập đến cốt lõi của Reactor, đó là
Chúng tôi chỉ đề cập đến Toán tử để bạn có thể tập trung vào việc học cách sử dụng chúng.


Tôi tin rằng bài giảng này sẽ là chìa khóa mở ra cánh cửa đến Reactor, và đặc biệt là Operator, được gọi là bông hoa của Reactor.

🌱 Đặc điểm của Phần 2 bài giảng

  • Phần 2 của bài giảng chỉ tập trung vào Người vận hành lò phản ứng.

  • Để hiểu rõ hơn về cách thức hoạt động của Toán tử, chúng ta sẽ sử dụng sơ đồ bi tương ứng với Toán tử đó.

  • Hiểu các khái niệm cơ bản về Toán tử với mã ví dụ để hiểu các khái niệm cơ bản của một Toán tử cụ thể.

  • Sau khi hiểu các khái niệm cơ bản, chúng tôi sẽ giải thích mã ví dụ để giúp bạn hiểu rõ hơn về cách sử dụng các toán tử cụ thể.

  • Tài liệu này giải thích cách sử dụng từng toán tử thông qua 97 mã ví dụ, tổng cộng có 60 toán tử.


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

Phần 1: Tạo một chuỗi mới

Trong Phần 1, chúng ta tìm hiểu về các Toán tử tạo ra Chuỗi phản ứng mới.

  • justOrEmpty : Tìm hiểu cách sử dụng Toán tử justOrEmpty để tạo một giá trị duy nhất hoặc một Chuỗi rỗng từ một Chuỗi Reactor.

  • fromIterable: Tìm hiểu cách tạo một Chuỗi từ dữ liệu có trong Bộ sưu tập trong Java.

  • fromStream : Tìm hiểu cách tạo Chuỗi từ Luồng Java bằng cách sử dụng Toán tử fromStream .

  • phạm vi : Tìm hiểu cách tạo một chuỗi số nguyên trong một phạm vi được chỉ định bằng cách sử dụng toán tử range .

  • trì hoãn : Chúng ta hãy tìm hiểu cách trì hoãn việc phát dữ liệu cho đến khi Người đăng ký đăng ký bằng cách sử dụng toán tử trì defer .

  • sử dụng : Tìm hiểu cách tạo một Chuỗi bao gồm quá trình thu thập và giải phóng tài nguyên bằng cách sử dụng Toán tử using .

  • tạo, tạo : Tìm hiểu cách tạo dữ liệu theo chương trình bằng cách sử dụng các toán tử generate create .

Phần 2: Lọc một chuỗi

Trong Phần 2, chúng ta sẽ tìm hiểu về các Toán tử lọc dữ liệu trong Reactor Sequence.

  • bộ lọc : Tìm hiểu cách lọc dữ liệu trong Chuỗi phản ứng bằng cách sử dụng Toán tử bộ filter .

  • bỏ qua : Tìm hiểu cách bỏ qua dữ liệu trong một chuỗi bằng cách sử dụng toán tử skip .

  • bỏ qua phần mở rộng Toán tử : skipLast , skipUntil , skipUntilOther ,
    Tìm hiểu cách bỏ qua dữ liệu theo nhiều cách khác nhau bằng cách sử dụng skipWhile .

  • take : Tìm hiểu cách sử dụng Toán tử take để chỉ lấy dữ liệu bạn cần từ dữ liệu được phát ra từ một Chuỗi.

  • lấy phần mở rộng Toán tử : takeLast , takeUntil , takeUntilOther ,
    Tìm hiểu cách sử dụng takeWhile để chỉ lấy dữ liệu bạn cần từ dữ liệu được phát ra theo nhiều cách khác nhau .

  • tiếp theo : Chúng ta hãy xem xét một phương pháp để chỉ lấy dữ liệu đầu tiên trong số dữ liệu được phát ra.


Phần 3: Chuyển đổi một chuỗi hiện có

Trong Phần 3, chúng ta sẽ tìm hiểu về các Toán tử chuyển đổi dữ liệu trong Reactor Sequence.

  • map : Tìm hiểu cách chuyển đổi dữ liệu trong một Chuỗi bằng cách sử dụng Toán tử map .

  • flatMap : Hãy dành thời gian để hiểu cách chuyển đổi dữ liệu được phát ra bằng Toán tử flatMap và ý nghĩa của việc làm phẳng .

  • Tìm hiểu nhiều phương pháp làm phẳng khác nhau bằng cách sử dụng toán tử mở rộng flatMap : FlatMapIterable , FlatMapMany FlatMapSequential .

  • concat : Tìm hiểu cách nối nhiều Chuỗi bằng Toán tử concat .

  • merge : Hiểu cách hợp nhất nhiều Chuỗi bằng cách sử dụng Toán tử merge .

  • zip : Tìm hiểu cách kết hợp dữ liệu nguồn từ nhiều Chuỗi bằng toán tử zip .

  • và khi : Tìm hiểu cách kiểm tra sự kết thúc của Chuỗi phản ứng dựa trên các điều kiện bằng cách sử dụng các toán tử and when .

  • then : Tìm hiểu toán tử then để thực hiện các tác vụ theo trình tự .

  • collectList, collectMap : Tìm hiểu cách thu thập dữ liệu được phát ra vào Danh sách hoặc Bản đồ và phát ra dữ liệu đó theo hướng xuôi dòng cùng một lúc.


Phần 4: Nhìn trộm vào một chuỗi

Trong Phần 4, chúng ta sẽ tìm hiểu về Toán tử, cho phép chúng ta xem xét bên trong Reactor Sequence.

  • doOnXXXX : Hãy cùng tìm hiểu vòng đời của Sequence bằng cách xem xét nội bộ của Sequence bằng cách sử dụng doOnSubscribe , doOnRequest , doOnNext , doOnComplete , v.v.

Phần 5: Làm việc với thời gian

Trong Phần 5, chúng ta sẽ tìm hiểu các toán tử liên quan đến thời gian trong số các toán tử được Reactor Sequence cung cấp.

  • delayElements : Tìm hiểu về delayElements , cho phép bạn phát dữ liệu theo các khoảng thời gian đều đặn.

  • delaySubscription so với delaySequence : Hiểu cách thức hoạt động của delaySubscription và delaySequence cũng như sự khác biệt giữa chúng.

  • timeout : Tìm hiểu về Toán tử timeout , toán tử này sẽ đưa ra lỗi nếu dữ liệu không được phát ra trong khoảng thời gian nhất định.

Mục 6: Xử lý lỗi

Trong Phần 6, chúng ta sẽ tìm hiểu về các Toán tử được sử dụng để xử lý các lỗi xảy ra trong Chuỗi phản ứng.

  • lỗi : Tìm hiểu cách đưa ra lỗi rõ ràng trong Chuỗi phản ứng bằng cách sử dụng Toán tử error .

  • onErrorReturn, onErrorResume : Tìm hiểu cách phát ra các giá trị thay thế hoặc bắt đầu một Chuỗi thay thế khi xảy ra lỗi bằng cách sử dụng Toán tử onErrorReturnonErrorResume .

  • onErrorContinue : Tìm hiểu cách sử dụng Toán tử onErrorContinue để duy trì một Chuỗi chạy ngay cả khi xảy ra lỗi.

  • onErrorMap : Tìm hiểu cách chuyển đổi các lỗi xảy ra trong một Sequence thành một loại ngoại lệ mới bằng cách sử dụng Toán tử onErrorMap .

  • thử lại : Tìm hiểu cách thử lại một Chuỗi nếu xảy ra lỗi bằng cách sử dụng Toán tử retry .


Phần 7: Phân tách một thông lượng

Trong Phần 7, chúng ta sẽ tìm hiểu về Toán tử phân tách dữ liệu được phát ra từ Chuỗi phản ứng.

  • cửa sổ : Tìm hiểu cách chia dữ liệu được phát ra thành một số cửa sổ nhất định và phát chúng bằng toán tử window .

  • buffer, bufferTimeout : Tìm hiểu cách phát dữ liệu bằng cách lưu trữ dữ liệu trong bộ đệm bằng cách sử dụng toán tử buffer bufferTimeout .

  • groupBy : Tìm hiểu cách nhóm dữ liệu được phát ra theo các tiêu chí cụ thể bằng cách sử dụng Toán tử groupBy .


Phần 8: Phát đa hướng một thông lượng tới nhiều người đăng ký

Trong Phần 8, chúng ta sẽ tìm hiểu về một Toán tử có chức năng truyền dữ liệu đa hướng đến nhiều Người đăng ký bằng một Flux duy nhất.

  • publish : Tìm hiểu cách truyền dữ liệu đa hướng trên một Chuỗi bằng cách sử dụng Toán tử publish .

  • autoConnect : Tìm hiểu cách tự động kết nối với nguồn ngược dòng khi có đăng ký bằng cách sử dụng Toán tử autoConnect .

  • refCount : Tìm hiểu cách tự động kết nối với nguồn ngược dòng khi có đăng ký bằng cách sử dụng Toán tử refCount và tự động ngắt kết nối khỏi nguồn ngược dòng khi đăng ký bị hủy.

  • phát lại : Tìm hiểu cách phát lại dữ liệu trên một Chuỗi khi có đăng ký mới bằng cách sử dụng Toán tử replay .


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

Khóa học đầy đủ của Kevin về ứng dụng web Spring Reactive: Dễ hiểu

  • Phần 1 đề cập đến các khái niệm về lập trình phản ứng và Project Reactor , đóng vai trò trung tâm trong Ứng dụng web phản ứng Spring.

  • Phần 2 chỉ tập trung vào các Toán tử của Project Reactor , vốn không được đề cập trong Phần 1. Toán tử đóng vai trò quan trọng trong các thành phần khác nhau của Reactor. Hơn nữa, khóa học này được thiết kế như một khóa học riêng biệt để những người quen thuộc với lập trình phản ứng có thể tìm hiểu riêng về Toán tử.

  • Phần 3 sẽ tập trung vào các dự án ví dụ hướng dẫn bạn cách Spring WebFlux hoạt động và sau đó xây dựng các ứng dụng web phản ứng . (Dự kiến khai giảng vào năm 2024.)

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

  • Bạn có thể tải xuống và xem lại tài liệu bài giảng PPT được sử dụng trong mỗi lớp học. Mặc dù bạn có thể tải xuống tài liệu bài giảng PPT cho mỗi lớp học trong giờ học, nhưng nếu bạn thấy khó xem vì chúng được phân loại theo từng lớp, chúng tôi khuyên bạn nên truy cập tài liệu bài giảng tích hợp theo từng phần trong Kho lưu trữ Github bên dưới.

  • Tất cả các mã ví dụ được giải thích trong lớp đều có trên GitHub và có thể tải xuống từ địa chỉ bên dưới.

  • Tất cả các bài học đều bao gồm các video có độ dài từ 5 đến 20 phút.

  • Xin lưu ý rằng một số bản ghi video từ phần đầu tiên của quá trình sản xuất bài giảng được đưa vào, do đó cấu trúc gói trong một số video bài giảng có thể khác với mã nguồn ví dụ ban đầu.

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

  • Bắt buộc phải thành thạo Java.

  • Nếu bạn đã có kinh nghiệm học Reactor, bạn không cần phải học Phần 1.

  • Nếu bạn chưa có kinh nghiệm học Reactor hoặc chưa quen với khái niệm lập trình phản ứng, chúng tôi khuyên bạn nên học Phần 1.

  • Nếu bạn sử dụng mã ví dụ trên blog hoặc trang web khác, vui lòng ghi rõ nguồn.

  • Hình ảnh sơ đồ đá cẩm thạch được sử dụng trong bài giảng (trừ hình ảnh từ trang web chính thức của Reactor) có bản quyền và không được sử dụng trên các trang web khác như blog.

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

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

  • Nhà phát triển cấp dưới muốn học lập trình phản ứng

  • Project Reactor là gì?

  • Project Reactor Operator là gì và cách học hiệu quả

  • Project Reactor Operator để có được cái nhìn sâu sắc về cách sử dụng

  • Spring cơ sở để phát triển ứng dụng web phản ứng

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

  • Java

  • Project Reactor là gì?

Xin chào
Đây là

6,267

Học viên

230

Đánh giá

107

Trả lời

4.8

Xếp hạng

6

Các khóa học

- 주력 언어 또는 기술 : Java, Spring Framework, RxJava, Reactor, Spring WebFlux

- (주)코드스테이츠(https://www.codestates.com)에서 Senior Educational Software Engineer(Backend)로 활동
(From 2022.03 To 2024.01.31)

- 프리랜서 개발자 및 강사로 활동(From 2024.02)

- 저서

안녕하세요? Kevin이라고 합니다. ^^

인프런에서 이렇게 강사로서 여러분들을 만나게 되어서 너무 반갑습니다.

어떤 분야든 마찬가지겠지만 특히나 소프트웨어 개발자는 끊임없이 변화하는 트렌드에 뒤처지지 않도록 항상 자기 자신을 갈고 닦는것이 개발자로써 살아남는 유일한 방법이라고 생각하며 항상 배우는 자세로 즐겁게 소프트웨어 개발을 하고 있는 개발자 중 한 명입니다.

제가 가지고 있는 지식과 경험이 다른 분들에게 조금이나마 도움이 되기를 바라면서 인프런에서 강좌를 시작하였습니다.

앞으로 수강생분들에게 현실적으로 도움이 되는 다양한 강좌로 꾸준히 찾아뵙도록 하겠습니다. 감사합니다.

 

질문이나 의견은 언제든지 환영하니, 이메일(it.village.host@gmail.com)로 편하게 얘기해주세요.

 

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

Tất cả

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

8 đánh giá

4.9

8 đánh giá

  • 보키님의 프로필 이미지
    보키

    Đánh giá 47

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    7월 20일부터 WebFlux 1부 강의 듣기 시작해서 9월5일에 2부까지 완강했네요! 개인적으로 Java뿐만 아니라, Kotlin으로 2벌로 따라가기도 했고 다른 강의들도 번갈아가면서 듣느라 오래 걸렸네요ㅎㅎ 강의 정말 잘 들었습니다! 다음으로 Spring + WebFlux를 활용한 3부 강의를 기대해보겠습니다 감사합니다

    • Kevin
      Giảng viên

      열심히 학습하시느라 정말 고생 많으셨습니다. 보키님, 실력이 업그레이드 되셨길 바래요. 감사합니다!

  • Matthew님의 프로필 이미지
    Matthew

    Đánh giá 9

    Đánh giá trung bình 4.4

    5

    72% đã tham gia

    쉽게 설명해주셔서 좋았습니다. :)

    • sjm767님의 프로필 이미지
      sjm767

      Đánh giá 7

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      • 김세진님의 프로필 이미지
        김세진

        Đánh giá 1

        Đánh giá trung bình 5.0

        5

        100% đã tham gia

        웹플럭스 강의가 많이 없는데 괜찮네요 !

        • 최진우님의 프로필 이미지
          최진우

          Đánh giá 1

          Đánh giá trung bình 4.0

          4

          100% đã tham gia

          처음 접해본 webflux에 대해서 상세히 알 수 있었습니다.

          1.402.898 ₫

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

          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!