自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 http的请求方式

例如,GET方法常用于查询操作,如员工信息的检索、销售数据的汇总等;‌:用于请求服务器发送资源,通常用于请求数据。GET请求常用于获取信息,如查询操作,其参数附加在URL之后发送给服务器。‌:用于向服务器提交数据,通常用于创建新的资源。POST请求常用于表单提交,可以传输大量数据,数据包含在请求体中。‌:用于获取服务器支持的HTTP方法,即查询服务器的能力。‌:与GET类似,但只请求响应头信息,不请求资源本身。‌:用于更新服务器上的现有资源,要求客户端提供资源的完整表示。‌:用于删除服务器上的资源。

2024-09-14 00:08:26 718 1

原创 redis数据类型

ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]:获取有序集合 key 中指定分数范围内的元素。ZADD key score member [score member ...]:将一个或多个成员元素及其分数加入到有序集合 key 中。XREAD COUNT count STREAMS key [id] [key id ...]:读取一个或多个流中的消息。

2024-09-11 22:53:58 621

原创 kafka的主要功能

它的设计旨在处理大规模的实时数据流,并且支持多种集成方式,使得开发者可以方便地构建高性能、可扩展的应用程序。Kafka 可以处理大量的实时数据流,并且可以存储和处理大量数据。Kafka 可以用作分布式日志系统,用于记录应用程序的日志数据。由于 Kafka 的高性能和持久性,它可以处理大量的日志数据,并且可以轻松地扩展以应对不断增长的数据量。Kafka 可以作为持久化的存储系统,用于存储大量的实时数据,并且提供了高效的检索机制。数据存储:Kafka 可以存储大量的数据,并且可以通过配置保留一定时间段的数据。

2024-09-11 22:50:07 919

原创 简述三次握手和四次断开

服务器向客户端发送 SYN-ACK 报文:服务器接收到客户端的 SYN 报文后,会发送一个带有 SYN 和 ACK 标志位的 TCP 数据包给客户端。下面分别简述这两个过程。服务器向客户端发送 ACK 报文:服务器接收到客户端的 FIN 报文后,会发送一个带有 ACK 标志位的 TCP 数据包给客户端,确认收到了客户端的 FIN 报文。客户端向服务器发送 ACK 报文:客户端接收到服务器的 FIN 报文后,会发送一个带有 ACK 标志位的 TCP 数据包给服务器,确认收到了服务器的 FIN 报文。

2024-09-11 22:41:28 491

原创 docker如何实现资源隔离

每个容器都有一个独立的文件系统视图,这些文件系统可以共享基础镜像,但容器内的修改是隔离的。命名空间提供了进程、网络接口、文件系统等方面的隔离,使得容器内的进程和其他资源看起来像是运行在一个独立的操作系统实例中。进程 ID 号在容器内部是独立的,这意味着容器内部的进程 ID 号不会与宿主机上的进程 ID 号冲突。可以限制容器使用的内存大小,超出限制时可以设置不同的行为(如 OOM killer)。容器有自己的文件系统层次结构,这意味着容器内的文件系统与宿主机的文件系统是隔离的。

2024-09-11 22:18:43 688

原创 docker的网络模式

‌:这是Docker的默认网络模式。在这种模式下,Docker会为每个容器分配一个独立的网络栈,容器通过虚拟网络接口连接到宿主机的网络,每个容器都有自己的IP地址,可以通过宿主机的网桥进行通信。‌:在这种模式下,新创建的容器与另一个已存在的容器共享网络命名空间。‌:在这种模式下,容器不会获得独立的网络命名空间,而是与宿主机共享网络命名空间。每种模式都有其特定的用途和优势,用户可以根据应用的需求选择合适的网络模式。例如,桥接模式适用于需要独立网络环境的场景,而主机模式则适用于需要最大化网络性能的场景。

2024-09-11 22:12:11 992

原创 linux测试网络连通性的命令

在Linux中,可以使用多种命令来测试网络连通性。mtr:结合了ping和traceroute的功能,可以持续监控网络质量。ping:发送ICMP回显请求到目标主机,检查网络连接是否正常。ssh:如果目标主机支持SSH,可以使用ssh命令来测试连接。netcat (nc):检查特定端口是否开放。curl 或 wget:检查网页是否可以访问。telnet:尝试建立一个telnet连接。

2024-09-11 22:05:17 611

原创 LVS Keepalived nginx haproxy 区别

