1、nacos简介 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。 服务管理:实现服务CRUD,域名CRUD,服务健康状态检查,服务权重管理等功能 配置管理:实现配置管CRUD,版本管理,灰度管理,监听管理,推送轨迹,聚合数据等功能 元数据管理:提供元数据CURD 和打标能力 插件机制:实现三个模块可分可合能力,实现扩展点SPI机制 事件机制:实现异步化事件通知,sdk数据变化异步通知等逻辑 日志模块:管理日志分类,日志级别,日志可移植性(尤其避免冲突),日志格式,异常码+帮助文档 回调机制:sdk通知数据,通过统一的模式回调用户处理。接口和数据结构需要具备可扩展性 寻址模式:解决ip,域名,nameserver、广播等多种寻址模式,需要可扩展 推送通道:解决server与存储、server间、server与sdk间推送性能问题 容量管理:管理每个租户,分组下的容量,防止存储被写爆,影响服务可用性 流量管理:按照租户,分组等多个维度对请求频率,长链接个数,报文大小,请求流控进行控制 缓存机制:容灾目录,本地缓存,server缓存机制。.... 有更新! spring cloud整合nacos nacos
1、基本概念 1.1、服务雪崩 微服务架构中,一个系统被拆分成多个子服务,这些服务之间存在相互调用关系,某个服务不可用之后,导致调用它的服务不可用,最终导致整个服务链崩溃,就出现服务雪崩。 预防服务雪崩有以下几个方案: 服务熔断:某个服务崩溃后,暂停对该服务的调用; 服务降级:对不是很关键的服务来说,当服务负荷过高或响应过慢,则关闭对该服务的访问,返回一个定义好的兜底数据,等服务负荷降低在开放对该服务的访问; 服务限流:不是核心的服务可以使用服务降级来处理,但是核心的服务一定要保证能够正常访问,因此我们对服务进行限流处理,限制他的并发和请求量,保证服务能够正常运行。 2、Sentinel简介 sentinel是一个轻量级的流量控制、熔断降级Java 组件,是分布式系统的流量防卫兵; Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 更多信息可以参考sentinel的github地址 3、下载安装 在sentinel版本列表上下载自己需要的版本的jar包,然后java -jar启动成功就可以访问了,默认端口是8080,用户名密码都是sent.... 有更新! sentinel nacos
通过设置节点的indeterminate属性为true来标识该节点为半选中状态 function openResourceTreeDialog(roleId?: any){ getSysResourceSelectTree(roleId).then(res=>{ resourceTreeDialog.visible = true; resourceTreeData.value = res.result.selectTreeVo; roleResources.roleId = roleId; setTimeout(()=>{ const checkedKeys = res.result.selectedResources const checkedLeafKeys = [] checkedKeys.forEach((item) => { const node = resourceTreeRef.value!.getNode(item.sysResourceId) if(item.isHalfChecked){ node.indeterminate = true; }el.... element plus设置树节点状态为半加载 程序人生
一、软硬件发展 1.1 硬件的发展 1.1.1 计算机四代的变化 1.1.2 计算机元件的更新 微型计算机的发展是以微处理器为标志 机器字长:计算机一次整数运算所能处理的二进制位数 1.1.3 摩尔定律 摩尔定律揭示了信息技术进步的速度,集成电路上可容纳的晶体管数目,约每隔18个月便会增加一倍,整体性能也将提升一倍 1.2 软件的发展 第一代计算机语言:机器语言 第二代计算机语言:汇编语言 第三代计算机语言:高级语言 机器语言,二进制代码。 汇编语言,汇编语言使用英文单词或其缩写代替二进制指令,使用汇编语言编辑的程序,需要使用汇编器将汇编语言翻译为机器语言。 高级语言,进一步抽象形成的语言,需要将其编译为汇编再通过汇编操作得到机器语言,或者直接翻译为机器语言 汇编、解释和编译是计算机程序语言处理的三种不同方式,它们的主要区别在于程序执行前如何将源代码转换成机器可执行的形式 汇编程序,将汇编语言翻译为机器语言 解释程序,将源程序中的语句按执行顺序逐条翻译成机器指令并立即执行 编译程序,将高级语言转化为汇编语言或机器语言程序 二、系统结构 冯诺伊曼体系结构 2.1 输入设备 将程序和数据以.... 有更新! 计算机组成原理--简介 计算机组成原理
1、JSR-303数据校验简介 JSR是Java Specification Requests的缩写,意思是Java 规范提案,JSR-303 是JAVA EE 6 中的一项子规范,叫做Bean Validation,即,JSR 303,Bean Validation规范 ,为Bean验证定义了元数据模型和API 2、pom引入 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency> 3、常见注解 4、定义组 在校验的时候,同一个字段在不同的业务场景下,校验规则可能会有差异需要进行不同的校验就可以通过分组实现,下述代码中,创建了两个分组,AddGroup用于处理新增数据的校验,UpdateGroup用于标识修改数据的校验 public interface AddGroup { } public interface .... 有更新! spring boot使用JSR-303做数据校验 程序人生
一、简介 MySQL事务是一组DML(select\update\delete)语句的集合,mysql数据库中InnoDB存储引擎支持开启事务,MyISAM不支持。MySQL事务默认自动提交,可通过begin、commit、rollback手动控制。 二、特性 事务有四大特性,原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability) 2.1 原子性 事务中的操作要么全执行,要么全不执行 2.2 一致性 数据库的完整性约束没有被破坏,事务执行的前后都是合法的数据状态 eg:甲乙两个银行账户的总金额再转账前后必须一致,只允许事务执行过程中短暂出现不一致的情况 2.3 隔离性 隔离性是指,事务内部的操作与其他事务是隔离的,并发执行的各个事务之间不能互相干扰 2.4 持久性 持久性是指事务一旦提交,它对数据库的改变就应该是永久性的 三、事务并发的问题 3.1 读脏 读到了其他事务未提交的数据 3.2 不可重复度 一个事务内的多次查询返回了不同的结果,这是由于在查询过程中,数据被另外一个事务修改并提交了 3.3 幻读 幻读是指在.... 有更新! MySQL--事务 程序人生