自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 docker 搭建lnmp环境

公司在实际的生产环境中,需要使用 Docker 技术在一台主机上创建 LNMP 服务并运行 Wordpress 网站平台。然后对此服务进行相关的性能调优和管理工作。

2024-04-28 17:58:37 514

原创 Dockerfile 镜像创建扩展

【代码】Dockerfile 镜像创建扩展。

2024-04-28 17:58:29 127

原创 Docker 数据管理与镜像创建

由此可见对于不同的linux发行版,bootfs基本是一致的,rootfs会有差别,因此不同的发行版可以公用bootfs。但是当编写一个新的Dockerfile文件来基于A镜像构建一个镜像(比如为B镜像)时,这时构造A镜像的Dockerfile文件中的ONBUILD指令就生效了,在构建B镜像的过程中,首先会执行ONBUILD指令指定的指令,然后才会执行其它指令。(5)镜像层是不可变的,如果在某一层中添加一个文件,然后在下一层中删除它,则镜像中依然会包含该文件,只是这个文件在 Docker 容器中不可见了。

2024-04-26 17:35:01 815

原创 Docker 网络与资源控制

直接使用bridge模式,是无法支持指定IP运行docker的,例如执行以下命令就会报错#可以先自定义网络,再使用指定IP运行dockerdocker1为执行 ifconfig -a 命令时,显示的网卡名,如果不使用 --opt 参数指定此名称,那你在使用 ifconfig -a 命令查看网络信息时,看到的是类似 br-110eb56a0b22 这样的名字,这显然不怎么好记。mynet 为执行 docker network list 命令时,显示的bridge网络模式名称。

2024-04-26 17:34:52 896 3

原创 Docker 基本管理

仿真虚拟化:无需硬件支持,兼容性强,能在不同架构间运行操作系统,但性能较低。半虚拟化:需修改客户系统以提升性能,直接与虚拟化层通信,适用于特定场景和注重性能的环境。全虚拟化:现代技术大多结合硬件辅助,以实现接近原生的性能,同时保持高度兼容性,适用于广泛场景。docker 发展历史Docker入门笔记01:Docker容器技术的发展历程【转】 - 融爸 - 博客园 (cnblogs.com)Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。

2024-04-22 18:46:02 577 1

原创 Zabbix自定义模板、邮件报警、自动发现与注册、proxy代理、SNMP监控

案列:自定义监控客户端服务器登录的人数需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息在客户端创建自定义 key#可以将自定义的监控项配置文件创建在 zabbix_agent2.d 目录中#自定义监控项的格式如下自定义监控参数 键 命令或者脚本名称vim UserParameter_login.conf #.conf前面名称可自定义UserParameter=login.user,who|wc -l #键名可自定义点击左边菜单栏【配置】中的【模板】,点击【创建模板】

2024-04-19 13:42:40 636

原创 Zabbix 监控软件(一)

通常我们服务搭建成功 但不清楚服务器的运行状况,这时候就需要会使用监控系统查看服务器状态以及网站流量指标,利用监控系统的数据去了解上线发布的结果,和网站的健康状态。利用一个优秀的监控软件,我们可以:●通过一个友好的界面进行浏览整个网站所有的服务器状态●可以在 Web 前端方便的查看监控数据●可以回溯寻找事故发生时系统的问题和报警情况。

2024-04-19 13:42:00 1058

原创 Zookeeper集群 + Kafka集群

MQKafka 是一个分布式的基于发布/订阅模式的消息队列(MQ,Message Queue),主要应用于大数据实时处理领域。

2024-04-14 15:16:40 882

原创 ELK 企业级日志分析系统

ELK平台是一套完整的日志集中处理解决方案,将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用, 完成更强大的用户对日志的查询、排序、统计需求。可视化日志管理系统●:是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。Elasticsearch 是用 Java 开发的,可通过 RESTful Web 接口,让用户可以通过浏览器与Elasticsearch 通信。

2024-04-14 15:16:38 819

原创 GFS 分布式文件系统

GlusterFS 是一个开源的分布式文件系统。由存储服务器、客户端以及NFS/Samba 存储网关(可选,根据需要选择使用)组成。没有元数据服务器组件,这有助于提升整个系统的性能、可靠性和稳定性。(无元数据服务器)传统的分布式文件系统大多通过元服务器来存储元数据,元数据包含存储节点上的目录信息、目录结构等。这样的设计在浏览目录时效率高,但是也存在一些缺陷,例如单点故障。一旦元数据服务器出现故障,即使节点具备再高的冗余性,整个存储系统也将崩溃。

2024-04-09 19:31:12 796

原创 Redis 数据类型

