- 博客(37)
- 收藏
- 关注
原创 Vim 中替换字符或文本
Vim 的替换功能非常强大,结合正则表达式可以高效处理复杂文本!在 Vim 中替换字符或文本可以使用。转义,或换分隔符(如。
2025-04-29 17:59:53
804
原创 Prometheus架构组件
Prometheus 是一个开源的监控与告警系统,专为动态的云原生环境(如 Kubernetes)设计。其架构基于主动拉取(Pull)模型,支持多维数据模型和灵活的查询语言(PromQL)。为核心,结合 Alertmanager 和可视化工具,为云原生应用提供了强大的监控能力。尽管存在单点存储和长期数据管理的挑战,但通过与生态系统工具(如 Thanos、Grafana)集成,可扩展为生产级监控解决方案。Prometheus 的架构以。
2025-04-16 00:17:03
976
原创 高并发应用分层架构
高并发应用的分层架构通过将系统划分为多个逻辑层,实现了职责分离、解耦和扩展性。每一层都有其特定的职责和技术栈,通过合理的设计和优化,可以构建出高性能、高可用、易维护的系统。在实际开发中,需要根据业务需求和场景选择合适的架构和技术。
2025-03-05 17:18:18
714
原创 ansible常用模块
Ansible 是一个流行的自动化工具,用于配置管理、应用程序部署和任务执行。它使用简单的 YAML 格式的 Playbooks 来描述任务,不需要在目标机器上安装客户端软件。Ansible 拥有丰富的模块库,可以完成各种任务。
2024-10-21 18:20:29
294
原创 Kafka如何实现高可用
Kafka中的每个分区(Partition)都有多个副本(Replica),这些副本分布在不同的Broker上。:如果Leader副本宕机,Kafka会从ISR中选举一个新的Leader。:在早期版本的Kafka中,ZooKeeper用于管理集群的元数据、进行Broker的协调(如Leader选举)和消费者组管理等。设置为all时,生产者需要等待ISR中的所有副本都确认接收到消息后才认为消息写入成功,这提供了最高级别的数据一致性保证。:Kafka提供了不同的数据一致性保证,可以通过配置。
2024-10-11 09:07:49
562
原创 Flink和elasticsearch的关系
Flink 提供了与 Elasticsearch 集成的连接器,使得 Flink 能够将处理后的数据实时写入 Elasticsearch,从而实现实时搜索和分析。总的来说,Flink 和 Elasticsearch 的结合为实时数据处理和搜索提供了一个强大的解决方案,适用于需要实时分析和索引大数据的场景。Flink 是一个流处理框架,能够处理大规模的实时数据流,而 Elasticsearch 是一个基于 Lucene 的搜索引擎,它提供了分布式的全文搜索能力,通常用于日志数据或其他需要快速搜索的场合。
2024-10-11 05:26:43
461
原创 Flink和spark的区别
Apache Flink和Apache Spark都是功能强大的开源分布式计算框架,用于处理大规模数据集。选择哪个框架通常取决于具体的业务需求、数据特性、性能要求和开发团队的经验。
2024-10-10 18:14:40
896
原创 Prometheus联邦集群原理
Prometheus联邦集群的原理是基于Prometheus的联邦(Federation)功能,允许一个Prometheus实例(我们称之为中心或上层Prometheus)去收集其他一个或多个Prometheus实例(我们称之为联邦或下层Prometheus)中的数据。这样做可以有效地扩展监控范围,同时保持单个Prometheus实例的轻量化和响应速度。
2024-10-10 17:11:42
655
原创 Prometheus联邦集群原理
Prometheus联邦集群是一种用于扩展Prometheus监控能力的机制,它允许一个Prometheus服务器从另一个Prometheus服务器提取选定的时间序列数据。这种机制通常用于实现可扩展的监控设置,或者将相关指标从一个服务的Prometheus拉取到另一个Prometheus中。
2024-10-10 17:06:48
438
原创 Redis哨兵模式和Cluster模式的区别
Redis的哨兵模式(Sentinel)和集群模式(Cluster)是两种不同的高可用性和扩展解决方案,它们有以下主要区别:
2024-10-01 22:39:34
842
原创 Spark和MapReduce区别
Apache Spark和Hadoop MapReduce都是大数据处理框架,但它们在设计理念、性能和使用方式上有一些关键的区别:
2024-09-30 10:47:17
439
1
原创 Hadoop组件
Hadoop是一个开源的分布式计算框架,由Apache软件基金会开发,主要用于处理和分析大规模数据集。Hadoop的核心设计理念是将计算任务分布到多个节点上,以实现高度可扩展性和容错性。
2024-09-30 09:24:29
495
原创 K8s常用命令
Kubernetes(常简称为K8s)是一个强大的开源平台,用于自动化部署、扩展和管理容器化应用程序。这些命令覆盖了Kubernetes的基本操作,包括资源的查看、创建、删除和更新。在使用这些命令之前,确保你已经配置了。的访问权限,并且你的Kubernetes集群是可访问的。
2024-09-29 21:28:28
378
原创 Linux cut命令
命令在 Linux 中用于剪切一段文本并输出剪切后的内容。中剪切每个行的第2和第4个字段(默认字段分隔符是制表符)。这会剪切第2和第3个字段,并且删除字段之间的空格分隔符。这会使用逗号作为字段分隔符,并在输出时使用分号。这会剪切除了第1到第10个字符之外的所有内容。这会剪切第1个字段和第3到第5个字段。中剪切每个行的第10到第20个字符。文件中的用户名(通常是第1个字段)。作为字段分隔符,并剪切第2个字段。中剪切每个行的第1到第3个字符。这会使用正则表达式来确定字段。作为新的字段分隔符。
2024-09-29 21:24:22
395
原创 AWR报告中哪些指标最有助于诊断性能问题
DB Time与Elapsed Time的关系:DB Time是数据库处理用户请求所花费的总时间,而Elapsed Time是实际经过的时间。综上所述,AWR报告中的这些指标为数据库管理员提供了丰富的性能数据,通过分析这些指标可以快速定位并解决性能问题。Top 5 Timed Events(等待事件):这些事件通常表示数据库在处理过程中等待资源(如CPU、I/O等)的时间最长的部分。I/O和内存使用情况:包括物理读、逻辑读、PGA和SGA的使用情况等。这些指标可以帮助识别出I/O和内存瓶颈。
2024-09-22 08:21:09
337
原创 如何使用AWR分析Oracle数据库性能下降
分析AWR报告:DB Time:关注DB Time与Elapsed Time的关系,如果DB Time接近或大于Elapsed Time乘以CPU数,表明数据库可能处于高负载状态。I/O和内存使用情况:分析物理读和逻辑读的比例,以及内存利用率,识别I/O和内存瓶颈。系统资源使用情况:查看CPU、内存和I/O等系统资源的使用情况,了解数据库运行的环境状况。优化措施:针对定位到的问题,采取相应的优化措施,如调整SQL语句、添加或重建索引、调整数据库配置参数等。监控优化后的效果,必要时进一步调整优化策略。
2024-09-22 08:16:52
311
原创 Ceph的基本原理
RADOS将数据切分成对象(Objects),每个对象都有一个唯一的ID(OID),这些对象通过CRUSH算法存储在多个OSD(Object Storage Daemon)节点上,确保数据的高可用性和容错性。数据复制和故障恢复:每个对象都会复制到多个OSD节点以确保数据的冗余和容错,当某个OSD节点故障时,其他节点可以接管其工作。数据存储:用户通过客户端请求存储数据时,数据会被切分成多个对象,每个对象通过CRUSH算法存储在多个OSD节点上。RADOS:负责数据存储和管理,提供对象存储服务。
2024-09-17 23:06:49
275
原创 Tidb数据库
TiDB是一个分布式NewSQL数据库,它支持水平扩展、ACID事务、标准SQL、MySQL语法和MySQL协议,具有数据强一致的高可用特性,适合OLTP和OLAP场景。
2024-07-24 15:30:56
631
原创 Linux性能检查命令
(System Activity Reporter):收集、报告和存储系统的性能数据,包括 CPU、内存、磁盘和网络等方面的信息。:显示系统的虚拟内存状态,包括内存、交换空间、磁盘 I/O 和 CPU 使用情况。:交互式的实时监控工具,是 top 命令的增强版本,提供了更加直观和交互式的界面。:实时显示系统的进程信息和资源占用情况,包括 CPU、内存、交换空间等。:显示 CPU 和磁盘 I/O 统计信息,帮助监控磁盘的读写性能。:列出打开的文件和进程,包括磁盘文件、网络套接字、管道、设备等。
2024-07-06 23:51:57
317
原创 Redis集群模式
Redis集群模式是一种实现高可用性、数据分片和负载均衡的技术。它通过将多个Redis节点连接在一起,使得Redis能够在不同节点上同时提供服务,从而提高整体性能和可靠性。
2024-06-30 21:03:24
440
原创 Mysql常见面试题
MySQL常见面试题通常包括数据库基础知识、SQL语句优化、索引设计、存储引擎、事务处理、备份与恢复、性能调优等方面。这些问题覆盖了MySQL的多个方面,是面试准备中的一个很好的起点。在准备面试时,建议深入理解每个主题,并结合实际经验进行回答。
2024-06-29 22:26:09
219
原创 Linux启动流程
Linux启动过程涉及多个层面的初始化和配置,确保系统能够从硬件层面顺利过渡到用户空间,并提供完整的系统功能。: POST完成后,BIOS查找启动设备(通常是硬盘),读取MBR(Master Boot Record)或GPT(GUID分区表)中的启动信息。: init是Linux系统中的第一个用户空间进程,它的进程ID(PID)通常是1。Linux启动过程是一个从硬件到操作系统内核,再到用户空间的一系列步骤。: 根据配置的运行级别,init进程启动必要的服务和守护进程,如网络服务、打印服务等。
2024-06-29 22:11:23
288
原创 Python多态
Python是一种动态类型语言,它通过鸭子类型(duck typing)来实现多态性,这意味着关注的行为而不是对象的类型。如果一个对象的行为看起来像鸭子,走起来像鸭子,那么它就可以被当作鸭子对待,不管它的实际类型是什么。(Override):在Python的类继承中,子类可以重写父类的方法,当调用子类实例的方法时,会调用子类中重写的方法。:通过定义接口(只包含方法定义的类),可以要求实现这些接口的类提供具体的方法实现。模块,可以定义抽象基类,强制子类实现某些方法,这也是一种多态性的体现。
2024-06-29 22:04:49
379
原创 K8s组件
这些组件共同工作,提供了一个强大的平台,用于管理大规模的容器化应用程序。控制平面组件负责集群的全局决策和事件响应,而节点上的组件则负责执行具体的任务,如运行容器和维护网络。:在每个节点上运行的代理,负责维护容器的生命周期,包括启动容器、监控容器运行状态以及资源使用情况等。:容器运行时接口,用于与不同的容器运行时(如 Docker、containerd 等)交互。:在主节点上运行的控制器组件,负责运行集群中的各种控制器进程。:网络代理,运行在每个节点上,负责维护节点的网络规则和转发。
2024-06-29 13:00:57
310
原创 Prometheus面试题
这些问题覆盖了 Prometheus 的基本概念、工作原理、组件、数据采集、查询语言、高可用性、告警处理、局限性、Kubernetes 监控和容量规划等多个方面,是准备 Prometheus 面试的一个很好的起点。- Prometheus 通过定时拉取(Pull)或服务推送(Push)的方式,从被监控的目标(如服务器、服务等)收集指标数据,然后将这些数据存储在本地的时序数据库中,用户可以通过 Prometheus 的 Web UI 或 API 进行数据查询和可视化。
2024-06-29 12:56:43
1695
原创 Python自动化运维脚本
Python在自动化运维中扮演着重要的角色,它提供了丰富的库来帮助我们执行各种任务,如文件操作、数据库管理、网络请求等。以下是一些常见的Python自动化运维脚本模板,它们可以作为起点来构建你自己的自动化脚本。请注意,这些模板需要根据你的具体需求进行调整和完善。例如,你可能需要添加异常处理、日志记录或其他功能。
2024-06-28 17:42:41
560
1
原创 linux安装tomcat-9.0.19
1.下载tomcat和jdkwget http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.19/bin/apache-tomcat-9.0.19.tar.gzwget http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html2...
2019-04-26 10:50:28
889
原创 zabbix自定义监控日志
监控需求:监控日志:/var/log/xxx/ins_paused.log 出现error字段进行告警监控项:键值:log[/var/log/xxx/ins_paused.log,“error|Error|ERROR”,skip,]新建触发器:{Template OS Linux:log[/var/log/weixq/ins_paused.log,“error|Error|ERROR”,sk...
2019-04-26 10:24:17
736
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人