LVS、Keepalived、Nginx 和 HAProxy 都是常用的负载均衡和高可用性解决方案,但它们之间存在一些显著的区别。Keepalived:用于监控和管理 LVS 集群的高可用性,也可以与其他服务(如 Nginx 和 HAProxy)集成。HAProxy:高性能的 TCP/HTTP 负载均衡器,适用于 HTTP 和 HTTPS 服务的负载均衡。Nginx:高性能的 Web 服务器和反向代理,适用于 Web 服务和负载均衡。它还可以用于其他服务的高可用性,如 Nginx 和 HAProxy。

2024-08-30 00:25:23 609

原创 LVS工作模式

客户端的请求到达 LVS 后,LVS 会将请求包封装在一个新的 IP 包内,并将目的地址设置为后端服务器的地址,然后发送出去。在 NAT 模式下,客户端的请求被送到 LVS 的前端,LVS 通过 IP 地址转换将请求发送给后端的真实服务器。后端服务器处理完请求后,直接将响应发送回 LVS,LVS 再将响应包的目标地址转换成客户端的地址,然后转发给客户端。NAT 模式下的 LVS 作为所有客户端和真实服务器之间的中间人,因此这种模式的缺点是所有的响应都需要经过 LVS,这可能会成为瓶颈。

2024-08-30 00:11:06 641

原创 编写并发的脚本测试服务器的性能

要在Linux中编写一个并发的脚本来测试服务器的性能,你可以使用多种工具和技术。这个脚本使用了 parallel 工具来并发执行 curl 命令,从而测试服务器在高并发下的性能表现。这个脚本将使用 curl 发送 HTTP 请求,并使用 parallel 来并发执行这些请求。# - `::: $(seq 1 $REQUEST_COUNT)`: 生成请求命令的列表。# - `-o /dev/null`: 将输出重定向到 /dev/null。# - `--jobs`: 指定并发请求数。

2024-08-29 00:12:34 560

原创 Dockerfile中CMD与ENTRYPOINT、ADD 与 COPY 的异同点

如果我们在Dockerfile中同时写了ENTRYPOINT和CMD,并且CMD指令不是一个完整的可执行命令,那么CMD指定的内容将会作为ENTRYPOINT的参数。如果我们在Dockerfile种同时写了ENTRYPOINT和CMD,并且CMD是一个完整的指令,那么它们两个会互相覆盖,谁在最后谁生效。COPY 是一个相对简单的指令,只负责将文件或目录从构建上下文(通常是 Dockerfile 所在的目录)复制到镜像中的指定路径。它真正执行的命令将会是:rm docker2 -rf。

2024-08-28 23:56:13 224

原创 Dockerfile、docker run和docker-compose的区别

它是容器化的最终目的,即运行应用程序或服务。通过docker run,可以指定容器的运行参数,如端口映射、外部数据挂载、环境变量等,来启动服务。综上所述,Dockerfile、docker run和docker-compose在Docker生态系统中各有其独特的用途和优势。Dockerfile用于构建镜像,docker run用于从镜像启动容器,而docker-compose则用于管理和编排多个容器的运行。命令时,Docker会按照Dockerfile中的指令逐步执行,生成一个新的Docker镜像。

2024-08-28 23:44:05 614

原创 Linux常用命令

cat /etc/security/limits.conf(永久) #用户级别的限制。cat /proc/sys/fs/file-max #系统级别的限制。ulimit -n(临时)#用户级别的限制。1.查询最大文件打开数。3.删除7天以前的文件。

2024-08-28 23:30:53 283

原创 docker save和docker export的区别

总结一下docker save和docker export的区别:

2024-08-18 22:35:44 374

原创 华为云存储

‌华为云的云硬盘是一种块存储设备,‌支持多种存储协议,‌包括HTTP、‌FTP、‌SCP等,‌用户可以通过网络访问硬盘中的文件。‌云硬盘支持多种文件格式,‌包括文本、‌图片、‌音频、‌视频等,‌并且可以进行增量备份和恢复。‌:‌OBS是华为云提供的稳定、‌安全、‌高效、‌易用的云存储服务,‌适用于各种规模的企业和开发者。‌它支持海量数据的存储和快速访问,‌适用于文件存储、‌媒体处理、‌大数据处理等多种应用场景。‌。

2024-07-29 07:27:14 467

原创 openstack云主机全部故障如何排查