2、充分利用Set类型的服务端聚合操作方便、高效的特性,可以用于维护数据对象之间的关联关系。比如所有购买某–电子设备的客户ID被存储在一个指定的Set中,而购买另外一种电子产品的客户ID被存储在另外一个Set中,如果此时我们想获取有哪些客户同时购买了这两种商品时,Set的intersections 命令就可以充分发挥它的方便和效率的优势了。redis无论什么数据类型,在数据库中都是以key-value形式保存,并且所有的key(键)都是字符串,所以讨论基础数据结构都是讨论的value值的数据类型。

2024-04-09 18:43:07 1040

原创 rsync 远程同步

rsync 还程同步在同步的过程中实现了边复制边统计边比较1、上行同步(上传)客户端(源)----》RSYNC----》服务器(目标)在这种情况下,客户端有一些(需要备份的数据)文件,它们需要同步到服务器过程:RSYNC首先在客户端和服务器之间建立一个连接,然后比较两边的文件。只有在客户端上新的或已更改的文件才会被上传的服务器rsync -azH /local/deirctory user@地址::模块一般会结合 inotify(文件实时监控)来同步数据2、下行同步 (下载)

2024-04-08 15:08:42 769

原创 Redis 群集

主从复制总结redis主从复制 是为了数据冗余和读写分离在这两种模式中,有两种角色主节点(master)和从节点(slave),主节点负责处理写的操作,并将数据更改复制到一个或多个从节点。这样我们的主节点负载减轻,从节点可以提供数据读取服务,实现读写分离,如果主节点停止服务,从节点之一可以立即接管主节点的角色,再继续提供服务具体流程如下:1、从节点启动成功连接主节点后,发送一个sync命令。

2024-04-08 13:33:30 1053

原创 Redis之缓存穿透、击穿、雪崩

缓存穿透是指在使用缓存系统时,特定的查询在缓存和数据库中都找不到结果,导致每次查询都要访问数据库,从而增加数据库的压力,降低系统的性能,若黑客利用此漏洞进行攻击可能压垮数据库。当一个查询请求经过缓存系统时,缓存先检查是否有缓存的结果,如果有则直接返回给客户端,如果没有则查询数据库并将结果存入缓存后返回。但是,如果查询的数据在数据库中不存在,那么每次查询都会通过缓存系统直接访问数据库,导致数据库无效查询增加,浪费了系统资源。

2024-04-06 09:39:44 858

原创 Redis 高可用之持久化

1、RDB 和 AOF 的基本理解①RDB 持久化:周期性的将redis在内存中的数据保存在磁盘中。②AOF 持久化(append only file):将redis 的操作日志中 执行的过程同步至磁盘中。2、RDB 和 AOF 的持久化过程RDB 持久化过程① Redis父进程首先判断:当前是否在执行save,或bgsave/bgrewriteaof的子进程,如果在执行则bgsave命令直接返回。

2024-04-03 13:36:31 1360

原创 NoSQL 之 Redis配置与优化

Redis(远程字典服务器) 是一个开源的、使用 C 语言编写的 NoSQL 数据库。Redis 基于内存运行并支持持久化,采用key-value(键值对)的存储形式,是目前分布式架构中不可或缺的一环。Redis服务器程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程,Redis的实际处理速度则是完全依靠于主进程的执行效率。若在服务器上只运行一个Redis进程,当多个客户端同时访问时,服务器的处理能力是会有一定程度的下降;

2024-04-03 13:36:24 923

原创 MySQL 优化及故障排查

一般来说,可以通过 showstatus 命令查看数据库运行峰值时间的状态值 Open_tables 和 Opened_tables,判断是否需要增加 table_cache 的值(其中 open_tables 是当前打开的表的数量,Opened_tables 则是已经打开的表的数量)。默认是 4KB,设置值大对大数据查询有好处,但如果查询都是小数据查询,就容易造成内存碎片和浪费,查询缓存碎片率=Qcache_free_blocks/Qcache_total_blocks*100%。

2024-04-01 15:11:46 924

原创 MySQL MHA

MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。MHA 的出现就是解决MySQL 单点的问题。MySQL故障切换过程中,MHA能做到0-30秒内自动完成故障切换操作。MHA能在故障切换的过程中最大程度上保证数据的一致性,以达到真正意义上的高可用。1、mha① 作用:mysql的高可用 + 故障切换② 核心部分:MHA组件:manager:主要的功能:做MHA 启动、关闭管理和检测mysql各种健康状态。

2024-04-01 08:50:06 819

原创 MySQL 主从复制与读写分离

读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。

2024-03-28 18:02:28 943

原创 MySQL高阶语句(二)

