自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 TCP连接为什么只能是“3次握手”?

引言我们知道客户端(Client)A 和服务器端(Server)B 的通信方式可分为:全双工、半双工、单工:单工:A 可以发给 B ,B 不能发给 A ,叫做单工 半双工:A 可以发给 B , B 也可以发给 A ,但是两者的步骤不能同时进行,即 A 给 B 发信息的时候,B 不能给 A 发。 全双工:即客户端 A 在给服务器端 B 发信息的同时,服务器端 B 也可以给客户端 A 发送...

2020-01-19 15:42:08 766

原创 微服务架构:手把手教你如何用十步解耦系统

导言:耦合性,是对模块间关联程度的度量。耦合的强弱取决于模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差。软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准。高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,主要是面向对象的设计,主要是看类的内...

2020-01-18 20:27:24 840

原创 2020:作为一个Java程序员应该学习哪些技术?

前言对于Java开发人员来说,最近几年的时间中,Java生态诞生了很多东西。每6个月更新一次Java版本,以及发布很多流行的框架,如Spring 5、Spring Security 5和Spring Boot 2等,这些都给我们带来了很大的挑战。在2019年初,我认为Java 10还是比较新的,但是,在我学习完所有Java 10的特性之前,Java 11、Java 12、Java 12 已...

2020-01-18 19:59:13 1473 1

原创 程序大佬:看完读懂spring Boot + MVC + APO+ IOC

Spring IoC重要概念1、控制反转(Inversion of control):控制反转是一种通过描述(在java中通过xml或者注解)并通过第三方去产生或获取特定对象的方式。控制反转IoC(Inversion of Control)是说创建对象的控制权进行转移,以前创建对象的主动权和创建时机是由自己把控的,而现在这种权力转移到第三方,比如转移交给了IoC容器,它就是一个专门...

2020-01-18 14:57:27 987

原创 看这份pdf每天学习两个小时,3个月后拿下阿里/美团/京东等offer

关于程序员,除了做项目来提高自身的技术之外,还有一种提升自己的专业技能就是:多!看!书!小编整理出一篇Java进阶架构师之路的核心知识,同时也是面试时面试官必问的知识点,篇章也是包括了很多知识点,其中包括了有基础知识、Java集合、JVM、多线程并发、spring原理、微服务、Netty 与RPC 、Kafka、日记、设计模式、Java算法、数据库、Zookeeper、分布式缓存、数据结构...

2020-01-17 17:26:20 1552 2

原创 2020预备春招:Spring Cloud 微服务架构实战

前言Spring cloud作为当下主流的微服务框架,让我们实现微服务架构变得更加简单快捷。Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。它是一个基于HTTP和TCP的客户端负载均衡器。它可以通过在客户端中配置ribbonServerList来设置服务端列表去轮询访问以达到均衡负载的作用。正文接下来为大家一份文档,文档内容包括:...

2020-01-16 20:32:51 757 1

原创 JVM: 如何避免出现GC失败

JVM是Java语言可以跨平台、保持高发展的根本,没有了JVM. Java语言将失去运行环,境。针对Java程序的性能优化一定不可能避免针对JVM的调优,随着JVM的不断发展,我们的应对措施也在不断地跟随、变化,内存的使用逐渐变得越来越复杂。所有高级语言都需要垃圾回收机制的保护,所以GC就是这么重要。JVM标准结构类的加载机制一:装载(load) 由ClassLoader负责加载...

2020-01-16 19:08:29 2633 1

原创 面试官:说一说微服务开发中的数据架构设计

前言什么是微服务?微服务(Microservice Architecture)是近几年流行的一种架构思想,关于它的概念很难一言以蔽之。简而言之,微服务架构风格是一种将单个应用程序作为一套小型服务开发的方法,每种应用程序都在自己的进程中运行,并与轻量级机制(通常是HTTP资源API)进行通信。 这些服务是围绕业务功能构建的,可以通过全自动部署机制独立部署。 这些服务的集中管理最少,可以用不同的编...

2020-01-14 15:20:15 803

原创 干货:深刻理解Lambda 表达式 (内有文档)

