240 发简信
  • java 线程池

    java 线程池 Java 的 concurrent 包下提供了多种线程池的实现,使用起来非常方便 ExecutorService ExecutorService 是线程池的...

  • java atomic

    java atomic 原子变量提供各种原子操作,多线程场景下操作不需要加锁,性能非常好 简例 AtomicInteger get: 返回当前 int 值 increment...

  • java io 流

    java io 流 io 流总览 io 流主要提供四个接口 InputStream: 输入字节流 OutputStream: 输出字节流 Reader: 输入字符流 Writ...

  • java stream

    java stream stream 是 java 8 的一大亮点,专注于了集合的处理,包括抽取,过滤,转化,聚合,化简等,借助新的 lambda 表达式,极大地简化了流式处...

  • java 正则表达式

    java 正则表达式 正则表达式是一个非常强大的字符串处理工具,通过一种特殊的语法来描述一种模式,再通过模式可以完成字符串的匹配,萃取,替换等操作 简例 要判断一个字符串是否...

  • java lambda 表达式

    java lambda 表达式 lambda 是 java 8 引入的新特性,lambda 能替换简单的函数和类,简化了代码,提高了代码可读性 语法 如果参数类型可以自动推导...

  • java 数学计算

    java 数学计算 java.lang.Math 库提供了常用的数学计算工具 常量 取整 abs(x): 绝对值 floor(x): 向下取整 ceil(x): 向上取整 r...

  • java 字符串

    java 字符串 断言 startsWith(x): 前缀判断 endsWith(x): 后缀判断 contains(x): 包含判断 equalsIgnoreCase(x)...

  • java 字典

    java 字典 数据结构总览 Map Map 描述的是一种映射关系,一个 key 对应一个 value,可以添加,删除,修改和获取 key/value,util 提供了多种 ...

  • 120
    java 集合

    java 集合 数据结构总览 Collection Collection 接口主要关注集合的添加,删除,包含 isEmpty: 判断是否没有元素 size: 获取元素个数 a...

  • java 基本类型

    java 基本类型 基本类型 java 基本的基本类型包括 boolean, byte, char, short, int, long, float, double 每个类型...

  • 表达式求值相关算法

    实现对一个数学表达式的求值,例如:1+2*(3+4) 这个表达式的值为 15 这个问题主要要分为如下几个步骤: 语法分析: 将字符串表达式转化为数字和操作符的 token 数...

  • 系统监控设计与实现

    监控宿主机器的一些基础指标,并写入到 influxdb 用于之后的可视化以及报警服务 监控的指标包括:cpu利用率,cpu负载,内存使用,网络负载,iops,磁盘等 总体设计...

  • golang 命令行参数解析 hflag

    简介 hflag 是被设计用来替代标准的 flag 库,提供更强大更灵活的命令行解析功能,相比标准库,hflag 有如下特点 支持可选参数和必选参数 支持参数缩写 支持位置参...

  • golang 标准命令行解析库 flag

    flag 库实现了对命令行参数的解析 基本用法 上面代码指定了两个选项: bool 类型的 b 选项,默认值为 false,帮助信息 bool flag string 类型的...

  • docker consul 环境搭建

    和 etcd 类似,consul 也是一个高可用的分布式 kv 系统,并且提供了比 etcd 更丰富的功能,自带 ui 界面 consul 有客服端模式(client)和服务...

  • docker etcd 环境搭建

    etcd 是用 golang 编写,raft 协议实现的分布式高可靠的 kv 存储系统,常用来作为配置共享和服务注册发现,Kubernetes 就使用 etcd 来保存整个集...

  • mysql 事务

    事务 ACID 特性 原子性(Atomicity): 事务中的所有操作,要么全部成功,要么全部失败回滚到最初状态,不会结束在中间的某个环节 一致性(Consistency):...

  • c++ 实现 blocking queue

    阻塞队列就是多线程线程安全的队列,在多线程场景下经常用到,c++ 标准库里面没有提供阻塞队列,boost 中有提供,生成环境下可以使用 blocking queue 实现 主...

  • golang 反射

    反射机制是指在程序运行的时候动态地获取对象的属性后者调用对象方法的功能。golang 支持反射,原生的 json 库就是用反射机制实现。 golang 的反射有两个主要的概念...