检查日志:检查OpenStack服务和相关节点的日志文件,以便发现任何错误或异常。解决方法:检查Cinder后端存储服务的健康状况,修复连接问题或者硬件故障。节点状态检查:检查计算节点和存储节点的状态,确保它们是活跃的并且正在运行。先查看虚拟机状态,再看硬件和网络,以及各个服务的状态和配置文件以及日志。解决方法:检查控制节点的健康状况,重启服务,或者如果节点损坏,替换硬件。解决方法:检查计算节点的健康状况,重启服务,或者如果节点损坏,替换硬件。解决方法:逐个检查这些服务的状态,重启服务或者修复配置问题。

2024-07-25 13:01:43 402

原创 Azure与AWS服务

‌AWS提供了多种存储解决方案,‌包括简单存储服务(‌S3)‌用于云存储对象,‌关系型数据库服务(‌RDS)‌用于管理关系数据库,‌以及弹性文件系统(‌EFS)‌提供可扩展的文件存储解决方案。:‌AWS提供了弹性计算云(‌EC2)‌,‌这是一种云端虚拟服务器,‌可以根据需求快速扩展或缩小计算资源。:‌AWS提供了虚拟私有云(‌VPC)‌服务,‌用于构建安全的私有网络,‌以及云前端(‌CloudFront)‌服务,‌用于内容分发网络(‌CDN)‌,‌可以加速内容的全球传输。

2024-07-25 01:06:29 390

原创 Helm的三个基本概念是Chart、‌Repository和Release。

Helm通过这三个概念来管理Kubernetes上的应用程序部署,‌其中Chart定义了应用程序的所有资源需求,‌Repository提供了Chart的存储和分发机制,‌而Release则是在集群中实际运行的应用程序实例。‌Release是Chart在集群中的具体运行实例,‌它代表了Chart在集群中的状态和配置。:‌Chart是Helm包,‌它包含了在Kubernetes集群内部运行应用程序、‌工具或服务所需的所有资源定义。:‌Repository是Chart的存储库,‌用于存储和管理Chart。

2024-07-24 13:50:05 254

原创 pass组件