前言Java 8的一个大亮点是引入Lambda表达式,使用它设计的代码会更加简洁。当开发者在编写Lambda表达式时,也会随之被编译成一个函数式接口。下面这个例子就是使用Lambda语法来代替匿名的内部类,代码不仅简洁,而且还可读。正文1.什么是Lambda?“Lambda 表达式”(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接...

2020-01-13 14:34:07 1177

原创 一篇文章教你如何从小白走向大牛

对于Java很多零基础的小白不知道如何学习,不知道从哪里下手开始学起。接下来放上学习线路图帮助大家系统的进行学习,提高学习效率,极大地节省时间。《Java从小白到大牛》是一本Java语言学习教程,读者群是零基础小白,通过本书的学习能够成为Java大牛。主要内容包括: Java 语法基础、数据类型、运算符、控制语句、数组、字符串、面向对象基础、继承与多态、抽象类与接口、集合框架、异常处理、...

2020-01-11 17:02:54 499

原创 2020预备春招面试复习大纲:Java+算法+框架+Redis+分布式

前言本文收集整理了java必备的春招面试复习资料,主要内容涵盖:Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并发等架构资料等等,希望看到这篇文章的人可以在2020年找到适合自己的工作,进入自己梦寐以求的公司。正文Java开发属于后台开发方向,有人说后台开发很坑,因为需要学习的东西太多了。没错,这个岗位就是需要学习好多东西。包括:基础、数据...

2020-01-11 14:06:10 859

原创 阿里架构师谈:常见的五种MySQL高可用方案分析

一. 概述我们在考虑MySQL数据库的高可用的架构时,主要要考虑如下几方面:如果数据库发生了宕机或者意外中断等故障,能尽快恢复数据库的可用性,尽可能的减少停机时间,保证业务不会因为数据库的故障而中断。 用作备份、只读副本等功能的非主节点的数据应该和主节点的数据实时或者最终保持一致。 当业务发生数据库切换时,切换前后的数据库内容应当一致,不会因为数据缺失或者数据不一致而影响业务。关于对...

2020-01-10 22:03:36 784

原创 2020年春招必备:Java面试题及解析999道

前言本文收集整理了各大厂常见面试题,主要内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Redis、MySQL、Spring、Spring Boot、Spring Cloud、RabbitMQ、Kafka、Linux等等,希望看到这篇文章的人可以在2020年找到适合自己的工作,进入自己梦寐以求的公司。正文由于题量较多,篇幅的限制,文章中的面试题分享没有全部附上详细的...

2020-01-10 21:33:58 1703 1

原创 今天一次性将jvm讲清楚,看完不再被面试官为难

前言JVM 一直都是面试的必考点,大家都知道,但是要把它搞清楚又好像不是特别容易。JVM 的知识点太散,不系统,所以不便于归纳总结,今天就来帮大家解决这个问题,用一篇文章把 JVM 的结构讲清楚。正文JVM 可分为 5 个部分,分别是:1、类加载器(Class Loader)2、运行时数据区(Runtime Data Area)3、执行引擎(Execution Eng...

2020-01-10 21:32:49 438

原创 干货:2020最新架构师必会的13大技能总结(含大礼包)

01 架构师岗位职责曾有人这样形容架构师的重要性:架构师的工作就像是他打造一棵树的主干和枝干,然后程序员们让这棵树上长出树叶和果实。架构师,是一个既需要掌控整体又要洞悉局部瓶颈,并依据具体的业务场景给出解决方案的团队领导型人物,他需要参与项目开发的全部过程,包括需求分析、架构设计、系统实现、集成、测试和部署各个阶段,负责在整个项目中对技术活动和技术说明进行指导和协调。架构师职责简单来说...

2020-01-09 17:01:03 652

原创 2020 预备金三银四,400道阿里必问Java高频面试考点详细解析

前言临近春招,又到了“金三银四”面试求职高峰期,在金九银十时也参与过不少面试,2020都说工作不好找,也是对开发人员的要求变高。前段时间自己有整理了一些Java后端开发面试常问的高频考点问题做成一份PDF文档(400道高频题),同时也整理一些图文解析及笔记,今天在这免费分享给大家,希望大家在即将3月的面试做好复习,长期的积累和短期的突击让自己能找到一个满意的工作!有需要的朋友可以帮忙转...

2020-01-09 15:24:50 3306

原创 程序大牛告诉你项目中的单点登录是如何实现的

一、单系统登录机制1、http无状态协议web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系。但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器请求,必...

2020-01-09 14:42:25 365

原创 资深架构师一篇文章带你深入浅出JVM!

大家都知道,Java中JVM的重要性,学习了JVM你对Java的运行机制、编译过程和如何对Java程序进行调优相信都会有一个很好的认知。前言JVM是Java Virtual Machine(Java 虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java语言的一个非常重要的特点就是平台无关性。而使用Jav...

2020-01-07 16:19:42 424

原创 Java 架构师必须掌握的 21 个 Java 核心技术!

前言Java语言能够流行起来,并长久不衰,得益于Java语言有很多优秀的关键特点。这些特点包括:简单、面向对象、分布式、结构中立、可移植、解释执行、健壮、安全、高性能、多线程和动态。Java 语言是一门随时代快速发展的计算机语言程序,其深刻展示了程序编写的精髓,加上其简明严谨的结构及简洁的语法编写为其将来的发展及维护提供了保障。推荐 文末福利领取:JAVA技术交流社区 点击加入...

2020-01-05 16:06:02 558

原创 Java 虚拟机:Java 内存区域深入分析

前言Java是目前用户最多、使用范围最广的软件开发技术,Java 的技术体系主要由支撑Java程序运行的虚拟机。为各开发领域提供接口支持的Java API, Java编程语言及许许多多的第三方Java框架( 如Spring和Struts等)构成。在国内,有关Java API、Java 语言及第三方框架的技术资料和书籍非常丰富,相比之下,有关Java虚拟机的资料却显得异常贫乏。推荐 文末福利...

2020-01-04 22:26:39 408

原创 Future、Callable、FutureTask、Runnable它们的关系你弄懂了吗

引言看到标题一下子好几个名称,很可能你都知道、都听过、看过,但是你真是理清楚了它们的关系了吗? 在这个知识泛滥、技术焦虑的时刻,人人嘴里喷着高并发、大数据、分布式,很多估计对这个一头雾水,无论在开发还是面试过程中,一知半解还不如不知。Runnable/Thread通常情况下的耗时操作会交给多线程来处理,Java中开启一个新线程很容易,继承自Thread或实现Runnable接口。下面是...

2020-01-04 17:00:27 1094

空空如也

空空如也

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

TA关注的人

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