前面学习的 MySQL 相关知识都是针对一个表或几个表的单条 SQL 语句,使用这样的SQL 语句虽然可以完成用户的需求,但在实际的数据库应用中,有些数据库操作可能会非常复杂,可能会需要多条 SQL 语句一起去处理才能够完成,这时候就可以使用存储过程, 轻松而高效的去完成这个需求,有点类似shell脚本里的函数1、存储过程是一组为了完成特定功能的SQL语句集合。2、存储过程这个功能是从5.0版本才开始支持的,它可以加快数据库的处理速度,增强数据库在实际应用中的灵活性。

2024-03-28 18:02:26 1040

原创 MySQL高阶语句(一)

(增、删、改、查)对 MySQL 数据库的查询,除了基本的查询外,有时候需要对查询的结果集进行处理。例如只取 10 条数据、对查询结果进行排序或分组等等。

2024-03-26 18:59:23 1227

原创 MySQL日志管理、备份与恢复

MySQL 的日志默认保存位置为 /usr/local/mysql/data。

2024-03-26 18:35:58 916

原创 MySQL 存储引擎

关于索引什么是索引?索引就好比是一本书的目录,可以根据目录中的页码快速找到所需的内容。索引有什么作用?通常情况下我们在表中查找数据需要把整个表遍历一遍,这样查找会导致客户在访问时出现卡顿现象。使用索引后就可以直接定位到该数据的具体位置,不需要把整个表都遍历一遍。便于客户端获取数据(提升用户体验感)+ 减少mysql 服务器的压力索引就是一种MySQL的优化(从两个方向考虑,1、哪些字段/场景适合创建索引2、哪些字段/场景不适合)索引有哪些副作用?1.索引需要占用额外的磁盘空间。

2024-03-25 14:32:36 1213

原创 Linux 性能优化

vmstat 命令是最常见的 Linux/Unix 监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的 CPU 使用率,内存使用,虚拟内存交换情况,IO读写情况。进程只有在调度到CPU上运行时才需要切换上下文,有以下几种场景:CPU时间片轮流分配,系统资源不足导致进程挂起,进程通过sleep函数主动挂起,高优先级进程抢占时间片,硬件中断时CPU上的进程被挂起转而执行内核中的中断服务。因此相比系统调用来说,在保存当前进程的内核状态和CPU寄存器之前,需要先把该进程的虚拟内存,栈保存下来。

2024-03-25 14:31:39 1047

原创 MySQL 索引

因为索引本身会消耗系统资源,在有索引的情况下,数据库会先进行索引查询,然后定位到具体的数据行,如果索引使用不当,反而会增加数据库的负担。如果指定使用列前的 length 个字符来创建索引,这样有利于减小索引文件的大小。create table 表名 (列名1 数据类型,列名2 数据类型,列名3 数据类型,index 索引名 (列名1,列名2,列名3));示例:create table qq1(id int(4),name varchar(12),index id_index (id));

2024-03-22 16:44:05 1020

原创 MySQL事务

举例来说,在银行转账过程中,从一个账户扣除款项并存入另一个账户的操作可以视为一个事务。这个事务必须确保原子性(转账操作要么全部完成,要么都不完成),一致性(转账前后账户的总额保持不变),隔离性(其他事务在转账过程中不应看到中间状态),以及持久性(转账一旦完成,即使系统崩溃,转账结果也是永久有效的)。

2024-03-22 16:43:43 1094

原创 数据库用户管理

这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL 和 NUMERIC),以及近似数值数据类型(FLOAT、REAL 和 DOUBLE PRECISION)。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。在数据库管理系统中,USAGE 权限是一个基础权限级别,它允许用户对数据库对象进行基本的识别和访问,但并不提供对数据的实际操作权限。

2024-03-21 14:32:06 1091

原创 MySQL 基本操作

(数据控制语句,用于控制不通数据段直接的许可和访问级别的语句,这些语句定义了数据库、表、字段、用户的访问权限和安全级别,如COMMIT、ROLLBACK、GRANT、REVOKE)使用truncate table 清空表内数据后,ID会从1开始重新记录。create table 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);insert into 表名(字段1,字段2[,...]) VALUES (字段1的值,字段2的值,...);

2024-03-21 14:31:36 1086

原创 MySQL (1)

非关系数据库也被称作NoSQL(Not Only SQL)存储数据不以关系模型为依据,不需要固定的表格式非关系型数据库的优点数据库可高并发读写对海量数据高效率存储与访问数据库具有高扩展性与高可用性常用的非关系数据库:Redis、mongoDB等关于 关系型数据库 与 非关系型数据库 应用场景适用于对关系很明确的数据建立模型、定义、存储数据存储海量数据,给与”大数据“进行分析,筛选出有价值的部分Not Only SQL 不仅仅数据库 还可以缓存数据键值。

