- 博客(9)
- 收藏
- 关注
原创 Java对象的创建、存储、访问
对象的创建流程Java是一个面向对象的语言,在程序运行中时时刻刻都有对象被创建,创建对象通常只是一个new关键字,当虚拟机遇到new 的指令的时候,首先会去检查这个这个指令的参数能否在常量池中对应到一个类的符号引用,并且检查这个符号引用代表的类是否被加载、解析和初始化过。如果没有的话会去先执行相应的类加载过程。当类加载检查通过后,虚拟机将为新生成的对象在Java堆中划分一块内存空间,所需的大小在类加载完成之后就可以确定下来。内存分配完成后,虚拟机需要将分配到的内存空间都初始化为零值(不包括对象头),如
2020-07-11 16:02:39
471
原创 JVM内存区域总结
以下内容参考《深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)》JVM:全称JAVA Virtual Machine。它是一种基于计算机设备的规范,是一种虚拟机。通过JVM,JAVA实现了一次编译到处运行,只需要在需要运行的平台部署JVM即可。JRE:全称Java Runtime Environment,JVM的运行平台,是Java的运行时环境,JRE = 虚拟机平台+虚拟机本体(JVM)JDK:全称Java Develop Kit, Java开发工具包,本身也是一种Java程序,所以.
2020-07-03 15:24:08
134
原创 六、微服务网关-Zuul
Zuul是什么?Zuul是Netflix开源的微服务网关,可以和Eureka、Ribbon、Hystrix等组件配合使用,而Spring Cloud对Zuul进行了整合和增强,Zuul默认使用的HTTP客户端是Apache HTTPClient,Zuul的主要功能是路由转发和过滤器。路由功能是微服务的一部分,Zuul默认和Ribbon结合实现了负载均衡的功能。Zuul使用很多不同类型的过滤器,...
2020-01-16 17:29:32
209
原创 五、声明式服务调用-Feign
上一章:四、熔断器-Hystrix实际上在第一章的时候关于服务之间的调用就已经用到了feign了,这篇算是比较系统的介绍一下feign。Feign是什么?Feigin是Netflix开发的声明式、模块化的HTTP客户端,其灵感来源于Retrofit、JAXRS-2.0以及WebSocket。Fegin帮助我们更方便更优雅的调用HTTP API。在Spring Cloud中使用Fegin也非...
2020-01-07 16:27:33
210
2
原创 四、熔断器-Hystrix
上一章:三、负载均衡-Ribbon为什么要使用熔断器?当我们使用负载均衡的时候,我们也知道Ribbon默认是通过轮询的方式对服务进行调用,现在有两个服务提供者,而当我们其中一个服务提供者挂掉了就会出现这样的情况。我们通常不会希望将服务端错误展示给用户看到。那么对于这个问题,Spring Cloud中最重要的解决方案就是熔断器Hystrix在服务消费者中配置熔断器pom.xml中的依赖...
2020-01-07 10:41:49
164
原创 三、负载均衡-Ribbon
上一章:二、Eureka集群高可用配置什么是Ribbon?Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现。通过Spring Cloud的封装,可以让我们很轻松的将面向服务的REST模版请求自动转换成客户端负载均衡的服务调用。Spring Cloud Ribbon虽然是一个工具类框架,但是它不需要想注册中心、配置中心、...
2020-01-07 09:26:31
296
2
原创 二、Eureka集群高可用配置
上一章:一、搭建Spring Cloud项目在eureak服务加入两个配置文件,例如application-peer1.yml、application-peer2.ymlapplication.yml的内容:spring: profiles: active: peer1 application: name: server-eurekaapplication-pee...
2020-01-06 17:26:27
292
原创 一、搭建Spring Cloud项目
创建Spring Cloud项目**创建父项目(Maven项目即可),在pom.xml中引入spring cloud依赖<**parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifact...
2020-01-03 17:51:35
294
原创 tk.mybatis配置以及使用
什么是通用Mapper?日常开发中,我们会发现好多操作都是一样的,比如通过id进行查询、删除、修改等。虽然这些功能实现差不多,但是xml文件和mapper接口也是需要写一堆一样的代码,有时候修改查询条件的时候也会去修改这些地方,那么通用Mapper就是用来解决这个问题的。通用Mapper可以极大的方便开发人员,可以按照自己的需要选择通用方法,极大的减少了我们的开发成本。极其方便的使用Myba...
2020-01-03 16:46:58
2507
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人