Java微服务学习Day1

news/2024/7/5 3:36:37

文章目录

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

认识微服务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注册中心(Service Registry):
注册中心是微服务架构中的一个核心组件,用于管理和维护所有微服务实例的注册信息。

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

配置中心(Configuration Center):

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

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

服务拆分及远程调用

服务拆分

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

服务远程调用

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
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;
    }
}

在这里插入图片描述

提供者与消费者

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

Eureka注册中心

介绍

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

构建EurekaServer

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

注册user-service

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

order-service完成服务拉取

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

Ribbon负载均衡

介绍

在这里插入图片描述

原理

在这里插入图片描述

策略

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第二种方法根据yml的名称只针对某一个微服务。

饥饿加载

在这里插入图片描述

在这里插入图片描述

Nacos注册中心

介绍

在这里插入图片描述

配置

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

分级存储

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

负载均衡

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

环境隔离

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

nacos注册中心原理

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


http://lihuaxi.xjx100.cn/news/2024125.html

相关文章

【开源】SpringBoot框架开发APK检测管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 开放平台模块2.3 软件档案模块2.4 软件检测模块2.5 软件举报模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 开放平台表3.2.2 软件档案表3.2.3 软件检测表3.2.4 软件举报表 四、系统展示五、核心代…

HTTP 超文本传送协议

1 超文本传送协议 HTTP HTTP 是面向事务的 (transaction-oriented) 应用层协议。 使用 TCP 连接进行可靠的传送。 定义了浏览器与万维网服务器通信的格式和规则。 是万维网上能够可靠地交换文件(包括文本、声音、图像等各种多媒体文件)的重要基础。 H…

Kafka 入门笔记

课程地址 概述 定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列(MQ) 发布/订阅:消息的发布者不会将消息直接发送给特定的订阅者,而是将发布的消息分为不同的类别,订阅者只接受感兴趣的消息 消息队列 消息队…

【数据结构】11 堆栈(顺序存储和链式存储)

定义 可认为是具有一定约束的线性表,插入和删除操作都在一个称为栈顶的端点位置。也叫后入先出表(LIFO) 类型名称:堆栈(STACK) 数据对象集: 一个有0个或者多个元素的有穷线性表。 操作集&#…

vulnhub中Beelzebub靶机

渗透思路 一.信息收集1.网段探测2.端口探测3.常见漏洞扫描4.目录扫描5.web页面分析 二.渗透继续目录扫描ssh连接提权提权,flag 一.信息收集 1.网段探测 ┌──(root㉿kali)-[~] └─# nmap -Pn 192.168.0.0/24 --min-rate 10000 Starting …

aardio 编辑GUI界面,调用 python 脚本示例

aardio 中调用 python 的方法有两种,py3 和 process.python 模块 py3 模块:如果经常要拿到python返回的值或从aardio中传数据给python去处理,aardio和python的交互比较多的话,可以考虑使用py3模块,缺点是:p…

【EAI 016】VIMA: General Robot Manipulation with Multimodal Prompts

论文标题:VIMA: General Robot Manipulation with Multimodal Prompts 论文作者:Yunfan Jiang, Agrim Gupta, Zichen Zhang, Guanzhi Wang, Yongqiang Dou, Yanjun Chen, Li Fei-Fei, Anima Anandkumar, Yuke Zhu, Linxi Fan 作者单位:Stanfo…

轻薄型机型EM-T195,对移动作业so easy

由于移动工作环境特殊且不固定,不仅温差大,还会产生潮湿、干燥、灰尘等恶劣气候环境,使普通平板电脑无法适应移动工作。但三防平板电脑是设计制造的,材料特殊,可以平静面对上述恶劣环境,保证随时随地保持良…