自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Hanniboo's Blog

code better, live better

  • 博客(23)
  • 收藏
  • 关注

原创 SpringCloud Netflix Eureka简介

1、Eureka 简介:Eureka 是 Netflix 出品的用于实现服务注册和发现的工具。 Spring Cloud 集成了 Eureka,并提供了开箱即用的支持。其中, Eureka 又可细分为 Eureka Server 和 Eureka Client。1.基本原理上图是来自eureka的官方架构图,这是基于集群配置的eureka;- 处于不同节点的eureka通...

2019-03-23 16:00:41 255

原创 转载比较spring cloud和dubbo,各自的优缺点是什么

dubbo由于是二进制的传输,占用带宽会更少springCloud是http协议传输,带宽会比较多,同时使用http协议一般会使用JSON报文,消耗会更大dubbo的开发难度较大,原因是dubbo的jar包依赖问题很多大型工程无法解决springcloud的接口协议约定比较自由且松散,需要有强有力的行政措施来限制接口无序升级dubbo的注册中心可以选择zk,redis等多种,spri...

2019-03-23 11:38:02 319

原创 SpringCache缓存管理

@EnableCaching 注解什么意思https://www.cnblogs.com/imyijie/p/6518547.html

2019-03-08 20:08:50 364

原创 Lombok注解含义

@Data :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法@Setter:注解在属性上;为属性提供 setting 方法@Getter:注解在属性上;为属性提供 getting 方法@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象@NoA...

2019-03-07 17:55:49 435

原创 发票相关

京东发票架构https://www.codercto.com/a/28823.html

2019-03-03 16:25:34 141

原创 Nginx工作原理

写的易懂又详细https://www.jianshu.com/p/6215e5d24553

2019-02-27 17:50:00 142

原创 Netty三种Reactor模型

Reactor(反应堆)和Proactor(前摄器)《I/O模型之三:两种高性能 I/O 设计模式 Reactor 和 Proactor》《【转】第8章 前摄器(Proactor):用于为异步事件多路分离和分派处理器的对象行为模式》《Java NIO系列教程(八)JDK AIO编程》-- java AIO的proactor模式《Java NIO系列教程(七) selector原理 ...

2019-02-26 20:39:50 2888

原创 如何理解Java NIO和non-blocking IO

