RestTemplate\uacfc WebClient \ube44\uad50: \uc2a4\ud504\ub9c1 \uc6f9 \ud074\ub77c\uc774\uc5b8\ud2b8 \uc120\ud0dd \uac00\uc774\ub4dc<\/p>\n
\uc2a4\ud504\ub9c1\uc740 RestTemplate\uacfc WebClient \ub450 \uac00\uc9c0 \uc6f9 \ud074\ub77c\uc774\uc5b8\ud2b8\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4. \uc5b4\ub5a4 \uac83\uc744 \uc0ac\uc6a9\ud560\uc9c0 \uc120\ud0dd\ud558\ub294 \uac83\uc740 \ud504\ub85c\uc81d\ud2b8\uc758 \uc694\uad6c \uc0ac\ud56d\uacfc \uac1c\ubc1c\uc790\uc758 \uc120\ud638\ub3c4\uc5d0 \ub530\ub77c \ub2e4\ub985\ub2c8\ub2e4. \uc774 \uae00\uc5d0\uc11c\ub294 RestTemplate\uacfc WebClient\uc758 \ucc28\uc774\uc810\uacfc \uc120\ud0dd \uac00\uc774\ub4dc\ub97c \uc124\uba85\ud558\uace0, \uc131\ub2a5, \ud655\uc7a5\uc131, \ube44\ub3d9\uae30 \ucc98\ub9ac \ub2a5\ub825 \ube44\uad50 \ubd84\uc11d\uc744 \uc81c\uc2dc\ud569\ub2c8\ub2e4.<\/p>\n
RestTemplate\uc740 \uc2a4\ud504\ub9c1 3.0 \uc774\ud6c4\ubd80\ud130 \uc81c\uacf5\ub418\uc5c8\uc73c\uba70, Blocking I\/O \ubc29\uc2dd\uc73c\ub85c HTTP \uc694\uccad\uc744 \ucc98\ub9ac\ud569\ub2c8\ub2e4. \ub530\ub77c\uc11c \uc694\uccad\uc774 \ub05d\ub0a0 \ub54c \uae4c\uc9c0 \ub300\uae30\ud558\uba70, \ub2e4\ub978 \uc694\uccad\uc744 \ucc98\ub9ac\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ubc18\uba74, WebClient\ub294 \uc2a4\ud504\ub9c1 5.0 \uc774\ud6c4\ubd80\ud130 \uc81c\uacf5\ub418\uc5c8\uc73c\uba70, Non-Blocking I\/O \ubc29\uc2dd\uc73c\ub85c \ub3d9\uc791\ud569\ub2c8\ub2e4. \ub530\ub77c\uc11c \uc694\uccad\uc744 \ubcf4\ub0b8 \ud6c4\uc5d0\ub3c4 \ub2e4\ub978 \uc694\uccad\uc744 \ucc98\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
RestTemplate\uc740 Apache HttpClient \ub610\ub294 HttpUrlConnection\uc744 \uc0ac\uc6a9\ud558\uc5ec HTTP \uc694\uccad\uc744 \ucc98\ub9ac\ud569\ub2c8\ub2e4. \ubc18\uba74, WebClient\ub294 Reactor Netty\ub97c \uc0ac\uc6a9\ud558\uc5ec HTTP \uc694\uccad\uc744 \ucc98\ub9ac\ud569\ub2c8\ub2e4. \ub530\ub77c\uc11c WebClient\ub294 \ub354 \ub192\uc740 \uc218\uc900\uc758 \ucd94\uc0c1\ud654\ub97c \uc81c\uacf5\ud558\uba70, \ub354 \ub9ce\uc740 \ucee4\uc2a4\ud130\ub9c8\uc774\uc9d5 \uc635\uc158\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4.<\/p>\n
\uc2a4\ud504\ub9c1 \uacf5\uc2dd \ubb38\uc11c\uc5d0\uc11c\ub294 Non-Blocking I\/O\uac00 \ud544\uc694\ud55c \uacbd\uc6b0 WebClient\ub97c, \uadf8\ub807\uc9c0 \uc54a\uc740 \uacbd\uc6b0 RestTemplate\uc744 \uc0ac\uc6a9\ud558\ub3c4\ub85d \uad8c\uc7a5\ud569\ub2c8\ub2e4. \ub530\ub77c\uc11c \uc694\uccad\/\uc751\ub2f5 \uc2dc\uac04\uc774 \uc9e7\uc740 \uacbd\uc6b0 RestTemplate\uc744 \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4. \ubc18\uba74, \uc694\uccad\/\uc751\ub2f5 \uc2dc\uac04\uc774 \uae34 \uacbd\uc6b0 WebClient\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/p>\n
\ub610\ud55c, WebClient\ub294 \uae30\ubcf8\uc801\uc73c\ub85c \ube44\ub3d9\uae30 \ucc98\ub9ac\ub97c \uc9c0\uc6d0\ud558\uae30 \ub54c\ubb38\uc5d0, Spring WebFlux\uc640 \uac19\uc740 Reactive \ud504\ub85c\uadf8\ub798\ubc0d \ubaa8\ub378\uacfc \ud568\uaed8 \uc0ac\uc6a9\ud560 \ub54c \ub354\uc6b1 \ud6a8\uacfc\uc801\uc785\ub2c8\ub2e4. \ubc18\uba74, RestTemplate\uc740 \ub3d9\uae30 \ucc98\ub9ac \ubc29\uc2dd\uc774\uae30 \ub54c\ubb38\uc5d0, Spring MVC\uc640 \uac19\uc740 \uc804\ud1b5\uc801\uc778 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/p>\n
RestTemplate\uc740 Blocking I\/O \ubc29\uc2dd\uc73c\ub85c \ub3d9\uc791\ud558\uae30 \ub54c\ubb38\uc5d0, \ub3d9\uc2dc\uc5d0 \ucc98\ub9ac\ud560 \uc218 \uc788\ub294 \uc694\uccad\uc758 \uac1c\uc218\uac00 \uc81c\ud55c\uc801\uc785\ub2c8\ub2e4. \ubc18\uba74, WebClient\ub294 Non-Blocking I\/O \ubc29\uc2dd\uc73c\ub85c \ub3d9\uc791\ud558\uae30 \ub54c\ubb38\uc5d0, \ub354 \ub9ce\uc740 \uc694\uccad\uc744 \ub3d9\uc2dc\uc5d0 \ucc98\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
WebClient\ub294 Reactive \ud504\ub85c\uadf8\ub798\ubc0d \ubaa8\ub378\uacfc \ud568\uaed8 \uc0ac\uc6a9\ud560 \ub54c \ub354\uc6b1 \ud6a8\uacfc\uc801\uc785\ub2c8\ub2e4. Reactive \ud504\ub85c\uadf8\ub798\ubc0d \ubaa8\ub378\uc740 \ube44\ub3d9\uae30 \ucc98\ub9ac\uc640 \ub354\ubd88\uc5b4, \ub370\uc774\ud130 \uc2a4\ud2b8\ub9bc \ucc98\ub9ac\ub97c \uc9c0\uc6d0\ud558\uae30 \ub54c\ubb38\uc5d0, WebClient\uc640 \ud568\uaed8 \uc0ac\uc6a9\ud558\uba74 \ub354\uc6b1 \ub192\uc740 \ud655\uc7a5\uc131\uacfc \uc131\ub2a5\uc744 \uc81c\uacf5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
RestTemplate\uc740 Blocking I\/O \ubc29\uc2dd\uc73c\ub85c \ub3d9\uc791\ud558\uae30 \ub54c\ubb38\uc5d0, \uc694\uccad\/\uc751\ub2f5 \uc2dc\uac04\uc774 \uae34 \uacbd\uc6b0\uc5d0\ub294 \ub2e4\ub978 \uc694\uccad\uc744 \ucc98\ub9ac\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ubc18\uba74, WebClient\ub294 Non-Blocking I\/O \ubc29\uc2dd\uc73c\ub85c \ub3d9\uc791\ud558\uae30 \ub54c\ubb38\uc5d0, \uc694\uccad\/\uc751\ub2f5 \uc2dc\uac04\uc774 \uae34 \uacbd\uc6b0\uc5d0\ub3c4 \ub2e4\ub978 \uc694\uccad\uc744 \ucc98\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n
RestTemplate\uacfc WebClient\ub294 \uac01\uac01\uc758 \uc7a5\ub2e8\uc810\uc774 \uc788\uae30 \ub54c\ubb38\uc5d0, \ud504\ub85c\uc81d\ud2b8\uc758 \uc694\uad6c \uc0ac\ud56d\uacfc \uac1c\ubc1c\uc790\uc758 \uc120\ud638\ub3c4\uc5d0 \ub530\ub77c \uc120\ud0dd\ud574\uc57c \ud569\ub2c8\ub2e4. \uc694\uccad\/\uc751\ub2f5 \uc2dc\uac04\uc774 \uc9e7\uace0, \uc804\ud1b5\uc801\uc778 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c\ub294 RestTemplate\uc744 \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\uace0, Reactive \ud504\ub85c\uadf8\ub798\ubc0d \ubaa8\ub378\uacfc \ud568\uaed8 \uc0ac\uc6a9\ud558\uac70\ub098, \uc694\uccad\/\uc751\ub2f5 \uc2dc\uac04\uc774 \uae34 \uacbd\uc6b0\uc5d0\ub294 WebClient\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4. \ub610\ud55c, \uc131\ub2a5, \ud655\uc7a5\uc131, \ube44\ub3d9\uae30 \ucc98\ub9ac \ub2a5\ub825 \ub4f1\uc744 \uace0\ub824\ud558\uc5ec \uc120\ud0dd\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"
RestTemplate\uacfc WebClient \ube44\uad50: \uc2a4\ud504\ub9c1 \uc6f9 \ud074\ub77c\uc774\uc5b8\ud2b8 \uc120\ud0dd \uac00\uc774\ub4dc<\/p>\n","protected":false},"author":1,"featured_media":12633,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1957],"tags":[2446,2428,2156],"class_list":["post-25189","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-development","tag-mvc","tag-reactive","tag-spring"],"acf":[],"_links":{"self":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/posts\/25189","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/comments?post=25189"}],"version-history":[{"count":0,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/posts\/25189\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/media\/12633"}],"wp:attachment":[{"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/media?parent=25189"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/categories?post=25189"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/m9js.shop\/blog\/wp-json\/wp\/v2\/tags?post=25189"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}