3,981   4 ปรึกษาเรื่อง WebFlux หน่อยครับ



dekdoy


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 1 )


ตอบกระทู้ ( 5 )
เขียนบทความ ( 0 )

พอดีมือใหม่ครับ กำลังหัดใช้ WebFlux อยากรู้ว่า เราควรจะใช้ Mono หรือ Flux ในกรณีไหนยังไงหรอครับ เท่าที่ผมลองเล่นมาคือมันก็ใช้ Mono อย่างเดียวเลยก็ได้นะครับ ขอบคุณครับ
ความคิดเห็นที่ 1
อ้างอิงความเห็น


bamossza


พลังงานการช่วยเหลือ
( Level 3 )


คะแนนขอบคุณจากสมาชิก
( 16 )


ตอบกระทู้ ( 112 )
เขียนบทความ ( 28 )

ผมจะเทียบให้เห็นภาพนะครับ

Flux<T> สามารถ Response Data ได้ตั้งแต่ 0 - n

ผมจะสมมติตัวอย่าง Flux ให้เห็นภาพครับ
Flux<Customer>​

โดยที่ Flux สามารถรับข้อมูลได้เรื่อยๆ เทียบเท่ากับการใช้ Observable ของ RxJava / RxJS ครับ
ค่าที่ได้จาก Response คือ n ชุดข้อมูล Customer และเมื่อแปลงเป็น Mono ก็จะได้ List ของ Customer

Flux<Customer> --แปลงร่าง--> Mono<List<Customer>>​


Mono<T> สามารถ Response Data ได้ตั้งแต่ 0 - 1 เท่านั้น

ผมจะสมมติตัวอย่าง Mono ให้เห็นภาพครับ
Mono<Customer>

ค่าที่ได้จาก Response คือ 1 ชุดข้อมูล Customer เท่านั้น

Mono<List<Customer>>

ค่าที่ได้จาก Response คือ 1 ชุดข้อมูล List Customer เท่านั้น​

ประมาณนี้ครับ

ความคิดเห็นที่ 2
อ้างอิงความเห็น


dekdoy


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 1 )


ตอบกระทู้ ( 5 )
เขียนบทความ ( 0 )

อ้างอิงจากความเห็นที่ 1


ขอบคุณครับ

แต่ผมก็ยังสงสัยอีกนิดครับ จริงๆแล้ว ผมก็สามารถแปลง จาก Flux เป็น Mono List ก่อน แล้วค่อย return ออกมาก็ได้หรือเปล่าครับ เพราะยังไง response ก็ต้องเป็น 1 เดียวอยู่ดี ไม่ว่าจะ List หรือ Object ครับ
ความคิดเห็นที่ 3
อ้างอิงความเห็น


bamossza


พลังงานการช่วยเหลือ
( Level 3 )


คะแนนขอบคุณจากสมาชิก
( 16 )


ตอบกระทู้ ( 112 )
เขียนบทความ ( 28 )

อ้างอิงจากความเห็นที่ 2


มันก็ใช้ได้ครับ แต่ถ้าเมื่อไหร่ เราต้องการ Modify ค่าต่างๆ ภายใน Object List มันจะมีปัญหาครับ แต่ถ้าเป็น Flux อยู่แล้วมันสามารถทำงานต่อเนื่องได้เลยครับ

แต่...

ถ้าคุณจะยืนยันพ่นด้วย Mono List ออกมาอีก ก็ไม่ผิดนะครับ แต่เวลาคุณต้องการ Modify ค่าต่างๆ ภายใน Object List คุณอาจจะต้องใช้ for หรือ forEach ในการวนค่า ซึ่งจริงๆ แล้ว ผมมองว่าไม่ค่อยเหมาะเท่าไหร่ แต่ไม่ผิดครับ ผมมองว่ามันควรจะเป็น Full Reactive จริงๆ 
ความคิดเห็นที่ 4
อ้างอิงความเห็น


dekdoy


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 1 )


ตอบกระทู้ ( 5 )
เขียนบทความ ( 0 )

ขอบคุณครับ

แสดงความเห็น

อัพโหลดรูปภาพ..คลิก *** เพื่อความปลอดภัยในด้านสิทธิ ไม่อนุญาติให้นำลิ้งรูปภาพจากที่อื่นมาแปะ ถ้าพบเจอ ลบกระทู้ ทันที ***

Back to Top