240 发简信
IP属地:山东
  • 120
    缓存系统应用

    经典缓存设计方案 CacheAside 优点:简单易于实现缺点:自己维护数据更新后的同步逻辑;对业务代码有侵入性 Reade\Write Through 优点:把缓存和数据库...

  • 120
    SpringSecurity源码整体解析

    核心思想 spring对请求的处理过程如下: 而security所有认证逻辑作为特殊的一个Filter加入到spring处理servelet的过滤链中,即FilterChai...

  • 120
    ZooKeeper典型应用

    Zookeeper在业界有非常广泛的应用,比较著名的项目有: Kafka-----Broker、Topic等元数据管理 Dubbo--------注册中心 Hadoop---...

  • 120
    ZooKeeper简介

    ZooKeeper是一个开源的分布式协调服务,由雅虎创建,是Google Chubby的开源实现。ZooKeeper的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来...

  • 120
    ZAB实现

    协议的 Java 版本实现跟上面的定义有些不同,选举阶段使用的是 Fast Leader Election(FLE),它包含了 Phase 1 的发现职责。因为 FLE 会选...

  • 120
    ZAB

    本文主要是以下两篇文章的整合:ZabZAB 协议 算法简介 Zab是Zookeeper Atomic Broadcast协议的简称,是为分布式协调服务Zookeeper专门设...

  • 分布式系统概述

    分布式系统特点 分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。 分布性 对等性没有主从之分 并发性 缺乏全局时钟 故障...

  • 120
    网络IO

    缓冲区 性能指标 带宽,表示链路的最大传输速率,单位通常为 b/s (比特 / 秒)。 吞吐量,表示单位时间内成功传输的数据量,单位通常为 b/s(比特 / 秒)或者 B/s...

  • 120
    性能瓶颈分析套路

    性能指标 性能工具 根据指标到工具 根据工具查指标 分析思路 top查看系统整体情况 用 iostat 发现磁盘 I/O 性能瓶颈; 再借助 pidstat ,定位出导致瓶颈...

  • 案例

    案例1 top查看系统整体情况 CPU0 的使用率非常高,它的系统 CPU 使用率(sys%)为 6%,而 iowait 超过了 90%。这说明 CPU0 上,可能正在运行 ...

  • 120
    磁盘IO

    磁盘为系统提供了最基本的持久化存储。文件系统则在磁盘的基础上,提供了一个用来管理文件的树状结构。 根据存储介质的不同,常见磁盘可以分为两类:机械磁盘和固态磁盘。 按照接口来分...

  • 120
    内存性能瓶颈分析套路

    内存性能指标 性能指标与工具 根据指标对应到工具 根据工具对应到指标 内存瓶颈分析思路 从整体到具体

  • 120
    关于内存

    内存管理 内存管理包含: 物理内存管理; 虚拟内存管理; 两者的映射image.png 一个程序被加载启动,一个重要任务就是建立内存映射 除了内存管理模块, 其他都使用虚拟地...

  • 120
    CPU性能瓶颈分析套路

    性能指标 性能分析工具 根据指标找工具: 根据工具找指标: 排查CPU性能问题思路

  • 软中断

    含义 为了解决中断处理程序执行过长和中断丢失的问题,Linux 将中断处理过程分成了两个阶段,也就是上半部和下半部: 上半部用来快速处理中断,它在中断禁止模式下运行,主要处理...

  • 120
    CPU使用率

    Linux 作为一个多任务操作系统,将每个 CPU 的时间划分为很短的时间片,再通过调度器轮流分配给各个任务使用,因此造成多任务同时运行的错觉。 如何查看 系统整体使用率-t...

  • 平均负载

    如何查看 通过执行 top 或者 uptime 命令,可以了解系统的负载情况 依次则是过去 1 分钟、5 分钟、15 分钟的平均负载。 平均负载含义 平均负载是指单位时间内,...

  • 120
    CPU上下文切换

    栈空间 用户态函数栈主要用于用户态的函数调用image.png 内核栈Linux 给每个 task 都分配了内核栈,主要用于内核态的函数调用除了内核栈,还有内核寄存器,pt_...

  • 120
    重要算法

    count InnoDB 引擎执行 count() 的时候,需要把数据一行一行地从引擎里面读出来,然后累积计数。这跟InnoDB 的事务设计有关系,可重复读是它默认的隔离级别...