个人简介

Echo Blog


江湖无名 安心练剑
  • 缓存实战(1)缓存雪崩、缓存击穿和缓存穿透入门简介及解决方案
    缓存的注意点 我们前面花了很多篇幅讲解 redis 的实现原理,并且也自己手写实现了一些基础功能。 你在工作学习中肯定或多或少都接触过 redis 等缓存,本篇对缓存使用的注意点做一个入门介绍。 内容相对轻松简单,请放心食用。 缓存大大提升了我们的查询性能,但是使用不慎很可能掉到坑里。 本文介绍下缓存雪崩、缓存击穿和缓存穿透这三个挖坑的小能手,让你知道如何避免这几个坑,避免加班修B...
    2018-09-01 04:24:42 | Java
  • Cache Travel-00-index
    缓存 缓存是提升性能非常重要的手段。 本系列就缓存做深入学习和整理。 缓存系列 基础数据结构 LRUMAP HashMap ConcurrentHashMap 成熟框架 Guava Cache EhCache MemCache Redis 系列 Caffeine LevelDB 系列 ali 感觉就是对各种常见框架的整合和增强。 提供了分布式的支持。 Je...
    2018-09-01 04:24:42 | Java
  • SQL MVCC
    MVCC MVCC是Multi Version Concurrency Control的简称,代表多版本并发控制。 为什么需要MVCC,还要从数据库事务的ACID特性说起。 相信很多朋友都了解ACID,它们分别代表了Atomicity(原子性), Consistency(一致性), Isolation(隔离性), Durability(持久性)。 各种数据库厂商会对各个隔离级别进行实...
    2018-08-31 05:44:07 | SQL
  • Java Static
    java static 代码块 静态代码块:用 staitc 声明,jvm 加载类时执行,仅执行一次 构造代码块:类中直接用 {} 定义,每一次创建对象时执行。 执行顺序优先级:静态块, main(), 构造块, 构造方法。 静态代码块 代码 static{} 特性 它是随着类的加载而执行,只执行一次,并优先于主函数。 具体说,静态代码块是由类调用的。类调用时,先执行静...
    2018-08-30 05:21:33 | Java
  • SQLProxy
    ProxySQL ProxySQL is High-performance MySQL proxy with a GPL license. 特性 Query caching 忘记那些无法有效地反复访问相同结果而产生负载的应用程序。ProxySQL很快就加入了它的高级规则引擎。结果也可以缓存为一个可配置的timespan,以原生MySQL数据包格式。 Query Rou...
    2018-08-30 02:59:31 | SQL
  • SQL Isolation
    数据库隔离性 概念 事务隔离级别是数据库事务处理的基础,ACID 中 I,即 Isolation,指的就是事务的隔离性。 隔离性是指,多个用户的并发事务访问同一个数据库时,一个用户的事务不应该被其他用户的事务干扰,多个并发事务之间要相互隔离。 sql 92 标准 sql 92 标准定义了 4 种隔离级别,读未提交、读已提交、可重复读、串行化,见下表。 ANSI SQL 隔离...
    2018-08-30 01:22:17 | SQL
  • SQL Charset
    场景 mysql 中文报错,如下: Incorrect string value: '\xF0\xA0\xBA\x98\xE5\x8F...' for column 'title' at row 1 常用命令 查看 SHOW VARIABLES LIKE 'character%' 修改 SET character_set_client = utf8mb4 ;...
    2018-08-28 17:07:21 | SQL
  • GraphQL
    GraphQL GraphQL 是一种开放源码的数据查询和操作语言,以及一个用于使用现有数据完成查询的运行时。 GraphQL于2012年由Facebook内部开发,2015年公开发布。 它提供了一种更高效、更强大和更灵活的替代REST和特别web服务体系结构的方法。允许客户机定义所需数据的结构,并且从服务器返回的数据结构完全相同,因此可以防止返回过多的数据。 GraphQL支持读取...
    2018-08-28 01:55:16 | SQL