返回顶部
首页 > 资讯 > 精选 >Java中server模式与client模式有什么区别
  • 761
分享到

Java中server模式与client模式有什么区别

javaserver模式client模式 2023-05-30 19:05:19 761人浏览 八月长安
摘要

这篇文章给大家介绍Java中server模式与client模式有什么区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JVM client模式和Server模式区别JVM Server模式与client模式启动,最主要

这篇文章给大家介绍Java中server模式与client模式有什么区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

JVM client模式和Server模式区别

JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升。

Java中server模式与client模式有什么区别

JVM工作在Server模式下可以大大提高性能,Server模式下应用的启动速度会比client模式慢大概10%,但运行速度比Client VM要快至少有10倍

Java中server模式与client模式有什么区别

Java中server模式与client模式有什么区别

当不指定运行模式参数时,虚拟机启动检测主机是否为服务器,如果是,则以Server模式启动,否则以client模式启动,J2SE5.0检测的根据是至少2个CPU和最低2GB内存

由于服务器的CPU、内存和硬盘都比客户端机器强大,所以程序部署后,都应该以server模式启动,获取较好的性能;
JVM在client模式默认-Xms是1M,-Xmx是64M;JVM在Server模式默认-Xms是128M,-Xmx是1024M;
server:启动慢,编译更完全,编译器是自适应编译器,效率高,针对服务端应用优化,在服务器环境中最大化程序执行速度而设计。
client:快速启动,内存占用少,编译快,针对桌面应用程序优化,为在客户端环境中减少启动时间而优化;

当JVM用于启动GUI界面的交互应用时适合于使用client模式,当JVM用于运行服务器后台程序时建议用Server模式。

我们可以通过运行:java -version来查看jvm默认工作在什么模式。

关于图一中的GCC

clien模式下,新生代选择的是串行GC,旧生代选择的是串行gc
server模式下,新生代选择的是并行回收gc,旧生代选择的是并行gc
一般来说我们系统应用选择有两种方式:吞吐量优先和暂停时间优先,对于吞吐量优先的采用server默认的并行gc方式,对于暂停时间优先的选用并发gc(CMS)方式。

其它延伸知识点

jdk有两种VM,VM客户端,VM服务器应用程序。这两种解决方案分享java运行环境的热点代码库,但使用不同的编译器,适用于客户机和服务器的独特的性能特点,这些差异包括编写内联政策和堆的默认值。

虽然服务器和客户端虚拟机类似,服务器VM已专门调整最大峰值操作速度。它的目的是执行长时间运行的服务器应用程序,它需要最快的运行速度超过一个快速启动时间或较小的运行时内存占用。

客户VM编译器是经典的虚拟机和实时升级(JIT)通过JDK的先前版本使用的编译器。客户端虚拟机提供了改进的运行应用程序和小程序的性能。java虚拟机的热点客户已减少应用程序的启动时间和内存占用特别调整,使其特别适合客户环境。在一般情况下,客户端系统更好的图形用户界面。

因此,真正的区别也在编译器级别上:

客户端虚拟机编译器不尝试执行由编译器在服务器虚拟机上执行的更复杂的优化,但在交换过程中,它需要较少的时间来分析和编译一段代码。这意味着客户端虚拟机可以更快地启动,并需要一个较小的内存占用。

服务器虚拟机包含一个先进的自适应编译器支持许多c++编译器的优化进行优化,同样的类型,以及一些优化,不能用传统的编译器完成的,比如积极的内联在虚拟方法调用。这是一个竞争和性能优势,静态编译器。自适应优化技术在它的方法是非常灵活的,通常优于甚至先进的静态分析和编译技术。

-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升,原因是:当虚拟机在-Client模式的时候,使用的是一个代号为C1的轻量级编译器,而-Server模式启动的虚拟机采用相对重量级代号为C2的编译器,C2比C1编译器编译的相对彻底,服务起来之后,性能高。

一般只要变更-server KNOWN与-client KNOWN两个配置的先后顺序即可,前提是JAVA_HOME/jre/bin目录下同时存在server和client两个文件夹,分别对应各自的jvm

关于Java中server模式与client模式有什么区别就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: Java中server模式与client模式有什么区别