2024-03-19 19:06:54 752

原创 linux 基础总结

加电后bios程序会自检硬件,硬件无故障后,会根据第一启动项去找内核,一般来说第一启动项是硬盘,找到硬盘后,会根据mbr 的指引 找到完整的 grub 程序,再根据grub的配置文件(grub.cfg)找到内核文件的具体位置,然后将内核文件加载到内存中运行,内存加载好后会启动第一个程序。物理扩展(Physical Extend,PE):PE 是用来保存数据的最小单元,我们的数据实际上都是写入 PE 当中的。是将连续的数据分割成相同大小的数据块,并将这些数据块分布在多个物理硬盘上。

2024-03-18 18:57:53 1016

原创 网络简略总结

三次握手:为了建立长链接进行交互即建立一个会话,使用http/https协议①:客户端产生初始化序列号seq=x,向服务端发送建立连接的请求报文,将SYN=1同步序列号;②:服务端接收建立连接的请求之后,产生初始化序号seq=y,并发送一个确认号(ack=x+1),向客户端发送 建立连接的请求(SYN=1),确认客户端的数据(ACK=1)③:客户端收到服务端的回复(ack=y+1,包含收到请求,确认信号),ACK=1,确认客户端的数据,三次握手 成功。

2024-03-18 16:12:13 732

原创 Memcached

NoSQL是对 Not Only SQL、非传统关系型数据库的统称。NoSQL一词诞生于1998年,2009年这个词汇被再次提出指非关系型、分布式、不提供ACID的数据库设计模式。随着互联网时代的到来,数据爆发式增长,数据库技术发展日新月异,要适应新的业务需求。而随着移动互联网、物联网的到来,大数据的技术中NoSQL也同样重要。NoSQL 分类Key-value Store k/v数据库性能好 O(1) , 如: redis、memcachedDocument Store 文档数据库。

2024-03-14 16:31:02 885

原创 ansible 运维自动化

云计算核心职能搭建平台架构日常运营保障性能效率优化相关工具代码管理(SCM):GitHub、GitLab、BitBucket、SubVersion构建工具:maven、Ant、Gradle自动部署:Capistrano、CodeDeploy持续集成(CI):Jenkins、Travis配置管理:Ansible、SaltStack、Chef、Puppet容器:Docker、Podman、LXC、第三方厂商如AWS编排:Kubernetes、Core、Apache Mesos。

2024-03-13 19:18:54 910

原创 VMware安装Ubuntu虚拟机

安装VMware后需要确认自己的电脑是否成功安装VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两个网络适配器。

2024-03-13 19:18:48 976

原创 LAMP 架构

PHP(Hypertext Preprocessor 超文本预处理器)是通用服务器端脚本编程语言,主要用于web开发实现动态web页面,也是最早实现将脚本嵌入HTML源码文档中的服务器端脚本语言之一。同时,php还提供了一个命令行接口,因此,其也可以在大多数系统上作为一个独立的shell来使用。

2024-03-11 16:40:51 946 1

原创 Haproxy

HAProxy是法国开发者威利塔罗(Willy Tarreau)在2000年使用C语言开发的一个开源软件,是一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计,目前最新TLS版本为2.2。HAProxy是可提供高可用性、负载均衡以及基于TcP和HTTP应用的代理,是免费、快速并且可靠的一种解决方案。HProxy非常适用于并发大(并发达1w以上) web站点,这些站点通常又需要会话保持或七层处理。

2024-03-11 07:59:56 1331

原创 Keepalive

基于vrrp协议完成地址流动为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)为ipvs集群的各RS做健康状态检测基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务vrrp_script <SCRIPT_NAME> { #定义一个检测脚本,在global_defs 之外配置script <STRING>|<QUOTED-STRING> #shell命令或脚本路径(注意执行权限)

2024-03-08 13:55:22 796

原创 LVS集群(Linux Virtual server)

LVS:Linux Virtual Server,负载调度器,内核集成,章文嵩(花名正明), 阿里的四层SLB(Server Load Balance)是基于LVS+keepalived实现阿里SLB和LVS:四层负载均衡,采用开源软件LVS(linux virtual server),并根据云计算需求对其进行了定制化;该技术已经在阿里巴巴内部业务全面上线应用2年多详见第3节;七层负载均衡,采用开源软件Tengine;该技术已经在阿里巴巴内部业务全面上线应用3年多;

2024-03-06 16:19:41 1019

原创 Tomcat

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。

2024-03-05 08:07:54 785

原创 LNMP 架构

搭建 LNMP 架构需要安装 nginx mysql php 软件linux nginx mysql php结合。

2024-03-01 08:02:43 1220

空空如也

空空如也

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

TA关注的人

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