Day01 每日必会

简介: ca

微服务的好处?一定比单体好吗?

面试官这个不一定,技术还是为业务服务的,简单的业务单体肯定更好,他没有分布式事务、服务雪崩等一系列服务治理的问题,并且部署、维护成本低。微服务更适合一些表模型复杂、业务链路长的场景,这样虽然会带来一些服务治理问题,但是也降低了服务之间的耦合,有利于后续的服务拓展。

微服务你用到了哪些中间件

我的项目用到了Nacos,当做注册和配置中心;远程服务调用OpenFeign;网关GateWay

SPRINGCLOUDGATEWAYZUUL

SPRINGCLOUDALIBABA

SPRINGCLOUDCONFIG,NACOS

EUREKACONSU

SPRINGCLOUD

服务监控和保护

DUBBO-ADNIN,功

SPRINGCLOUDGIATEWAY

SPRINGCLOUACONFIG

ZK,REDIS,NACOS

配置中心

SENTINEL

DUBBO

服务网关

IGNHTTP协I

HSTRIX

服务远程调用

功能弱

DUBBO,FEIGRN

DUBBO协议

注册中心

EUEKA

NACOS

ZUL


Nacos注册中心的心跳机制

Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式临时实例心跳不正常会被剔除,非临时实例则不会被剔除

NACOS注册中心细节分

服务消费者

册服务信息

ACOS主动询问

L0CALAOST:8O81

服务列表缓存

USER-SEVICE:

采用心跳监测

注册中心

服务PU11

服务提供者

定时拉取

ACOS

远程调用

非临时实例

临时实例

00


这里也有可能问到Eureka和Nacos的区别,我贴个图有点印象(比较少,了解即可)

EUREKA-CLIENT

心跳续约,每30秒1次

UREKA的作用

USERSERVICE

1OCA1HOST:8082

UREKA-SEVER

服务消费者

USERSERVICE

1OCA1HOST:8080

USER-SERVICE的信息

服务提供者

2)拉取服务

LOCA1HOST:8081

1OCA1HOST:8081

1OCA1HOST:8082

)远程调用

1OCALHOST:8083

注册中心

1)注册服务信息

OCA1HOST:8081

1OCA1HOST:8083

SER一SERVICE

ORDER-SERVICE:

....,3)负载均衡

USER-SERVICE:

USER-SERVICE

ERVICE

8083

8082

ORDER-

8081

8080


Nacos与eureka的共同点
都支持服务注册和服务拉取
都支持服务提供者心跳方式做健康检测
Nacos与Eureka的区别
Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式
临时实例心跳不正常会被剔除,非临时实例则不会被剔除
Nacos支持服务列表变更的消息推送模式,服务列表更新更及时
Nacos集群默认采用AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式

常见的负载均衡算法

有轮询、加权轮询、权重、响应时间、随机、区域可用等吧,我们项目中一般都是轮询,它的意思就是当有多台机器的时候,就一个一个轮着来。

理论专项
Java基础
JMM模型
HashMap
线程池核心参数
synchronized

21 人点赞


21


相关文章
|
30天前
|
Java Go 开发者
IDEA开发常用的快捷键
IntelliJ IDEA常用快捷键汇总:涵盖代码生成(如main、sout)、编辑(复制、删除、重命名)、导航(跳转、查找)、格式化、代码阅读及版本控制等高频操作,提升开发效率。熟练掌握可显著优化编码体验,是Java开发者必备技能。
198 1
|
30天前
|
Oracle Java 关系型数据库
Java命名规范
Java命名规范涵盖包、类、方法、变量等命名规则。包名全小写,类名首字母大写采用驼峰法,接口常用形容词,抽象类以Abstract/Base开头,异常类以Exception结尾,方法名小写驼峰,常量全大写用下划线分隔,枚举值按常量规范命名,提升代码可读性与一致性。
221 0
|
2月前
|
Arthas 运维 监控
|
2月前
|
存储 C++
C++变量类型
C++变量类型包括基本类型如bool、char、int、float、double等,支持整数、浮点数、字符和布尔值的存储。还包含指针、数组、结构体、类、共用体等复合类型。变量命名由字母、数字、下划线组成,首字符须为字母或下划线。支持变量声明与定义分离,局部变量需显式初始化,静态变量自动初始化为0。
86 1
|
2月前
|
存储 安全 编译器
C++数据类型:
C++基本数据类型包括bool、char、int、float、double等,支持signed、unsigned、short、long修饰。wchar_t用于宽字符,typedef可为类型定义别名,enum定义枚举常量。支持static_cast、dynamic_cast、const_cast和reinterpret_cast四种类型转换,实现安全或强制类型变换。
75 1
|
2月前
|
C++
解决Clion中写多个C++文件中存在多个main函数报错的问题
本文介绍如何在CLion中解决多个C++文件含main函数报错的问题。通过安装“C/C++ Single File Execution”插件,无需注释或新建项目,即可单独运行指定文件。配合右键操作与简单重构,实现高效刷题编码,方便文件管理与快速调试,提升开发效率。
67 1
|
2月前
|
存储 负载均衡 Java
|
30天前
|
Java
判断和循环
本节介绍Java中判断与循环结构,包括if语句的两种格式、switch语句及其JDK12新特性,以及for循环的基本语法。涵盖键盘录入、条件判断、case穿透、break与default使用等核心知识点,帮助掌握程序流程控制。
81 0
|
2月前
|
人工智能 算法 图形学
C++基本介绍
C++是一种静态类型、编译式通用编程语言,支持过程化、面向对象和泛型编程。作为C的超集,它兼具高效性能与硬件控制能力,广泛应用于游戏开发、嵌入式系统、金融交易、图形处理及科学计算等领域,具有封装、继承、多态和抽象等特性,提升代码复用性与可维护性。(238字)
100 0
|
2月前
|
消息中间件 存储 SQL