黑马微服务springcloud day01 (微服务介绍、Eureka)

发布于:2024-04-20 ⋅ 阅读:(151) ⋅ 点赞:(0)

微服务

微服务介绍

微服务框架
在这里插入图片描述
自动化部署
在这里插入图片描述
微服务技术栈
在这里插入图片描述
在这里插入图片描述

认识微服务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

springcloud官方地址

服务拆分

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

微服务远程调用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

    public static void main(String[] args) {
        SpringApplication.run(OrderApplication.class, args);
    }
    @Bean
    public RestTemplate restTemplate(){
        return new RestTemplate();
    }
}
public Order queryOrderById(Long orderId) {
        // 1.查询订单
        Order order = orderMapper.findById(orderId);
        String url = "http://localhost:8081/user/"+order.getUserId();
//        restTemplate.getForObject(url:传路径,User.class:把json对象直接转成User对象或者其他需要的对象)
        User user = restTemplate.getForObject(url, User.class);
        order.setUser(user);
        // 4.返回
        return order;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Eureka

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Eureka搭建

在这里插入图片描述
在这里插入图片描述

注册

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

@Service
public class OrderService {

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

    public Order queryOrderById(Long orderId) {
        // 1.查询订单
        Order order = orderMapper.findById(orderId);
//        服务地址eureka会自己去调用user端口
        String url = "http://userservice/user/"+order.getUserId();
//        restTemplate.getForObject(url:传路径,User.class:把json对象直接转成User对象或者其他需要的对象)
        User user = restTemplate.getForObject(url, User.class);
        order.setUser(user);
        // 4.返回
        return order;
    }
}

在这里插入图片描述

负载均衡

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

@Bean
    public IRule randomRule(){
        return new RandomRule();
    }
    
---------------------
//yml:
userservice:
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule  # 负载均衡规则
    
饥饿加载

在这里插入图片描述

ribbon:
  eager-load:
    enabled: true # 开启饥饿加载
    clients: # 指定饥饿加载的服务名称
      - userservice

在这里插入图片描述