本文链接: https://lsjlt.com/news/220616.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java中server模式与client模式有什么区别
    这篇文章给大家介绍Java中server模式与client模式有什么区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JVM client模式和Server模式区别JVM Server模式与client模式启动,最主要...
    99+
    2023-05-30
    java server模式 client模式
  • Java中代理模式与装饰模式的区别有哪些
    这期内容当中小编将会给大家带来有关Java中代理模式与装饰模式的区别有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。定义:代理模式,为其他对象提供一种代理以控制对这个对象的访问。装饰模式,动态地给一个...
    99+
    2023-05-31
    java 设计模式 代理模式
  • java中的设计模式与框架有什么区别
    框架和设计模式存在着显著的区别,主要表现在二者提供的内容和致力应用的领域。从应用领域上分,框架给出的是整个应用的体系结构;而设计模式则给出了单一设计问题的解决方案,并且这个方案可在不同的应用程序或者框架中进行应用。(免费学习视频分享:jav...
    99+
    2018-01-07
    java入门 java 设计模式 框架 区别
  • java中的代理模式与装饰者模式的区别
    代理模式与装饰者模式看起来很像,都实现基础对象实现的接口,在其自身对象中都保存着对被代理/被装饰者的对象引用。装饰者模式的定义:动态的将责任附加到被装饰者对象上,用于扩展对象的功能。比继承的灵活性大。典型的如Java IO的设计即是装饰者模...
    99+
    2016-06-09
    java 代理模式 装饰者模式 区别
  • SAP BRF+ Interpretation模式与Generation模式的区别是什么
    这期内容当中小编将会给大家带来有关SAP BRF+ Interpretation模式与Generation模式的区别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在Simulation mode下测...
    99+
    2023-06-04
  • vue-router中hash模式与history模式的区别
    vue-router有两种模式 hash模式 history模式 1.单页面应用 单页应用 1.只有一个html文件,整个网站的所有内容都在这一个ht...
    99+
    2024-04-02
  • AJAX使用get与post模式有什么区别
    这篇文章主要介绍了AJAX使用get与post模式有什么区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体分析如下:如果是get 模式的...
    99+
    2024-04-02
  • win10平板模式与电脑模式区别有哪些
    这篇文章主要介绍了win10平板模式与电脑模式区别有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇win10平板模式与电脑模式区别有哪些文章都会有所收获,下面我们一起来看看吧。win10平板模式与电脑模式区...
    99+
    2023-07-01
  • java中抽象工厂模式与工厂方法模式的区别
    一、简单工厂模式特点:它是一个具体的类,非接口 抽象类。有一个重要的create()方法,利用if或者 switch创建产品并返回。create()方法通常是静态的,所以也称之为静态工厂。缺点:扩展性差(我想增加一种面条,除了新增一个面条产...
    99+
    2015-05-09
    java入门 java 抽象工厂模式 工厂方法模式 区别
  • Redis的哨兵模式和集群模式有什么区别
    Redis的哨兵模式和集群模式是两种不同的高可用架构设计: 哨兵模式(Sentinel): 哨兵模式是通过多个哨兵节点来监控主...
    99+
    2024-03-14
    Redis
  • java中代理和装饰者模式有什么区别
    java中代理和装饰者模式有什么区别?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。java基本数据类型有哪些Java的基本数据类型分为:1、整数类型,用来表示整数的数据类型。2...
    99+
    2023-06-14
  • Win10 + Emacs 25.*怎么配置Server Client模式
    本篇文章给大家分享的是有关Win10 + Emacs 25.*怎么配置Server Client模式,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。配置emacs以server方...
    99+
    2023-06-04
  • Debug模式和Release模式的区别有哪些
    本篇内容主要讲解“Debug模式和Release模式的区别有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Debug模式和Release模式的区别有哪些”吧...
    99+
    2024-04-02
  • Java设计模式中单件模式有什么用
    小编给大家分享一下Java设计模式中单件模式有什么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!定义单件模式确保一个类只有一个实例,并提供一个全局访问点Java单件模式经典单件模式的实现public class...
    99+
    2023-06-25
  • 降噪模式和通透模式的区别是什么
    降噪模式和通透模式的区别是:1、降噪模式旨在减少周围环境的噪音干扰,而通透模式允许外界声音传入耳机;2、降噪模式适用于需要在嘈杂环境中获得更好听音质或专注的场景,而通透模式对周围环境感知、与他人交流或需要注意安全的场景非常有用。本教程操作系...
    99+
    2023-08-15
  • php中cli和cgi运行模式有什么区别
    区别:CLI指的是命令行的运行模式,即在控制台或者是shell中键入命令执行PHP脚本代码;而CGI是公共网关接口的运行模式,就是Apache在遇到PHP脚本的时候会将PHP程序提交给CGI应用程序(php-cgi.exe)解释,解释之后的...
    99+
    2023-05-14
    php
  • vue路由有哪几种模式有什么区别
    本教程操作环境:windows7系统、vue3版,DELL G3电脑。vue路由实际上存在三种模式:Hash: 使用URL的hash值来作为路由。支持所有浏览器。History: 以来HTML5 History API 和服务...
    99+
    2023-05-14
    Vue
  • C++中策略模式和工厂模式的区别
    工厂模式和策略模式看着很像,经常让人混淆不清; 它们的区别在哪里,需要细细体味; 相似点 在模式结构上,两者很相似; 差异 用途不一样 工厂是创建型模式,它的作用...
    99+
    2024-04-02
  • MySQL主主模式和主从模式的区别有哪些
    这篇文章主要介绍MySQL主主模式和主从模式的区别有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! MySQL复制的原理:将数据分布到多个系统上去,...
    99+
    2024-04-02
  • FTP协议的主动模式与被动模式的区别详解
    目录什么是FTP协议?FTP协议的两个TCP连接FTP主动模式FTP被动模式FTP服务器安全性设置防火墙设置总结最近准备做一个《FtpCopy系列教程》,主要讲解Ftp协议主动模式和...
    99+
    2023-05-18
    FTP主动模式 ftp被动模式
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作