会员
T恤
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
murphy_gb
博客园
首页
新随笔
联系
订阅
管理
随笔 - 48
文章 - 1
评论 - 95
阅读 -
50万
2021年1月11日
Hbase简介
摘要: 1 HBase的特点 海量存储、列式存储、极易扩展、高并发、稀疏数据、准实时查询(弥补MapReduce的离线延时) 2 逻辑结构和物理结构 2.1 逻辑结构 HBase表由行和列组成,每个行由行键(row key)来标识,列划分为若干列族,一个列族中可以包含任意多个列,同一个列族里面的数据存储在一
阅读全文
posted @ 2021-01-11 21:27 murphy_gb
阅读(1230)
评论(0)
推荐(0)
2020年7月20日
git的几个常用基本操作
摘要: 需求一:如何把stage中的修改还原到work dir中 这个需求很常见,也很重要,比如我先将当前work dir中的修改添加到stage中,然后又对work dir中的文件进行了修改,但是又后悔了,如何把work dir中的全部或部分文件还原成stage中的样子呢? 来个实际场景,我先新建两个文件
阅读全文
posted @ 2020-07-20 08:21 murphy_gb
阅读(1195)
评论(1)
推荐(0)
2020年2月16日
为什么尽量不要使用Executors创建线程池
摘要: 看阿里巴巴开发手册并发编程这块有一条:线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式,通过源码分析禁用的原因。 线程池的优点 管理一组工作线程,通过线程池复用线程有以下几点优点: 减少资源创建:减少内存开销,创建线程占用内存 降低系统开销:创建线程需要时
阅读全文
posted @ 2020-02-16 18:46 murphy_gb
阅读(6850)
评论(0)
推荐(0)
2020年2月14日
Java8中的Stream
摘要: java8也出来好久了,接口默认方法,lambda表达式,函数式接口,Date API等特性还是有必要去了解一下。比如在项目中经常用到集合,遍历集合可以试下lambda表达式,经常还要对集合进行过滤和排序,Stream就派上用场了。 Stream作为java8的新特性,基于lambda表达式,是对集
阅读全文
posted @ 2020-02-14 12:18 murphy_gb
阅读(382)
评论(0)
推荐(0)
2020年2月12日
Redis分布式锁的正确加锁与解锁方式
摘要: 现在的业务场景越来越复杂,使用的架构也就越来越复杂,分布式、高并发已经是业务要求的常态。像腾讯系的不少服务,还有CDN优化、异地多备份等处理。 说到分布式,就必然涉及到分布式锁的概念,如何保证不同机器不同线程的分布式锁同步呢? 实现要点 1. 互斥性,同一时刻,只能有一个客户端持有锁。 2. 防止死
阅读全文
posted @ 2020-02-12 14:13 murphy_gb
阅读(10837)
评论(0)
推荐(2)
2020年2月11日
高并发系统中的限流算法
摘要: 在高并发系统时有三把利器用来保护系统: 缓存、降级和限流 ,本文将介绍一些限流的相关概念、算法和常规的实现方式。 缓存 缓存比较好理解,在大型高并发系统中,如果没有缓存数据库将分分钟被爆,系统也会瞬间瘫痪,使用缓存不单单能够提升系统访问速度,提高并发访问量,也是保护数据库、保护系统的有效方式,大型网
阅读全文
posted @ 2020-02-11 15:18 murphy_gb
阅读(600)
评论(0)
推荐(0)
2020年2月2日
谈谈 InnoDB引擎中的一些索引策略
摘要: 如果我们在工作能够更好的利用好索引,那将会极大的提升数据库的性能。 覆盖索引 覆盖索引是指在普通索引树中可以得到查询的结果,不需要在回到主键索引树中再次搜索 建立如下这张表来演示覆盖索引: 我们执行select from T where age between 13 and 25 语句,这条语句的执
阅读全文
posted @ 2020-02-02 15:04 murphy_gb
阅读(347)
评论(0)
推荐(0)
2020年1月13日
面试必问:手写一个内存泄漏的程序
摘要: 手写一个内存泄露的程序是面试官经常问的问题。 造成内存泄漏,就是让运行的程序无法访问存储在内存中的对象,下面是Java实现: 1. 创建一个长时间运行的线程(使用线程池泄露的速度更快)。 2. 线程通过ClassLoader加载某个类(也可以用自定义ClassLoader)。 3. 这个类分配了大量
阅读全文
posted @ 2020-01-13 23:23 murphy_gb
阅读(1203)
评论(0)
推荐(0)
2019年12月26日
空指针异常与Optional类
摘要: 一、什么是空指针异常 当程序需要对象实例的时候返回 就会抛出空指针异常( ,简称 NPE )。包括以下情况: 调用一个 对象实例的方法 访问或修饰 对象的字段 获取数组为 时的长度 访问或修饰数组为 时的索引值 抛出 对象为 时的异常 虽然代码很难万无一失地避免所有NPE,但是也要尽量减少。所以一些
阅读全文
posted @ 2019-12-26 11:11 murphy_gb
阅读(1007)
评论(0)
推荐(1)
2019年11月23日
Redis的内存淘汰策略
摘要: Redis占用内存大小 我们知道Redis是基于内存的key value数据库,因为系统的内存大小有限,所以我们在使用Redis的时候可以配置Redis能使用的最大的内存大小。 1、通过配置文件配置 通过在Redis安装目录下面的redis.conf配置文件中添加以下配置设置内存大小。 redis的
阅读全文
posted @ 2019-11-23 17:55 murphy_gb
阅读(862)
评论(0)
推荐(1)
下一页
公告
昵称:
murphy_gb
园龄:
6年4个月
粉丝:
130
关注:
2
点击右上角即可分享