- 博客(222)
- 收藏
- 关注
原创 五、Spring Aop 源码分析
地散布在所有对象层次中,而与它对应的对象的核心功能毫无关系 对于其他类型的代码,如安全性、异常处理和透。模块 所共同调用的逻辑或责任封装起来,便于减少系统的重复代码,降低模块之间的 耦合度,并有利于未来的可。横切关注点的一个 特点是,他们经常发生在核心关注点的多处,而各处基。把原来糅杂在业务逻辑代码中的非业务代码抽取出来,把功能 相同的放在一个类中形成一个切面)明的持续性也都是如此,这种散 布在各处的无关的代码被称为横切(的技术,剖解开封装的对象内部,并 将那些影响了多个类的公共行。
2024-11-06 09:55:08
899
原创 第四章 Sentinel--服务容错
链路流控模式指的是,当从某个接口过来的资源达到限流条件时,开启限流。问题,调用这个服务就会出现线程阻塞的情况,此时若有大量的请求涌入,就会出现多条线程阻塞等。由于服务与服务之间的依赖性,故障会传播,会对整个微服务系统造成灾难性的严重后果,这就是。障发生时,能将问题和影响隔离在某个模块内部,而不扩散风险,不波及其它模块,不影响整体的。在上游服务调用下游服务的时候,设置一个最大响应时间,如果超过这个时间,下游未作出反应,护机制,让系统的入口流量和系统的负载达到一个平衡,保证系统在能力范围之内处理最多的请。
2024-11-05 10:25:13
349
原创 第三章 Nacos Discovery--服务治理
并在注册中心形成一张服务的清单,服务注册中心需要以心跳的方式去监测清单中。在服务治理框架中,都会构建一个注册中心,每个服务单元向注册中心登记自己提供服。服务调用方向服务注册中心咨询服务,并获取所有服务的实例清单,实现对具体服务实。服务订阅:服务调用者订阅服务提供者的信息,注册中心向订阅者推送提供者的信息。语言开发的开源工具,主要面向分布式,服务化的系统提供服务注册、服务发现。的控制面板中是否有注册上来的订单微服务,然后通过访问消费者服务验证调。的服务是否可用,如果不可用,需要在服务清单中剔除不可用的服务。
2024-10-10 09:12:20
896
原创 第二章 微服务环境搭建
例来演示微服务的调用:客户向订单微服务发起一个下单的请求,在进行保存订单之前需要调用商品微。在微服务架构中,最常见的场景就是微服务之间的相互调用。我们以电商系统中常见的。我们本次是使用的电商项目中的商品、订单、用户为案例进行讲解。启动工程,等到数据库表创建完毕之后,加入测试数据。我们一般把服务的主动调用方称为。通过浏览器访问服务进行测试。模块,然后进行下面操作。服务查询商品的信息。,把服务的被调用方称为。创建必要的接口和实现类。
2024-10-09 16:32:12
898
原创 第一章 微服务介绍
网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程。微服务架构, 简单的说就是将单体应用进一步拆分,拆分成更小的服务,每个服务都是一个可以独。互联网早期,一般的网站应用流量较小,只需一个应用,将所有功能代码都部署在一起就可以,这。比如说一个电商系统,里面会包含很多用户管理,商品管理,订单管理,物流管理等等很多模块,在分布式架构下,当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加。供的海量、安全、低成本、高可靠的云存储服务。
2024-10-08 09:45:47
920
原创 02_Vue基本指令
在webstorm中配置serve导入路由 Terminal输入 npm install vue-router@3 可在node_modules文件夹中导入设置路由在main.js中将router挂载到vue实例上在src目录下创建router包,创建index.js,配置路由App.vue中将script内容删除,并在template中加入router-view标签node_modules查看加载的包语法规定提示,可在vue.config.js文件中加入然后设置不显示。
2024-09-23 15:32:57
933
原创 将代码传到github公库
Github顾名思义是一个Git版本库的托管服务,是目前全球最大的软件仓库,拥有上百万的开发者用户,也是软件开发和寻找资源的最佳途径 ,Github不仅可以托管各种Git版本仓库,还拥有了更美观的Web界面,您的代码文件可以被任何人克隆 ,使得开发者为开源项贡献代码变得更加容易,当然也可以付费购买私有库,这样高性价比的私有库真的是帮助到了很多团队和企业。假设2:假设你是一个非常努力的程序员,除了在公司写代码外你还经常把代码用U盘拷贝回家继续工作,如果在通勤过程中U盘不小心丢了,回家之后你就不能工作了。
2024-09-14 16:25:14
1144
原创 一、Spring开发历程
案例:通过浏览器发送请求,服务器向浏览器响应“Hello SpringBoot”浏览器访问: http://localhost:8080/getHello。注意:要将controller控制器创建在启动类所在的包及其子包下。前提:必须拥有spring开发经验,熟悉maven,熟悉idea。创建maven项目(纯maven项目,非web项目)创建controller控制器,编写业务代码。运行主程序,启动项目。
2024-09-14 16:24:43
475
原创 虚拟化与KVM介绍
虚拟化其实就是在电脑系统中虚拟电脑,以CentOS 8为例介绍CentOS 8提供了虚拟化功能,它使运行CentOS 8的机器主机多个虚拟机(VM),也被称为Guest。VM使用主机的物理硬件和计算资源来运行单独的虚拟化操作系统(guest OS),KVM虚拟机作为主机操作系统上的用户空间进程。换句话说,虚拟化使得在操作系统内具有操作系统成为可能。KVM-redhat虚拟化的发展仿真虚拟化:早期VMware,对系统硬件没有要求,性能最低。
2024-09-14 16:24:06
957
原创 lamp部署-WordPress站点上线
选择网站语言,我选择的简体中文,然后点继续](http://IP,我的IP地址是192.168.11.251,所以在地址栏中输入的是http://192.168.11.251!我的IP地址是192.168.11.251 ,所以在地址栏中输入的是http://192.168.11.251。安装前要求你设置wordpress的后台管理账户和密码,注意,这可是网站后台管理员啊,密码一定不能像我这么随意。欢迎信息,同时告诉你准备连接数据库的相关信息和它的安装操作,直接点现在就开始,继续吧。根据步骤发布一篇文章吧!
2024-09-14 16:22:28
801
原创 部署lamp-MySQL安装
瑞典AB公司开发,后来卖给了oracle一个关系型数据库中小型数据库,表过大会出现IO性能瓶颈,树明建议单表600万条记录或2G以上就分表分为企业版和社区版,目前两大版本mysql5.7 和mysql 8.0。
2024-09-14 16:21:58
397
原创 终极 Nginx 配置指南(全网最详细)
对于自己上线项目的前端来说,nginx也是必须要了解和熟悉的,查了很多的nginx文章,看着写的都很详细,但是却没有了整体的概念。这里就重新梳理一遍,也理清思路。我们在安装nginx之后,会自动生成很多的文件,但是nginx.conf这个文件是我们的核心,如何去正确的修改和优化它是nginx的核心。首先我们可以先看下原本的配置,你会觉得无所适从,因为感觉这个鬼东西也太多了吧。而且感觉根本就不理解,也不知道该怎么写。下面,就一步一步的教你如何入门到熟悉。
2024-09-13 08:41:36
1238
原创 linux面试题(运维面试)
如单行复制,多行复制,单行删除,多行删除,(退。用最为广泛的用户界面,它通常不支持鼠标,用户通过键盘输入指令,计算机接收到指令后,予以。的软件通常需要用户记忆操作的命令,但是,由于其本身的特点,命令行界面要较图形用户界面节。约计算机系统的资源。由于程序员的水平及经验参差不齐,大部分程序员在编写代码的时候,没有对用户输入数据的合法。看,如果自己这边访问快,基本断定是用户端问题,就需要耐心跟客户解释,协助客户解决问题。、如果访问也慢,那么可以利用浏览器的调试功能,看看加载那一项数据消耗时间过多,是图片。
2024-09-10 14:20:11
2663
原创 SpringBoot整合MinIO实现文件的分片上传、秒传、续传!
概述Spring Boot整合Minio后,前端的文件上传有两种方式: 文件上传到后端,由后端保存到Minio 这种方式好处是完全由后端集中管理,可以很好的做到、身份验证、权限控制、文件与处理等,并且可以做一些额外的业务逻辑,比如生成缩略图、提取元数据等。 缺点也很明显: 所以,实际上我们不会把文件传到后端,而是直接传给Minio,其实这也符合OSS服务的使用方式。 延迟时间高了,本来花费上传一次文件的时间,现在多了后端保存到Minio的时间 后端资源占用,后
2024-09-10 09:15:10
2229
原创 token是用来鉴权的,那session是用来干什么的?
即使JWT是无状态的,但在某些应用场景中,仅依赖JWT可能存在一些安全问题,例如Token的泄露或滥用。Session可以作为一个额外的安全层,确保Token即使有效,也必须在服务器的Session管理器中存在对应的会话。如果用户选择了“记住我”选项,Session可以记录这个状态,并在JWT过期后,通过Session来决定是否允许继续使用旧的Token。在某些场景下,追踪用户状态是必要的,例如监控用户的活跃度、登录历史等,这些信息可以通过Session进行管理。
2024-09-10 08:59:58
614
原创 keepalived服务器部署
通过前面课程的学习,我们知道LVS、Nginx可以实现很多种不同类型的分发,我们还知道,集群系统存在的作用就是为了解决单点故障的问题。keepalived是使用C语言编写的路由热备软件,该项目主要目标是为linux系统提供简单高效的负载均衡及高可用解决方案。keepalived由一组检查器,根据服务器的健康状况动态的维护和管理服务器池,另外keepalived通过vrrp协议实现高可用架构,vrrp是路由灾备的实现基础。
2024-09-09 09:30:47
519
原创 部署LVS高可用集群
六台安装CentOS8的虚拟机一台测试机,两台LVS分发器,一台路由器,两台web服务器,关闭selinux关闭防火墙,停止libvirtd.service服务。提示:使用tcpdump命令可以看到vrrp的相关信息发送信息,深度理解VRRP协议。提示:使用tcpdump命令可以看到vrrp的相关信息发送信息,深度理解VRRP协议。c、设置RS的VIP、网关、内核参数。
2024-09-09 09:30:17
564
原创 使用prometheus监控一个业务
通过prometheus监控MariaDB业务要监控mysql需要两个条件,一个是系统中有mysql,另一个是要有监控插件,现在监控插件我已经下载好了,所以我们要先安装mysql,然后进行相应的授权,让插件可以获取到所需要的信息,然后再设置相关插件,修改prometheus配置文件。
2024-08-21 16:49:30
359
原创 部署prometheus监控平台
通过这个URL我们可以知道prometheus把监控的数据都统一存放在一起,然后生成一个web页面,用户可以通过web页面查看相关的数据,这些数据遵循了时序数据库的格式,也就是key=value的形式.这些数据就是我们的监控指标,只不过现在我们还没有办法分析,借助图形展示才会更方便阅读。这里输入的是process_cpu_seconds_total,CPU使用状态表就出现了,注意要点一下图表左上角的Graph按钮,默认是在console按钮页面。
2024-08-21 15:16:13
351
原创 Prometheus监控介绍
Prometheus(由go语言开发)是一套开源的监控&报警&时间序列(按照时间排序)数据库的组合。适合监控docker 容器。因为kubernetes(俗称k8s)的流行带动了prometheus的发展。它可以监控主机,服务,容器(TimeSeries Data) : 按照时间顺序记录系统、设备状态变化的数据被称为时序数据。
2024-08-21 15:15:40
713
原创 prometheus+Grafana数据展示
通过前面课程的学习我们知道了如何部署和设置prometheus,但是这个监控软件的展示界面实在是有些难看,所以我们换一个展示方式Grafana,是一个开源的度量分析和可视化工具(没有监控功能),可以通过将采集的数据分析,查询,然后进行可视化的展示,并能实现报警。
2024-08-21 15:14:25
1302
原创 Grafana报警
这里报警阈值设置的是取CPU Load平均值 因为是实验,所以预警值是0.5方便测试报警。点击左侧铃铛图表—notification channels—Add channel。(img-VunP2f9l-1724220270023)]设置完成后点击send test可以去注册账号时使用的邮箱查看报警邮件。选择图表 点击图表名称的下拉菜单—edit 进入编辑菜单。选择铃铛图表—create alert 设置图表报警。设置完成后,发现图表上出现了预警线,点击保存吧。设置好通道并完成验证后,为图表设置报警。
2024-08-21 14:04:35
846
原创 Apache安全-用户登录验证
当用户访问网站或者网站某个目录时,如果希望用户提供授权才能登录,那么就需要针对该站或者该目录设置登录验证了。apache提供了该功能,可以让我们针对站点或目录设置登录验证。这样用户访问网站时需要提交账号密码才能登录。
2024-08-15 09:25:12
285
原创 Apache 站点优化-长连接
http是一个面向连接的协议,用户完成一次请求需要以下步骤三次握手发起请求响应请求四次断开N个请求就重复N次,如果希望用户能够更快的拿到数据,服务器的压力降到最低,让你去优化这个请求过程。答案很明确,那就是建设每次执行的三次握手和四次断开,最好是一次三次握手建立成功后,在这个数据通道完成所有的请求后,然后在四次断开,这就是优化思路–理想中应该是这样。三次握手发起请求响应请求发起请求响应请求。。。。。请求全部完成后,四次断开减少了三次握手和四次断开的次数。
2024-08-15 09:24:41
188
原创 Apache 站点优化-客户端缓存
用户每次访问网站都会将页面中的所有元素都请求一遍,全部下载后通过浏览器渲染,展示到浏览器中。但是,网站中的某些元素我们一般都是固定不变的,比如logo,框架文件等元。,用户每次访问都需要加载这些元素。这样做好处是保证了数据的新鲜,可是这些数据不是常变化的,很久才变化一次。每次都请求、下载浪费了用户时间和公司带宽。所以我们通过静态缓存的方式,将这些不常变化的数据缓存到用户本地磁盘,用户以后再访问这些请求,直接从本地磁盘打开加载,这样的好处是加载速度快,且节约公司带宽及成本。应用场景:数据缓存。
2024-08-15 09:24:04
193
原创 Apache 默认网站
每一个web服务器软件一般默认都会提供一个用于测试的网站,apache也为用户提供了一个默认网站。默认网站的配置写在默认配置文件中。
2024-08-15 09:22:47
315
原创 Apache 虚拟主机
默认情况下,一个web服务器软件只能定义一个默认网站,也就是说只能发布一个WEB站点,对于大网站还可以,有海量用户来消耗服务器的资源,但是小网站呢?一个服务器上只跑一个小网站,服务器资源使用约等于0,那就尴尬了。为了充分利用服务器资源,现实生产环境中一般都是采用一个WEB服务器软件发布多个站点。如何解决这个问题呢?那就是配置虚拟主机!
2024-08-15 09:22:16
1108
原创 Apache 介绍
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。Apache HTTP服务器是一个模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的Web服务器软件。
2024-08-15 09:21:38
319
原创 Apache URL重定向
Apached的重写功能,即是mod_rewrite模块功能,它是apache的一个模块。它的功能非常强大,可以操作URL中的所有部分。通过改写url,给用户提供一个简介大方的url,当用户访问时可以通过mod_rewrite模块功能转换为真正的资源路径。通过mod_rewrite能实现的功能还有很多,例如隐藏真实地址、实现URL跳转、域名跳转、防盗链、限制访问资源类型等等。URL重写在生产环境中被广大运维大牛们运用的淋漓尽致,那么什么是URL重写呢?URL重写其实就是改写用户浏览器中的URL地址。
2024-08-15 09:20:23
1155
原创 Apache URL重定向
Apached的重写功能,即是mod_rewrite模块功能,它是apache的一个模块。它的功能非常强大,可以操作URL中的所有部分。通过改写url,给用户提供一个简介大方的url,当用户访问时可以通过mod_rewrite模块功能转换为真正的资源路径。通过mod_rewrite能实现的功能还有很多,例如隐藏真实地址、实现URL跳转、域名跳转、防盗链、限制访问资源类型等等。URL重写在生产环境中被广大运维大牛们运用的淋漓尽致,那么什么是URL重写呢?URL重写其实就是改写用户浏览器中的URL地址。
2024-08-15 09:20:23
953
原创 Apacha压力测试
k:激活HTTP中的“keepAlive”特性;-g:将测试结果输出为“gnuolot”文件;-T:使用POST数据时,设置内容类型头;-x:以表格方式输出时,设置表格的属性;-A:指定连接服务器的基本的认证凭据;-X:使用指定的代理服务器发送请求;-c:指定一次向服务器发出请求数;-w:以HTML表格方式打印结果;-i:使用“head”请求方式;-n:指定测试会话使用的请求数;-H:为请求追加一个额外的头;-p:指定包含数据的文件;ab {选项} {参数}-C:添加cookie;-h:显示帮助信息;
2024-08-15 09:19:53
333
原创 服务部署与迁移的步骤
集群内部可以直接使用Service Name进行通信,因为在集群中定义的每个 Service,都会被指派一个 DNS 名称,外部要访问到Kubernetes集群,由于网络路由不通(也可以使用其它手段打通),可以通过Node Port、LoadBlancer、外部IP等对外暴露访问。应用容器化后,就需要考虑如何在Pod中运行,因为Pod是Kubernetes管理的最小单元,Kubernetes不直接管理容器,而是管理Pod,Pod里面包含容器。然后再Pod中挂载使用。
2024-08-13 10:42:34
865
原创 istio 流量管理
这是因为没有明确的默认服务版本路由,Istio 将以循环方式请求路由到所有可用版本,此任务的最初目标是应用将所有流量路由到微服务的 v1 (版本 1)的规则。在这,来自名为 Jason 的用户的所有流量将被路由到服务 reviews:v2,请注意,Istio 对用户身份没有任何特殊的内置机制。事实上,productpage 服务在所有到 reviews 服务的 HTTP 请求中都增加了一个自定义的 end-user 请求头,从而达到了本例子的效果,请记住,reviews:v2 是包含星级评分功能的版本。
2024-08-13 10:34:28
370
原创 istio指标收集与查询
中…(img-Kp4cMSl8-1723516392770)][外链图片转存中…(img-J5E4BW3l-1723516392771)]
2024-08-13 10:33:16
197
原创 Kubernetes污点和容忍
节点亲和性,是 pod 的一种属性(偏好或硬性要求),它使 pod 被吸引到一类特定的节点。Taint 则相反,它使节点能够排斥一类特定的pod**,Taint 和 toleration 相互配合,可以用来避免 pod 被分配到不合适的节点上**。每个节点上都可以应用一个或多个taint ,这表示对于那些不能容忍这些 taint 的 pod,是不会被该节点接受的。如果将 toleration 应用于 pod上,则表示这些 pod 可以(但不要求)被调度到具有匹配 taint 的节点上。
2024-08-13 10:32:37
818
原创 Kubernetes节点与令牌管理
以上信息为高可用的加入信息,这里所显示的 token 的有效期为 24 小时,在有效期内,可以直接使用命令加入我们的集群,如果超过了有效期的话,那么我们的 token 已经过期,就需要我们重新生成 token ,然后在进行加入。如果需要从集群中移除 node-2 这个 Node ,在 master上执行下面的命令,安全驱逐节点上面所有的 pod,该命令执行成功后 node节点开始释放所有 pod ,并且不接收新的 pod 进程。token 过期后,生成新的token。
2024-08-13 10:32:00
322
原创 Kubernetes集群调度介绍
除了 kubernetes 自带的调度器,你也可以编写自己的调度器。通过 spec:schedulername 参数指定调度器的名字,可以为 pod 选择某个调度器进行调度。
2024-08-13 10:31:28
553
前端面试题汇总前端面试题汇总前端面试题汇总
2024-09-10
奢侈品购物网站模板-奢侈品手机模板
2024-09-10
构建nginx高可用集群
2024-07-11
Bootstrap+js响应式html5模板响应式-篮球网页
2024-07-03
bootstrap5蜂蜜产品网页模板电商购物 源代码
2024-07-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人