面试框架一些小结

news/2024/7/7 19:00:37 标签: 面试, 职场和发展

springcloud的⼯作原理在这里插入图片描述
springcloud由以下⼏个核⼼组件构成:
Eureka:各个服务启动时,Eureka Client都会将服务注册到Eureka
Server,并且Eureka Client还可以反过来从Eureka Server拉取注册表,
从⽽知道其他服务在哪⾥
Ribbon:服务器发起请求的时候,基于Ribbon做负载均衡,从⼀个服
务的多台机器中选择⼀台
Feign:基于Feign的动态代理机制,根据注解和选择的机器,拼接请求
URL地址,发起请求
Hystrix:发起请求是通过Hystrix的线程池来⾛的,不同的服务⾛不同
的线程池,实现了不同服务调⽤的隔离,避免了服务雪崩的问题
Zuul:如果前端、移动端要调⽤后端系统,统⼀从Zuul⽹关进⼊,由
Zuul⽹关转发请求给对应的服务

jvm
在这里插入图片描述
第1步:虚拟机遇到一个new指令,首先将去检查这个指令的参数是否能在常量池中定位到这个类的符号引用,并且检查这个符号引用的类是否已经被加载&解析&初始化。
第2步:如果类已经被加载那么进行第3步;如果没有进行加载,那么就就需要先进行类的加载。
第3步:类加载检查通过之后,接下来进行新生对象的内存分配。
第4步:对象生成需要的内存大小在类加载完成后便可完全确定,为对象分配空间等同于把一块确定大小的内存从 Java 堆中划分出来
第5步:内存大小的划分分为两种情况:第一种情况:JM 的内存是规整的,所有的使用的内存都放到一边,空闲的内存在另外一边,中间放一个指针作为分界点的指示器。那么这时候分配内存就比较简单,只要讲指针向空闲空间那边挪动一段与对象大小相同的距离。这种就是“指针碰撞”。
第二种情况:JVM 的内存不是规整的也就是说已使用的内存与未使用的内存相互交错。 这时候就没办法利用指正碰撞了。这时候我们就需要维护一张表,用于记录那些内存可用,在分配的时候从列表中找到一块足够大的空间划分给对象实例,并更新到记录表上。
第6步:空间申请完成之后,JM 需要将内存的空间都初始化为0值。如果使用 TLAB,就可以在 TLAB 分配的时候就可以进行该工作。
第7步: JVM 对对象进行必要的设置。例如,这个对象是哪个类的实例、对象的哈希码、GC 年代等信息。
第8步:完成了上面的步骤之后 从 JM 来看一个对象基本上完成了,但从 Java 程序代码绝对来看,对象创建才刚刚开始,需要执行方法,按照程序中设定的初始化操作初始化,这时候一个真正的程序对象生成了。


http://www.niftyadmin.cn/n/5536825.html

相关文章

【鸿蒙学习笔记】鸿蒙ArkTS学习笔记

应用开发导读:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/application-dev-guide-V5 目录标题 【鸿蒙培训】第1天【鸿蒙培训】第2天【鸿蒙培训】第3天【鸿蒙培训】第4天【鸿蒙培训】第&#…

Kafka-服务端-网络层-源码流程

整体架构如下所示: responseQueue不在RequestChannel中,在Processor中,每个Processor内部有一个responseQueue 客户端发送的请求被Acceptor转发给Processor处理处理器将请求放到RequestChannel的requestQueue中KafkaRequestHandler取出reque…

MMSC物料库位扩充

MMSC物料库位扩充 输入事务码MMSC: 回车后添加新的库位即可: 代码实现,使用BDC *&------------------------------------------------* *&BDC的定义 *&------------------------------------------------* DATA gt_bdcdata T…

关于echarts中使用到的图例、颜色设置、设置tooltip换行显示等问题

最近使用echarts中用到图例随机生成,颜色多不好设置的问题,图例多展示出现不全,不能根据颜色判断图例和数据的问题等总结一下 原始代码: that_ge.charts echarts.init(document.getElementById(paramenterEcharts));that_ge.al…

ONLYOFFICE8.1版本桌面编辑器——功能测评

一、编辑DOCX 相信大家都有写word文档的经历,不知道大家是不是跟我一样,感觉做一个word不难,但想做好一个word却很麻烦,功能太多,看的人眼花缭乱,有时候一个功能要找很久,甚至有的功能用一辈子都…

大数据面试题之Spark(5)

Spark SQL与DataFrame的使用? Sparksql自定义函数?怎么创建DataFrame? HashPartitioner和RangePartitioner的实现 Spark的水塘抽样 DAGScheduler、TaskScheduler、SchedulerBackend实现原理 介绍下Sparkclient提交application后,接下来的流程? Spark的几种…

【matlab】回归预测——智能优化算法支持向量机

目录 引言 原理 应用 优势 总结 SVR安装 灰狼优化算法 代码实现 引言 原理 核心思想: SVR的目标是找到一个函数,该函数能够最小化预测误差,并在拟合过程中保持一定的间隔,使得大部分数据点都落在这个间隔之内。与SVM类似…

34.哀家要长脑子了!--归并排序

1.787. 归并排序 - AcWing题库 ① 确定分界点 mid l r >> 1 ② 递归排序 左边右边 ③ 合并有序数组 模板: void merge_sort(int q[], int l, int r){if(l > r) return 0;int mid l r >> 1;merge_sort(q, l ,mid), merge_sort(q, mid1, r…