240 发简信
IP属地:上海
  • 120
    Git Reset 三种模式

    有时候,我们用Git的时候有可能commit提交代码后,发现这一次commit的内容是有错误的,那么有两种处理方法:1、修改错误内容,再次commit一次 2、使用git r...

  • 120
    聊一聊disruptor-无锁并发框架

    前言 Disruptor是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题。基于Disruptor开发的系统单线程能支撑每秒600万订单,20...

  • 120
    Spark 内存管理

    Spark是基于内存的计算引擎,就是说它高效的使用了分布式节点上的内存资源,尽可能多的使用内存,而不是将数据写入磁盘。内存管理机制就是其中的核心 首先Spark支持堆外内存的...

  • 120
    HBase

    最近看了Bigtable的论文,所以结合着看了HBase的实现 HBase是一个开源的,分布式,版本化的非关系型数据库,模仿Google Bigtable实现 架构 Data...

  • 可取消的异步任务——FutureTask用法及解析

    网上一搜取消正在执行的异步任务,会出现很多Future,FutureTask相关的文章,最近我也用了一下FutureTask,这里记录一下使用中遇到的问题,最后结合源码分析一...

  • 120
    Java 火焰图

    火焰图是进行性能分析的工具,可以通过Flame Graph获取指定程序的火焰图,目前IDEA也增添了火焰图功能,叫做CPU Profiler Flame Graphs Fla...

  • 120
    Java集合干货系列-(四)TreeMap源码解析

    前言 今天来介绍下TreeMap,TreeMap是基于红黑树结构实现的一种Map,要分析TreeMap的实现首先就要对红黑树有所了解。构造图如下:蓝色线条:继承绿色线条:接口...

  • Spark ShutdownHook

    按照优先级在关闭时执行一系列操作,在spark内用途很广泛,主要是释放资源,删除文件等 使用 ShutdownHookManager ShutdownHookManager的...

  • 120
    Spark-Core源码精读(9)、注册Application及Executors的启动注册流程(一)

    接下来的几篇文章我们会结合源码来分析注册Application以及启动Executor并向Driver注册的具体流程。 上文我们跟踪源码到了SparkDeploySchedu...

  • 120
    Docker 概念

    Docker是基于容器的应用开发,部署和运行平台 高性能:相比传统虚拟机,不需要hepervisor的额外负载,而是直接在主机内核中运行,可以在同一硬件上运行更多工作负载 持...

  • k8s证书配置,dns,dashboard

    一.签发证书 TLS双向认知需要预先自建CA签发证书,权威CA机构的证书应该不可用,因为大部分k8s都是在内网中部署,而内网应该都会采用私有IP地址通讯,权威CA好像只能签署...

  • Java CPU亲和性

    最近在项目中碰到整个进程的CPU占用率极低,分析了很久,才排查到是CPU亲和性相关的问题,因为在项目启动配置过程中,调用了一个FPGA的初始化操作的native函数,FPGA...

  • Unsafe类详解

    Unsafe类是进行底层操作的方法集合,可以直接操作内存,进行一些非常规操作,所以说是"不安全"的操作,但是因为直接操作内存,它的效率很高,通常在在对性能有要求或者有底层操作...

  • 120
    Spark RPC 通信机制

    相关概念 主要涉及RpcEnv,RpcEndpoint,RpcEndpointRef,其中RpcEnv是通信的基础,每个通信节点上都需要实现该类,其内部实现了消息的传输处理机...