内存溢出和内存泄露(微服务和分布式区别)

Posted 月疯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内存溢出和内存泄露(微服务和分布式区别)相关的知识,希望对你有一定的参考价值。

内存溢出好理解,就是JVM内存有限。如果对象太多,JVM内存放不下了,就会内存溢出。

内存泄露理解:java里面的引用关系(强引用、弱引用、软引用和虚引用)

GC回收弱引用、软引用和虚引用。

如果强引用:是无用的引用

Object obj = new Object();

list.add( obj );
obj = null ;

obj就会造成内存泄漏。

在实际开发中最常见的内存泄漏就是打开资源后没有调用close()方法。例如socket、io流等,都需要再最后close()一下防止内存泄漏。

微服务是很小,很颗粒化的服务,微服务可以部署到一台服务器或者多台服务器上。服务之间通过rpc或者http调用。

微服务的拆分是垂直拆分,新闻、商城、社交【新闻又分为:头条、推荐、体育、文化】

分布式是把不同功能部署到不同的服务器上,服务器之间也是通过rpc调用。

分布式拆分可以水平拆分:service------------dao------------

也可以垂直拆分:新闻、商城、社交等等按照功能拆分开

分布式一定是微服务,微服务不一定是分布式。

以上是关于内存溢出和内存泄露(微服务和分布式区别)的主要内容,如果未能解决你的问题,请参考以下文章

内存溢出(Memory Overflow)和内存泄露(Memory Leak)的区别

内存溢出和内存泄露的区别,分别什么情况下出现?

内存泄漏和内存溢出的区别

内存溢出和内存泄漏的区别

内存溢出和内存泄漏的区别

内存溢出和内存泄漏的区别