Ekko Blog

路漫漫其修远兮 ,吾将上下而求索

RPC框架

Remote Procedure Call

参考资料知乎柳树、知乎易哥、知乎、开发频道 [TOC] RPC:一种架构模式,只要符合远程过程调用,都叫rpc。比如 openFeign 就是一种基于http实现的rpc rpc的序列化效率更高 http超文本传输协议,如果基于http实现的rpc,一样不能摆脱http协议规范的请求头,只不过rpc会视情况压缩这部分内容 什么是RPC RPC(Remote Proce...

Dubbo入门

RPC Dubbo

随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进 垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。此时,用于提高业务复用及整合的分布式服务框架(RPC)是关键 参考资料Jav...

JAVA线程池实现原理

Thread Pool

参考资料美团技术团队、简书 推荐《Java并发编程实战》 [TOC] 什么是线程池 线程池,从字面含义来看,是指管理一组同构工作线程的资源池,是一种基于池化思想管理线程的工具,经常出现在多线程服务器中,如MySQL 线程池可以看做是线程的集合。在没有任务时线程处于空闲状态,当请求到来:线程池给这个请求分配一个空闲的线程,任务完成后回到线程池中等待下次任务(而不是...

面试问题多线程版-Ⅰ

Interview

文章内容主要来自优知学院 AQS部分参考知乎、简书 结合其他相关内容汇总,包括锁、AQS等内容,方便查看 [TOC] 并发编程三要素 原子性: 一个不可再被分割的颗粒。原子性指的是一个或多个操作要么全部执行成功要么全部执行失败 有序性: 程序执行的顺序按照代码的先后顺序执行。(处理器可能会对指令进行重排序) 可见性: 一个县城对共享变量的修...

JAVA虚拟机-Ⅱ

JVM

学习虚拟机更有助于深入理解JAVA这门语言,《深入理解java虚拟机》属于程序员必读书籍之一 本篇包括《JVM垃圾回收机制》、《回收算法》、《回收器》、《回收类型》等内容 本文参考微笑和陈树义及其他零散资料,对JVM的学习做一个汇总,方便查看 补充的引用部分参考头条科技 [TOC] JVM垃圾回收机制 内存总是有限的,我们需要一个机制来不断地回...

JAVA虚拟机-Ⅰ

JVM

学习虚拟机更有助于深入理解JAVA这门语言,《深入理解java虚拟机》属于程序员必读书籍之一 本篇包括《什么是虚拟机》、《源代码到机器码》、《JVM内存结构》、《类的加载机制》四部分内容 本文参考微笑和陈树义及其他零散资料,对JVM的学习做一个汇总,方便查看 [TOC] 什么是虚拟机 虚拟机是一种抽象化的计算机,通过软件模拟具有完整硬件系统功能的、运行在...

十大经典算法详解

Algorithm

这个博客总结的不错。 结合其他博客与相关内容,此篇文章逐渐被完善,便于读者理解。 [TOC] 冒泡排序 时间复杂度O(n^2),空间复杂度O(1),稳定。 从头开始,每次两个相邻的元素,若大者在前,则交换两元素直至数组末尾 此时最大元素为数组最后的元素 重复以上步骤,从头开始至上一轮比较的末尾元素; 1 2 3 4 5 6 7 8 9 10 11 12 1...

面试问题java版-Ⅰ

Interview

大部分问题来源掘金这篇文章 结合其他博客与相关内容,将问题的参考答案总结在这里,便于读者理解。 [TOC] java基本类型 byte、1 字节,最小值-128(-2^7),最大值127(2^7-1) short、2 字节,最小值-32768(-2^15),最大值32767(2^15 - 1) int、4 字节,最小值是 -2,147,483,648(...