Java NIOnio 是 java New IO 的简称,在 jdk1.4 里提供的新 api 。 Sun 官方标榜的特性如下:–     为所有的原始类型提供 (Buffer) 缓存支持。–     字符集编码解码解决方案。–     Channel :一个新的原始 I/O 抽象。–     支持锁和内存映射文件的文件访问接口。–     提供多路 (non-bloki...

2019-02-26 20:15:16 479

原创 为什么正经程序员不写注释?

/**我有一同事,也是好兄弟,工作认真努力负责,一直希望自己优雅易读的代码被领导看到并表扬,从此走上猿生巅峰。然而现实很残酷,某个周一,部门开始裁员,他特别没想到会被HR叫去一个小玻璃屋子聊天,三分钟后回来,开始收拾东西。走后我接手了他负责的模块,没有任何交接,很快很舒服就上手继续做了,一个问题都没问他。。。*///第二,写注释很耽误时间,对于快速迭代上线的项目来说是没有任何产出的。//第...

2019-02-26 14:47:56 2575

原创 IDEA快捷键

 IntelliJ IDEA使用技巧(一)——常用快捷键 IntelliJ IDEA使用技巧(二)——添加jar包 IntelliJ IDEA使用技巧(三)——Debug 篇 IntelliJ IDEA使用技巧(四)——设置默认Maven的两种方法 IntelliJ IDEA使用技巧(五)——控制台输出中文乱码问题的解决方法 IntelliJ IDEA使用技巧(六)——恢复代码的...

2019-02-26 13:51:45 191

原创 interface可以多继承吗

几天前被一个面试官虐成狗,上来问住我的第一个问题是,interface1 extends interface2,interface3这种写法对吗。我有点懵逼,之前确实在java集合类源码里看到过这种写法但是忘记了,然后就呵呵了。java明明说好的不支持多继承,class可以通过implement多个Interface来间接实现多继承,但是Interface怎么implements多个接口呢。这是个...

2019-02-26 10:54:43 1255

原创 为什么Redis是单线程?为什么能处理大并发量?

一、Redis为什么是单线程注意:redis 单线程指的是网络请求模块使用了一个线程,即一个线程处理所有网络请求,其他模块仍用了多个线程。因为CPU不是Redis的瓶颈。Redis的瓶颈最有可能是机器内存或者网络带宽,既然单线程容易实现,而且CPU不会成为瓶颈,那就顺理成章地采用单线程的方案了。关于redis的性能,官方网站也有,普通笔记本轻松处理每秒几十万的请求二、Redis为什么这...

2019-02-25 15:57:15 8113 2

原创 是什么让人类成了今天这个样子

思考了一下人类能有今天的根本原因,发现是我们当初选择吃什么东西导致的。素食,优点是食物充足比较容易得到,利于群居战胜其他猎食者。但缺点是营养不足,不能让大脑良好发育。肉食,优点是食物营养价值高,获取难度大,能较好开发大脑和身体。缺点是量太小,一个地区的食物只够最多几个猎手食用。而杂食,兼有上面两者的优点。幸运的我们选对了这条路(也许是当初被迫无奈)。依靠肉类强壮了身体和大脑,依靠素...

2019-02-25 11:01:45 281

原创 什么是阻塞和非阻塞?什么是同步异步?他们区别是?

前些天遇到比较坏的面试官,专门问我一些刁钻的问题,像高中试卷一样死扣生僻知识点,提问的方式也充满陷阱,面完感觉受益匪浅,这是其中一个问题。能把这个概念讲清楚很不容易,这篇文章讲的很好记录一下。本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2015-07/120338.htm“阻塞”与"非阻...

2019-02-21 21:46:15 355

原创 PriorityQueue的用法和底层实现原理

先讲使用,再讲原理队列是遵循先进先出(First-In-First-Out)模式的,但有时需要在队列中基于优先级处理对象。举两个例子:作业系统中的调度程序,当一个作业完成后,需要在所有等待调度的作业中选择一个优先级最高的作业来执行,并且也可以添加一个新的作业到作业的优先队列中。 每日交易时段生成股票报告的应用程序中,需要处理大量数据并且花费很多处理时间。客户向这个应用程序发送请求时,...

2019-02-13 22:17:37 103693 16

原创 排序算法的总结和使用思考

 下面这篇文章总结了7种常见的排序算法和图解。记录下方便以后工作中需要时直接拿来用。https://blog.csdn.net/wang18741337665/article/details/82120413个人认为排序最好的情况是走数据库索引的排序(又快又稳定),其次是数据库没有索引时做排序(相对较慢较消耗性能,但是安全稳定,做小集合排序没有问题),不能用数据库提供排序时再考虑用ja...

2019-02-13 20:49:16 394

原创 TreeMap实现有序的原理

上一篇讲了LinkedHashMap实现有序的原理,这票介绍一个另一种有序的Map,TreeMap。同样是有序,两者大不一样,LinkedHashMap是按照插入顺序排序,而TreeMap是按照Key的自然顺序或者Comprator的顺序进行排序。在实现原理上LinkedHashMap是双向链表,TreeMap是红黑树。TreeMap还有个好兄弟叫TreeSet,实现原理是一样的。这是...

2019-02-13 14:07:52 16823 7

原创 LinkedHashMap实现有序的原理

LinkedHashMap采用的hash算法和HashMap相同,但是它重新定义了数组中保存的元素Entry,该Entry除了保存当前对象的引用外,还保存了其上一个元素before和下一个元素after的引用,从而在哈希表的基础上又构成了双向链接列表。这样就能按照插入的顺序遍历原本无序的HashMap了,是不是很方便?看源代码:/** * 双向链表的表头元素。 */ priv...

2019-02-11 21:56:04 2494

原创 Java新手程序员容易犯的错误

都是我和朋友经历过的失败经验,学校里公司里都不教,只会在发现你这样写时嘲笑你的那种错误1.原始类型和包装类星用错比如:Integer a=new Integer(129);Integer b=new Integer(129);//a==b会返回false,因为这是两个不同对象的引用还比如:入参Integer x为null,把它赋值给int y,就会报空指针异常。为什么...

2019-02-11 21:16:12 730

原创 G1垃圾回收器学习笔记

什么是G1G1:Garbage First。顾名思义,第一时间处理垃圾最多的区域(region)。由此引出了“region”的概念。不同于其他的分代回收算法,G1将堆空间划分成了互相独立的区域(region)。每块区域既有可能属于O区、也有可能是Y区,且每类区域空间可以是不连续的(对比CMS的O区和Y区都必须是连续的)。这里强调一下,G1仍然采取分代策略,只是新生代、老年代等不要求在物...

2019-02-11 20:15:19 612

原创 IDEA2016设置JDK11出错

提示The selected directory is not a valid home for JDK,但jdk是从oracle官网下的,home目录也没有选错,是什么原因呢?经过仔细的观察,发现jdk8的目录是这样子的:jdk11解压后的目录是这样子的:少了关键的jre目录等很多东西,idea2016自然不能识别了。那为什么会没有jre文件夹了呢?粗略查了一下,原因...

2019-02-09 22:18:30 3401 2

转载 转载一条G1垃圾回收器的调优经验

感觉写的不错,G1在未来两三年肯定慢慢占据主流,多学习学习:开源搜索引擎Solr是一款非常优秀的搜素引擎,只要一些简单的配置就能进行使用,大大减少了开发时间。在我工作的环境中,整站的商品搜索业务都是依托于Solr,在Solr的使用上沉淀了不少宝贵的开发经验。随着公司商品数据规模不断的扩大,针对Solr的二次开发难度也在不断的增大,在过去的几年时间内,我把大量的数据放在索引构建上,从之前的D...

2019-02-04 17:54:09 526

原创 写在二十六岁的尾巴

从2015年大学毕业,到现在已经快四年了,今天才开始写博客是以下几个原因:1.刚开始时没技术,后来有点技术了没时间2.年龄越来越大,记忆力越来越不好,往往看了就忘3.看了这么多年,一直只索取不创造,良心不安,也想回馈一下社会4.计算机是一门学科,学科里顶尖的人应该具备著书立说的能力,我想成为顶尖的人,不管能否成功,先从写博客开始吧5.每天写写对自己也是一种提高技术的激励和打发无...

2019-02-02 17:53:22 150 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除