国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

分布式-SpringBoot-SpringCloud-Eureka

Olivia / 2837人閱讀

摘要:環境搭建注冊中心依賴如下所示配置應用啟動端口注冊中心管理中的應用名稱登陸注冊管理中的的賬號密碼是否把自己注冊到注冊中心是否從上來獲取服務的注冊信息啟動注冊中心啟動后訪問登陸界面輸入設置的賬號密碼進

環境

Java version 1.8

SpringBoot version 2.1.7

搭建注冊中心 Eureka-server

pom.xml 依賴如下所示:


    
        org.springframework.cloud
        spring-cloud-starter-netflix-eureka-server
    

    
        org.springframework.boot
        spring-boot-starter-test
        test
    
    
        org.springframework.boot
        spring-boot-starter-security
    
    
        org.springframework.boot
        spring-boot-starter-security
    

    
        javax.xml.bind
        jaxb-api
    
    
        com.sun.xml.bind
        jaxb-impl
        2.3.0
    
    
        org.glassfish.jaxb
        jaxb-runtime
        2.3.0
    
    
        javax.activation
        activation
        1.1.1
    

配置 Eureka application.properties

# 應用啟動端口
server.port=8090

# 注冊中心管理中的 應用名稱
spring.application.name=eureka-server

# 登陸注冊管理中的的賬號密碼
spring.security.user.roles=SUPERUSER
spring.security.user.name=eureka
spring.security.user.password=123456

# 是否把自己注冊到注冊中心
eureka.client.register-with-eureka=true

# 是否從eureka上來獲取服務的注冊信息
eureka.client.fetch-registry=false

eureka.instance.hostname=localhost
eureka.client.serviceUrl.defaultZone=http://eureka:123456@localhost:8090/eureka

啟動注冊中心 啟動后訪問(http://127.0.0.1:8090)

登陸界面

2. 輸入設置的賬號密碼(user:eureka pwd:123456)

3. 進入注冊中心頁面

需要注意的是 需要處理下CSRF不然服務提供者注冊不進來 啟動入口文件如下

EurekaServiceApplication.java

@EnableEurekaServer
@SpringBootApplication
public class EurekaServiceApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaServiceApplication.class, args);
    }


    /**
     * 忽略 uri /eureka/** 的CSRF檢測
     */
    @EnableWebSecurity
    static class WebSecurityConfig extends WebSecurityConfigurerAdapter {
        @Override
        protected void configure(HttpSecurity http) throws Exception {
            http.csrf().ignoringAntMatchers("/eureka/**");
            super.configure(http);
        }
    }
}

簡單的注冊中心已經搭建完成

搭建服務提供者 Provider-service

首先還是配置文件 application.properties

服務端口
server.port=8081

# 服務應用名稱
spring.application.name=provider-ticket

# 是否允許使用ip連接
eureka.instance.ip-address=true

# 注意 http://用戶名:密碼@主機:端口/eureka 需要與服務中心里配置的一樣
eureka.client.serviceUrl.defaultZone=http://eureka:123456@localhost:8090/eureka

啟動 項目后會自動把服務注冊到配置的服務中心

以下是我做的測試代碼

TicketController.java

package com.yourdream.providerticket.controller;

import com.yourdream.providerticket.service.TicketService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class TicketController {

    @Autowired
    TicketService ticketService;

    @GetMapping("/ticket")
    public String getTicket(){
        System.out.println("server-8081");
        return ticketService.getTicket();
    }
}

TicketService

package com.yourdream.providerticket.service;

import org.springframework.stereotype.Service;

@Service
public class TicketService {

    public String getTicket()
    {
        return "《哪吒之魔童降世》";
    }
}

ProviderTicketApplication

package com.yourdream.providerticket;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class ProviderTicketApplication {

    public static void main(String[] args) {
        SpringApplication.run(ProviderTicketApplication.class, args);
    }

}

到此一個簡單的服務提供者搭建完成

搭建服務消費者 Consumer-user

首先還是配置文件 application.properties

server.port=8100
spring.application.name=consumer-user
eureka.client.serviceUrl.defaultZone=http://eureka:123456@localhost:8090/eureka
eureka.instance.ip-address=true

首先需要明確 消費者與服務提供者之間通訊協議是HTTP

看下實例代碼

啟動入口 ConsumerUserApplication.java

package com.yourdream.consumeruser;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;

@EnableDiscoveryClient //開啟發現服務功能
@SpringBootApplication
public class ConsumerUserApplication {

    public static void main(String[] args) {
        SpringApplication.run(ConsumerUserApplication.class, args);
    }

    @LoadBalanced //開啟負載均衡器
    @Bean //注冊 RestTemplate 服務
    public RestTemplate restTemplate()
    {
        return new RestTemplate();
    }
}

UserController.java

package com.yourdream.consumeruser.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;


@RestController
public class UserController {

    // 幫助我們向 注冊的實例服務 發起http請求
    @Autowired
    RestTemplate restTemplate;

    @GetMapping("/buy")
    public String buyTicket(String name)
    {
        //PROVIDER-TICKET 服務提供者名稱
        String forObject = restTemplate.getForObject("http://PROVIDER-TICKET/ticket", String.class);
        return name + "購買了" + forObject;
    }
}

啟動服務 訪問http://127.0.0.1:8100/buy

到此一個簡單的服務消費者搭建完成

原文

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76261.html

相關文章

  • 布式ID系列(1)——為什么需要布式ID以及布式ID的業務需求

    摘要:同時除了對號碼自身的要求,業務還對號生成系統的可用性要求極高,想象一下,如果生成系統癱瘓,整個美團點評支付優惠券發券騎手派單等關鍵動作都無法執行,這就會帶來一場災難。 分布式id主要用到哪些地方 在復雜分布式系統中,往往需要對大量的數據和消息進行唯一標識。如在美團點評的金融、支付、餐飲、酒店、貓眼電影等產品的系統中,數據日漸增長,對數據分庫分表后需要有一個唯一ID來標識一條數據或消息,...

    Snailclimb 評論0 收藏0
  • 布式數據庫火了 開源填補數據庫空白

    摘要:利用分布式數據庫實現了物理分離,邏輯統一的優勢。這樣的基本特點讓分布式數據庫具有數據獨立性和位置透明性,局部應用響應速度升級。在互聯網大潮的背景下,中國的分布式數據庫出現,這也填補了國內數據庫的空白。 原文地址:http://digi.163.com/17/1114/0... 分布式數據庫在今年突然成為熱點技術。這背后究竟有哪些環境變化導致了這種技術演進,分布式數據庫的優勢在哪兒?這種...

    wqj97 評論0 收藏0

發表評論

0條評論

Olivia

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<