Java微服务学习Day1

文章目录

  • 认识微服务
  • 服务拆分及远程调用
    • 服务拆分
    • 服务远程调用
    • 提供者与消费者
  • Eureka注册中心
    • 介绍
    • 构建EurekaServer
    • 注册user-service
    • order-service完成服务拉取
  • Ribbon负载均衡
    • 介绍
    • 原理
    • 策略
    • 饥饿加载
  • Nacos注册中心
    • 介绍
    • 配置
    • 分级存储
    • 负载均衡
    • 环境隔离
    • nacos注册中心原理

认识微服务

Java微服务学习Day1_第1张图片
Java微服务学习Day1_第2张图片
Java微服务学习Day1_第3张图片
Java微服务学习Day1_第4张图片
Java微服务学习Day1_第5张图片
Java微服务学习Day1_第6张图片
注册中心(Service Registry):
注册中心是微服务架构中的一个核心组件,用于管理和维护所有微服务实例的注册信息。

  • 微服务启动时会将自己的网络位置(例如 IP 地址、端口号)以及其他元数据(如服务名称、版本号等)注册到注册中心。
  • 当其他微服务需要调用某个服务时,它们会向注册中心查询该服务的实例信息,然后直接调用其中一个实例。
  • 注册中心通常实现了服务发现机制,使得微服务能够动态地发现和调用其他微服务,从而实现服务之间的通信。

配置中心(Configuration Center):

配置中心用于集中管理微服务应用的配置信息,包括各种环境下的配置项、属性值、特性开关等。

  • 微服务在启动时可以从配置中心动态获取配置信息,而不需要硬编码在代码中,这样可以实现配置的集中管理和动态更新。
  • 配置中心通常提供了版本管理、变更通知、安全性等功能,以便对配置进行有效管理和控制。
  • 配置中心可以帮助微服务应用实现动态的配置更新,从而减少了重新部署的需要,提高了系统的灵活性和可维护性。
    Java微服务学习Day1_第7张图片
    Java微服务学习Day1_第8张图片
    Java微服务学习Day1_第9张图片
    Java微服务学习Day1_第10张图片

服务拆分及远程调用

服务拆分

Java微服务学习Day1_第11张图片
Java微服务学习Day1_第12张图片
Java微服务学习Day1_第13张图片

服务远程调用

Java微服务学习Day1_第14张图片

Java微服务学习Day1_第15张图片
Java微服务学习Day1_第16张图片
java启动类

@MapperScan("cn.itcast.order.mapper")
@SpringBootApplication
public class OrderApplication {

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

    /**
     * 创建RestTemplate并注入Spring容器
     */
    @Bean
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }
}

Service实现类

@Service
public class OrderService {

    @Autowired
    private OrderMapper orderMapper;
    @Autowired
    private RestTemplate restTemplate;

    public Order queryOrderById(Long orderId) {
        // 1.查询订单
        Order order = orderMapper.findById(orderId);
        //2.利用RestTemplate发起HTTP请求,查询用户
        //2.1url路径
        String url = "http://localhost:8081/user/" + order.getUserId();
        //2.2发送HTTP请求实现远程调用
        User user = restTemplate.getForObject(url, User.class);
        //3.封装User到Order
        order.setUser(user);
        // 4.返回
        return order;
    }
}

Java微服务学习Day1_第17张图片

提供者与消费者

Java微服务学习Day1_第18张图片
Java微服务学习Day1_第19张图片

Eureka注册中心

介绍

Java微服务学习Day1_第20张图片
Java微服务学习Day1_第21张图片
Java微服务学习Day1_第22张图片

构建EurekaServer

Java微服务学习Day1_第23张图片
Java微服务学习Day1_第24张图片

注册user-service

Java微服务学习Day1_第25张图片
Java微服务学习Day1_第26张图片
Java微服务学习Day1_第27张图片

order-service完成服务拉取

Java微服务学习Day1_第28张图片
Java微服务学习Day1_第29张图片

Ribbon负载均衡

介绍

Java微服务学习Day1_第30张图片

原理

Java微服务学习Day1_第31张图片

策略

Java微服务学习Day1_第32张图片
Java微服务学习Day1_第33张图片
Java微服务学习Day1_第34张图片
第二种方法根据yml的名称只针对某一个微服务。

饥饿加载

Java微服务学习Day1_第35张图片

Java微服务学习Day1_第36张图片

Nacos注册中心

介绍

Java微服务学习Day1_第37张图片

配置

Java微服务学习Day1_第38张图片
Java微服务学习Day1_第39张图片
启动
Java微服务学习Day1_第40张图片
Java微服务学习Day1_第41张图片

分级存储

Java微服务学习Day1_第42张图片
Java微服务学习Day1_第43张图片
Java微服务学习Day1_第44张图片

负载均衡

Java微服务学习Day1_第45张图片
Java微服务学习Day1_第46张图片
Java微服务学习Day1_第47张图片
Java微服务学习Day1_第48张图片

环境隔离

Java微服务学习Day1_第49张图片
Java微服务学习Day1_第50张图片
Java微服务学习Day1_第51张图片
Java微服务学习Day1_第52张图片
Java微服务学习Day1_第53张图片
Java微服务学习Day1_第54张图片

nacos注册中心原理

Java微服务学习Day1_第55张图片
在这里插入图片描述

你可能感兴趣的:(Java,微服务,学习,spring,cloud,eureka,nacos,ribbon)