- 博客(24)
- 收藏
- 关注
原创 微服务保护
1.微服务保护保证服务运行的健壮性,避免级联失败导致的雪崩问题,就属于微服务保护。这章我们就一起来学习一下微服务保护的常见方案以及对应的技术。1.1.服务保护方案微服务保护的方案有很多,比如:请求限流线程隔离服务熔断这些方案或多或少都会导致服务的体验上略有下降,比如请求限流,降低了并发上限;线程隔离,降低了可用资源数量;服务熔断,降低了服务的完整度,部分服务变的不可用或弱可用。因此这些方案都属于服务降级的方案。但通过这些方案,服务的健壮性得到了提升,接下来,我们就逐一了解这些方案
2025-01-12 23:45:24
920
原创 微服务的配置共享
微服务架构中,配置共享是一个重要环节,它有助于提升服务间的协同效率和数据一致性。以下是对微服务配置共享的详细阐述:配置共享是指在微服务架构中,将某些通用或全局的配置信息集中管理,并允许多个微服务共享这些配置。这些配置信息可能包括数据库连接信息、应用服务器设置、第三方服务接入密钥等。
2025-01-12 23:04:34
1513
原创 什么是网关路由
一、网关(Gateway)定义网关是一个网络节点,它充当了不同网络之间的连接点。可以将其看作是一个网络的 “大门”,用于在不同的网络(如本地网络和外部互联网、两个不同的局域网等)之间传递数据。例如,在一个企业内部网络连接到互联网时,防火墙设备通常就充当网关。它接收来自内部网络的请求,将这些请求转发到互联网,并将互联网返回的数据再转发回内部网络。
2025-01-05 23:18:30
1716
原创 什么是OpenFeign
在微服务架构中,一个应用通常会被拆分成多个小型的、独立部署的服务。这些服务之间需要相互通信来完成复杂的业务功能。传统的方式是使用像RestTemplate这样的工具来发送 HTTP 请求,但这种方式会使得代码中充斥着大量的 URL 拼接、请求参数设置等样板代码。
2025-01-05 22:48:28
870
原创 微服务注册和发现
在我的上一个博客介绍了,微服务拆分并且通过Http请求实现了跨微服务的远程调用。不过这种手动发送Http请求的方式存在一些问题。如果被调用的服务有多个实例,调用者的服务如何知道每一个实例的地址?http请求要写url地址,调用者的服务到底该调用哪个实例呢?如果在运行过程中,某一个被调用的服务实例宕机,调用者的服务依然在调用该怎么办?如果并发太高,被调用的服务临时多部署了N台实例,调用者的服务如何知道新实例的地址?为了解决上述问题,就必须引入注册中心的概念了,接下来我们就一起来分析下注册中心的原理。
2024-12-29 22:00:31
710
原创 什么是微服务
什么时候需要拆分微服务?如果是创业型公司,最好先用单体架构快速迭代开发,验证市场运作模型,快速试错。当业务跑通以后,随着业务规模扩大、人员规模增加,再考虑拆分微服务。如果是大型企业,有充足的资源,可以在项目开始之初就搭建微服务架构。如何拆分?首先要做到高内聚、低耦合从拆分方式来说,有横向拆分和纵向拆分两种。纵向就是按照业务功能模块,横向则是拆分通用性业务,提高复用性服务拆分之后,不可避免的会出现跨微服务的业务,此时微服务之间就需要进行远程调用。微服务之间的远程调用被称为RPC,即远程过程调用。
2024-12-29 20:55:55
1230
原创 Docker数据库的主从复制
有很多种方式,我这里使用的是docker镜像配置两个mysql容器做主从复制,一个做主服务器,另一个做从服务器,前提是有docker。
2024-12-23 08:55:52
1430
原创 vue3生命周期(钩子函数)
在Vue3中,生命周期钩子被重命名并分为了不同的阶段,以更好地描述它们的用途。: 这是一个新的入口点,在beforeCreate和created之前调用。:组件被 keep-alive 缓存和恢复时调用。:当捕获一个来自子孙组件的错误时被调用。:组件挂载前/后的生命周期钩子。:组件更新前/后的生命周期钩子。:组件卸载前/后的生命周期钩子。
2024-09-09 22:55:28
650
原创 prpo循环遍历数组以及校验
Vue 组件可以更细致地声明对传入的 props 的校验要求。比如我们上面已经看到过的类型声明,如果传入的值不满足类型要求,Vue 会在浏览器控制台中抛出警告来提醒使用者。这在开发给其他开发者使用的组件时非常有用
2024-09-07 01:33:40
414
原创 watch和watchEffect监听器的使用
watch的第一个参数可以是不同形式的“数据源”:它可以是一个 ref (包括计算属性)、一个响应式对象、一个getter函数、或多个数据源组成的数组
2024-09-04 23:58:21
308
原创 computed计算属性的用法以及一些区别
表达式虽然方便,但也只能用来做简单的操作。如果在模板中写太多逻辑,会让模板变得臃肿,难以维护如果在模板中需要不止一次这样的计算,我们可不想将这样的代码在模板里重复好多遍。因此推荐使用属性计算来描述依赖响应式状态的复杂逻辑
2024-09-03 23:49:31
349
原创 v-model双向绑定以及原理
使用@Input事件引出v-model双向绑定示例基本上就是我们输入的值想在任何地方获取到还可以简化代码,直接在方法里面实现使用v-model就不需要在使用@input在对属性进行赋值取值了。
2024-09-02 23:19:51
337
原创 v-for列表渲染的用法以及for循环为什么使用key
如果v-for循环里面没有唯一标识的话,那么在小程序里面启动的时候就会报警告错误,这并不是报错而是警告错误,小程序里面要求要加上key。v-for 指令可以实现基于一个数组来渲染一个列表。则是被迭代的数组元素的别名。则是被迭代的数组元素的别名。第二个参数,即当前项的索引。形式的特殊语法,其中。在v-for里使用数组。
2024-08-31 21:54:06
1160
原创 v-if和v-show如何使用以及区别
条件渲染v-if指令用于条件性地渲染一块内容。这块内容只会在指令的表达式返回truthy值的时候被渲染。使用v-else指令来表示 v-if 的“else 块”在 JavaScript 中,truthy(真值)指的是在布尔值上下文中,转换后的值为真的值。所有值都是真值,除非它们被定义为 假值(即除 false、0、""、null、undefined 和 NaN 以外皆为真值)。v-else-if,顾名思义,充当 v-if 的“else-if 块”,可以连续使用:类似于v-elsev-else-if。
2024-08-30 23:34:37
953
原创 模板语法加响应式基础
Vue 使用一种基于 HTML 的模板语法,使我们能够声明式地将其组件实例的数据绑定到呈现的 DOM 上。所有的 Vue 模板都是语法层面合法的 HTML,可以被符合规范的浏览器和 HTML 解析器解析。在底层机制中,Vue 会将模板编译成高度优化的 JavaScript 代码。结合响应式系统,当应用状态变更时,Vue 能够智能地推导出需要重新渲染的组件的最少数量,并应用最少的 DOM 操作。如果你对虚拟 DOM 的概念比较熟悉,并且偏好直接使用 JavaScript,你也可以结合可选的 JSX 支持。
2024-08-26 23:34:05
380
原创 uniapp常用的组件的基本用法
组件是视图层的基本组成单元。组件是一个单独且可复用的功能模块的封装。每个组件,包括如下几个部分:以组件名称为标记的开始标签和结束标签、组件内容、组件属性、组件属性值。所有的视图组件,包括view、swiper等,本身不显示任何可视化元素。它们的用途都是为了包裹其他真正显示的组件。
2024-08-24 01:49:19
501
原创 如何安装HBuilderX开发工具以及启动配置
HBuilder X是一个集成开发环境(IDE),专为H5、uni-app、App开发而设计,集成了代码编辑器、调试器、模拟器和丰富的插件,为跨平台移动应用开发提供全面的支持。此外,HBuilder X还支持使用可视化界面创建项目,同时也支持使用命令行进行开发,提供了极大的灵活性和便利性。运行到内置浏览器是最方便的,其他的浏览器如果没安装是肯定运行不了的。有很多不同的运行方式,刚开始下载运行都需要安装插件或者配置路径。如果要有其他的运行需求如:运行到小程序模拟器。这里有详细的下载介绍和注意事项。
2024-08-23 17:12:53
1317
1
原创 node.js详细的环境安装流程
注意:不推荐nodejs安装在C盘,由于C盘的权限问题,可能导致npm安装软件时不能创建文件夹或文件而发生不必要的错误。npm config set cache "node_cache文件夹的路径"查看是否安装成功:在cmd中输入:node -v和 npm -v查看版本。npm config set prefix "你的当前文件夹路径"当场倒地,网络问题,明天再弄 2024/08/19 23:49。可以通过如下操作解决npm下载速度慢的问题。创建名为:node_cache的文件夹。安装vue的基础依赖。
2024-08-19 23:49:48
895
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