这些组件由云服务提供商提供,用户可以通过这些组件快速构建、部署和扩展应用程序,而无需关注底层基础设施的管理。等)、分布式数据库服务等,这些技术帮助实现应用程序的模块化、可扩展性以及快速部署和扩展。此外,PaaS服务还提供了其他典型技术,如分布式应用服务、分布式配置中心(包括‌。

2024-07-24 12:10:08 464

原创 iptables四表五链

mangle 表:负责修改数据包,预设的链有 PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD。nat 表:负责网络地址转换,预设的链有 PREROUTING、POSTROUTING、OUTPUT。raw 表:负责确定数据包是否被状态跟踪机制处理,预设的链有 PREROUTING、OUTPUT。filter 表:负责过滤功能,预设的链有 INPUT、FORWARD、OUTPUT。OUTPUT 链:处理出去的数据包。INPUT 链:处理进入的数据包。

2024-07-23 10:28:28 199

原创 AIX操作系统

它符合Open group的UNIX 98行业标准(The Open Group UNIX 98 Base Brand),通过全面集成对32-位和64-位应用的并行运行支持,为这些应用提供了全面的可扩展性。它可以在所有的IBM ~ p系列和IBM。最初的名称来自英语:Advanced IBM Unix,这个名字没有得到法律部门的允许,因此更改为"Advanced Interactive eXecutive"。基于AT&T Unix System V开发的一套类UNIX操作系统,运行在IBM专有的。

2024-07-21 23:26:12 198

原创 es的内部数据存储逻辑,读取逻辑

由于Elasticsearch的内部机制复杂,具体细节涉及到很多优化技术,例如:Lucene的倒排索引、段合并、缓存机制等。: 为了处理大量数据,Elasticsearch会将一个索引分成多个部分,每个部分就是一个分片。具体的读取操作涉及到分片寻址、搜索和返回结果,这些操作都是分布式和近实时的。: 一个内部的日志文件,用于保存尚未被索引的或尚未被确认的数据变更。: 用于批量写入的内存缓冲区,它会在合适的时候刷新到磁盘。节点根据请求的信息定位到包含所需数据的分片。如果需要,节点会从主分片同步数据到副本分片。

2024-07-19 15:25:48 351

原创 如何优雅地停pod?

通过上述步骤,‌可以实现Kubernetes中Pod的优雅下线,‌确保应用程序在终止时能够平滑地完成正在进行的操作,‌从而提高应用程序的可靠性和稳定性。可以通过以下几个步骤实现:‌。

2024-07-18 19:32:16 196

原创 CICD项目架构

传统的传统的软件开发和交付方法已经不能满足公司业务发展的需求,故公司决定采用CI/CD技术,通过持续集成,开发人员能够频繁将其代码集成到公共代码仓库的主分支中。开发人员能够在任何时候多次向仓库提交作品,而不是独立地开发每个功能模块并在开发周期结束时一一提交,然后通过集成交付、部署比较快捷地完成自动化部署。编程思路:判断是否有新版本,没有则退出;3.在jenkins服务器上安装git,构建任务,配置钉钉机器人发送消息。2.通过ssh免密推送代码,配置jenkins服务器进行初始化配置,并安装插件。

2024-07-18 15:38:12 265

原创 SQL性能分析和优化

这里我根据自己笔记的相关 SQL 优化整理了下,个人理解大概可以分以下情况进行优化,可能笔记比较简洁,但是都尽量有实操代码讲解,还顺便画了个思维导图,方便大家理解:这里我来具体细分讲讲:在这个阶段,数据库引擎会检查 SQL 语句的语法是否正确。如果语法有误,数据库会返回错误信息。如果语法正确,解析器会将 SQL 语句转换成内部表示形式,以便后续处理。代码示例:这条 SQL 语句试图从表中选择所有部门 ID 为 5 的员工记录。如果列不存在或者表名拼写错误,解析器会报错。解析器完成工作后,优化器会分析查

2024-07-18 10:25:45 687

原创 k8s service管理之对外发布应用

ClusterIP是默认类型,可以实现Pod的自动感知与负载均衡,是最核心的服务类型,但ClusterIP不能对外发布服务,如果想对外发布服务可以使用NodePort或Ingress。ClusterIP服务可以解决集群内应用互访的问题,但外部的应用无法访问集群内的资源,某些应用需要访问集群内的资源,我们就需要对外发布服务。流量路由由Ingress资源上定义的规则控制。- 控制器镜像以及资源文件地址:https://github.com/kubernetes/ingress-nginx。

2024-07-17 21:22:33 607

原创 ClusterIP、NodePort、LoadBalancer 和 ExternalName

此种类型并非定义由 Kubernetes 集群提供的服务,而是把集群外部的某服务以 DNS CNAME 记录的方式映射到集群内,从而让集群内的 Pod 资源能够访问外部的 Service 的一种实现方式。在 Kubernetes 中,由于Pod 是有生命周期的,如果 Pod 重启它的 IP 可能会发生变化以及升级的时候会重建 Pod,我们需要 Service 服务去动态的关联这些 Pod 的 IP 和端口,从而使我们前端用户访问不受后端变更的干扰。Service 定义。Service 原理。

2024-07-17 20:38:13 592

原创 linux 内核dump

默认情况下,‌Linux系统不会生成core dump文件,‌但可以通过设置来改变这一行为。命令可以查看或设置core文件的最大大小,‌如果设置为0,‌则不会生成core dump文件。是一个用来备份文件系统的工具。它会创建一个备份文件,该文件可以被用来通过。: 指定备份级别为0(这是一次完整备份)工具遵循UNIX备份操作的标准。工具通常需要root权限来运行。: 显示需要备份的大小。: 更新备份备记记录。: 指定备份文件路径。要恢复备份,可以使用。: 指定备份文件路径。

2024-07-17 19:55:21 412

原创 K8S--五种控制器类型解析(Deployment 、StatefulSet 、DaemonSet 、Job 、CronJob)

‌主要用于部署无状态服务。‌它是一个声明式更新策略,‌可以确保在任何给定时间运行特定数量的Pod,‌并且当Pod模板更改时,‌Deployment控制器会更新运行中的Pod副本以匹配最新配置。‌Deployment能够自动化地执行滚动更新,‌即逐步替换旧版本的Pod以新版本,‌从而避免了服务中断。‌此外,‌Deployment还提供了回滚机制,‌如果更新出现问题,‌可以轻松地回滚到之前的版本。‌:‌用于执行批处理任务,‌它确保某一批任务执行成功完成,‌无论这些任务是否成功完成。

2024-07-17 18:40:01 441

原创 openstack主要组件及功能

创建一个新的镜像:openstack image create --disk-format=qcow2 --container-format=bare --public --file=/path/to/image.img myimage。创建一个新的虚拟机实例:openstack server create --image myimage --flavor 1 --key-name mykey myinstance。查看一个实例规格的详细信息:openstack flavor show myflavor。

2024-07-17 17:55:45 1226

原创 SC PV PVC volume svc的定义和区别

存储类(StorageClass)定义了持久卷声明(PersistentVolumeClaim)所需的属性和行为,而持久卷(PersistentVolume)是实际的存储资源,持久卷声明(PersistentVolumeClaim)是 Pod 对持久卷的请求。

2024-07-17 17:52:14 984

原创 DDoS攻击

DDoS攻击,即分布式拒绝服务攻击(Distributed Denial of Service),是指攻击者利用一台或多台不同位置的计算机对一个或多个目标同时发动攻击,消耗目标服务器性能或网络带宽,使服务器运行缓慢或者宕机,从而造成服务器无法正常地提供服务的网络攻击类型。DDoS攻击危害巨大,相关安全事件又层出不穷,由此,企业应该采取适当的防御措施来抵御DDOS攻击,尤其那些一直是DDoS攻击主要目标的行业,比如游戏业、零售业、金融业等。支持将静态资源缓存到边缘节点,达到加速效果,确保网站的安全与加速。

2024-07-17 13:16:23 929

原创 OpenStack中nova的架构

API Server:用于接收来自用户的请求,并将这些请求传递给其他组件处理。Scheduler:用于对虚拟机实例进行调度,选择合适的计算节点进行部署。Compute Node:运行虚拟机实例的物理节点。Database:存储Nova的元数据信息。

2024-07-17 12:56:21 307

原创 docker容器数据持久化

Docker管理宿主机文件系统的一部分(/var/lib/docker/volumes),创建数据卷,将宿主机上的任意位置文件或目录挂载到容器中。运行容器时,直接挂载本地目录至容器中。是Docker默认存储数据方式。

2024-07-17 12:37:08 106

原创 docker的启动参数

Docker启动参数主要是通过Docker命令和配置文件来设置的。命令结合具体的镜像来启动容器,并应用这些参数。:后台运行容器,并返回容器ID;docker的启动参数。:为容器指定一个名称;:挂载一个目录或文件;:连接容器到一个网络。

2024-07-17 12:27:53 388

原创 cdn网络

终端收到302响应后,再次向302指向的地址发起请求,最优的缓存服务器收到请求后,响应内容返回给终端。基于HTTP协议,客户端直接访问HTTPDNS接口到我们的调度系统,调度系统再通过获取客户端的IP归属地得到cache节点的ip,以状态码为200的方式响应给客户端,然后客户端再向cache节点发起请求。基于HTTP协议,用户首先访问到调度系统,调度系统通过获取客户端IP归属地进行调度,组装响应头的location的URL,通过状态码为302的方式响应给客户端,然后客户端根据新的URL发起连接。

2024-07-17 11:44:11 778

原创 自动化工具ansible安装和常用模块汇总

它可以配置系统,部署软件以及协调更高级的 IT 任务,Ansible 适用于管理企业 IT 基础设施,从具有少数主机的小规。Ansible 也是一种简单的自动化语言,可以完美地描述 IT 应。简单易读:基于 YAML 文本编写,易于阅读,非专业的开发人员也可以编写。下面是总结的我常用的模块,时间长了有时候会忘,用的时候忘记了来翻译下。跨平台支持:支持 linux,Windows,Unix 和网络设备。功能强大:它可以同于管理配置,软件安装,流程自动化。command不支持管道,此时可以用shell。

2024-07-17 11:06:43 1038

原创 nginx模块以及反向代理配置

ngx_http_limit_req_module:主要用于单个ip限流,限制单个ip的请求数,一般用于防止应用层的dos攻击,也可以被限制黑名单方式代替。ngx_http_limit_conn_module:主要用于设置用户并发连接数,一般用于服务器流量异常、负载过大,甚至是大流量的恶意攻击访问等场景。ngx_http_limit_conn_module及ngx_http_limit_req_module。allow all;# 允许所有其他IP地址。

2024-07-17 09:11:27 244

原创 PG vs MySQL对比

总之,选择哪个数据库系统取决于具体的需求和使用场景。

2024-07-17 08:57:51 320

原创 Ceph分布式存储基本架构&Ceph数据恢复流程

归置组(PGPlacementGroup)是对象池的片段,Ceph根据对象的Oid和一些其他信息做计算操作,映射到归置组,无数的对象被划分到不同的归置组。BlueFS的文件和目录的元数据以日志事务的形式保存在日志文件中,在上电过程中,replay日志文件中的事务,就可以加载所有的元数据到内存中。最后PG会根据管理员设置的副本数量进行复制,然后通过crush算法存储到不同的OSD节点上,最终把PG中的所有对象存储到OSD节点上。对象保存在不同的存储池(Pool)中,是对象存储的逻辑组,对应不同的用户。

2024-07-16 17:20:05 399

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除