摘要:第篇電影微服務(wù),也注冊到中,通過協(xié)議訪問已注冊到生態(tài)圈中的用戶微服務(wù)一大致介紹在服務(wù)治理框架中,微服務(wù)與微服務(wù)之間通過協(xié)議進行通信用戶微服務(wù)作為消費方電影微服務(wù)作為提供方都注冊到中在電影微服務(wù)層通過的硬編碼配置方式實現(xiàn)服務(wù)之間的通信二實現(xiàn)
SpringCloud(第 005 篇)電影微服務(wù),也注冊到 EurekaServer 中,通過 Http 協(xié)議訪問已注冊到生態(tài)圈中的用戶微服務(wù)
-
一、大致介紹1、在 eureka 服務(wù)治理框架中,微服務(wù)與微服務(wù)之間通過 Http 協(xié)議進行通信; 2、用戶微服務(wù)作為消費方、電影微服務(wù)作為提供方都注冊到 EurekaServer 中; 3、在電影微服務(wù)Web層通過 application.yml 的硬編碼配置方式實現(xiàn)服務(wù)之間的通信;二、實現(xiàn)步驟 2.1 添加 maven 引用包
2.2 添加應(yīng)用配置文件(springms-consumer-moviesrcmainresourcesapplication.yml)4.0.0 springms-consumer-movie 1.0-SNAPSHOT jar com.springms.cloud springms-spring-cloud 1.0-SNAPSHOT org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-actuator org.springframework.cloud spring-cloud-starter-eureka
spring: application: name: springms-consumer-movie server: port: 7901 user: userServicePath: http://localhost:7900/simple/ eureka: client: # healthcheck: # enabled: true serviceUrl: defaultZone: http://admin:admin@localhost:8761/eureka instance: prefer-ip-address: true instance-id: ${spring.application.name}:${spring.cloud.client.ipAddress}:${spring.application.instance_id:${server.port}}2.3 添加實體用戶類User(springms-consumer-moviesrcmainjavacomspringmscloudentityUser.java)
package com.springms.cloud.entity; import java.math.BigDecimal; public class User { private Long id; private String username; private String name; private Short age; private BigDecimal balance; public Long getId() { return this.id; } public void setId(Long id) { this.id = id; } public String getUsername() { return this.username; } public void setUsername(String username) { this.username = username; } public String getName() { return this.name; } public void setName(String name) { this.name = name; } public Short getAge() { return this.age; } public void setAge(Short age) { this.age = age; } public BigDecimal getBalance() { return this.balance; } public void setBalance(BigDecimal balance) { this.balance = balance; } }2.4 添加電影Web訪問層Controller(springms-consumer-moviesrcmainjavacomspringmscloudcontrollerMovieController.java)
package com.springms.cloud.controller; import com.springms.cloud.entity.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.client.RestTemplate; @RestController public class MovieController { @Autowired private RestTemplate restTemplate; @Value("${user.userServicePath}") private String userServicePath; @GetMapping("/movie/{id}") public User findById(@PathVariable Long id) { return this.restTemplate.getForObject(this.userServicePath + id, User.class); } }2.5 添加電影微服務(wù)啟動類(springms-consumer-moviesrcmainjavacomspringmscloudMsConsumerMovieApplication.java)
package com.springms.cloud; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.context.annotation.Bean; import org.springframework.web.client.RestTemplate; /** * 電影微服務(wù),也注冊到 EurekaServer 中,通過 Http 協(xié)議訪問已注冊到生態(tài)圈中的用戶微服務(wù)。 * * @author hmilyylimh * * @version 0.0.1 * * @date 2017/9/17 * */ @SpringBootApplication @EnableEurekaClient public class MsConsumerMovieApplication { @Bean public RestTemplate restTemplate(){ return new RestTemplate(); } public static void main(String[] args) { SpringApplication.run(MsConsumerMovieApplication.class, args); System.out.println("【【【【【【 電影微服務(wù) 】】】】】】已啟動."); } }三、測試
/**************************************************************************************** 一、電影微服務(wù),也注冊到 EurekaServer 中,通過 Http 協(xié)議訪問已注冊到生態(tài)圈中的用戶微服務(wù): 1、啟動 springms-discovery-eureka 模塊服務(wù),啟動1個端口; 2、啟動 springms-provider-user 模塊服務(wù),啟動1個端口; 3、啟動 springms-consumer-movie 模塊服務(wù),啟動1個端口; 4、在瀏覽器輸入地址 http://localhost:7900/simple/1 可以看到信息成功的被打印出來,說明用戶微服務(wù)正常; 5、在瀏覽器輸入地址 http://localhost:8761 并輸入用戶名密碼 admin/admin 進入Eureka微服務(wù)顯示在網(wǎng)頁中,驗證用戶微服務(wù)、電影微服務(wù)確實注冊到了 eureka 服務(wù)中; 6、在瀏覽器輸入地址http://localhost:7901/movie/1 可以看到用戶信息成功的被打印出來; ****************************************************************************************/四、下載地址
https://gitee.com/ylimhhmily/SpringCloudTutorial.git
SpringCloudTutorial交流QQ群: 235322432
SpringCloudTutorial交流微信群: 微信溝通群二維碼圖片鏈接
歡迎關(guān)注,您的肯定是對我最大的支持!!!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/70444.html
摘要:第篇服務(wù)發(fā)現(xiàn)服務(wù)端微服務(wù)一大致介紹眾所周知,在現(xiàn)在互聯(lián)網(wǎng)開發(fā)中,訪問地址的和端口號是動態(tài)的,一個服務(wù)停掉再重新啟用后和端口就可能發(fā)生了改變,所以用硬編碼是肯定不行了。再對外提供服務(wù)的時候便不再使用掛掉的服務(wù)提供者的和端口。 SpringCloud(第 003 篇)服務(wù)發(fā)現(xiàn)服務(wù)端EurekaServer微服務(wù) - 一、大致介紹 1、眾所周知,在現(xiàn)在互聯(lián)網(wǎng)開發(fā)中,訪問地址的IP和端口號是...
SpringCloud(第 051 篇)EurekaServer集群高可用注冊中心以及簡單的安全認證 - 一、大致介紹 1、前面章節(jié)分析了一下 Eureka 的源碼,我們是不是在里面注意到了 Peer 節(jié)點的復制,為什么要復制節(jié)點同步信息呢,其實就是為了同一個集群之間的EurekaServer一致性方案的一個實現(xiàn); 2、于是我們在本章節(jié)就真正的來通過代碼來實現(xiàn)一下EurekaServer之間的高...
摘要:接收參數(shù)對象添加用戶微服務(wù)啟動類用戶服務(wù)類添加服務(wù)注冊,將用戶微服務(wù)注冊到中。 SpringCloud(第 004 篇)用戶服務(wù)類(添加服務(wù)注冊,將用戶微服務(wù)注冊到 EurekaServer 中) - 一、大致介紹 通過添加注解 EnableEurekaClient,將用戶微服務(wù)注冊到 EurekaServer 中。 二、實現(xiàn)步驟 2.1 添加 maven 引用包 4.0....
摘要:在應(yīng)用啟動后,將會向發(fā)送心跳默認周期為秒,如果在多個心跳周期沒有收到某個節(jié)點的心跳,將會從服務(wù)注冊表中把這個服務(wù)節(jié)點移除默認秒。進入類看看,看這個類的名字,見名知意,應(yīng)該就是的啟動類了。。。分析一由于是我們剛剛打斷點 SpringCloud(第 049 篇)Netflix Eureka 源碼深入剖析(上) - 一、大致介紹 1、鑒于一些朋友的提問并提議講解下eureka的源碼分析,由此...
閱讀 3417·2021-11-24 09:38
閱讀 3194·2021-11-22 09:34
閱讀 2108·2021-09-22 16:03
閱讀 2368·2019-08-29 18:37
閱讀 380·2019-08-29 16:15
閱讀 1770·2019-08-26 13:56
閱讀 866·2019-08-26 12:21
閱讀 2207·2019-08-26 12:15