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

文章目录

微服务

微服务介绍

微服务框架

自动化部署

微服务技术栈

认识微服务









springcloud官方地址

服务拆分



微服务远程调用



java 复制代码
@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();
    }
}
java 复制代码
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搭建


注册




java 复制代码
@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;
    }
}
负载均衡





java 复制代码
@Bean
    public IRule randomRule(){
        return new RandomRule();
    }
    
---------------------
//yml:
userservice:
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule  # 负载均衡规则
    
饥饿加载
java 复制代码
ribbon:
  eager-load:
    enabled: true # 开启饥饿加载
    clients: # 指定饥饿加载的服务名称
      - userservice
相关推荐
野熊佩骑4 小时前
Kubernetes实战系列文章(三) 之 K8S运维常用命令
linux·运维·docker·微服务·云原生·容器·kubernetes
ZYJCSZKJ7 小时前
基于微服务架构的本地生活POI团购系统设计与高并发实践
微服务·架构·生活
重生之我是Java开发战士10 小时前
【Spring Cloud】认识微服务与工程搭建
spring·spring cloud·微服务
MetaLite11 小时前
微服务认证选型-SpringSecurity-SaToken与自研方案
微服务·云原生·架构
10mAh15 小时前
【Docker】磁盘空间被占满怎么清理?——overlay2、容器日志与 Build Cache 排查实战
docker·容器·eureka
梦Arrebol1 天前
Kubernetes 微服务
微服务·容器·kubernetes
源代码•宸1 天前
前置准备:定时微服务背景和现状
开发语言·经验分享·后端·微服务·云原生·架构·golang
名字还没想好☜1 天前
Docker buildx 多架构镜像实战:一次构建 amd64+arm64,告别 exec format error
运维·docker·eureka·架构·kubernetes
墨着染霜华1 天前
SpringCloud Gateway线上Nginx代理后自定义下划线请求头丢失(app_name/app_version获取不到)完美解决
nginx·spring cloud·gateway
码云数智-园园1 天前
我为什么从微服务退回单体架构
微服务·云原生·架构