知识大全 64位环境中的Java

Posted

篇首语:学习是劳动,是充满思想的劳动。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 64位环境中的Java相关的知识,希望对你有一定的参考价值。

64位环境中的Java  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

面向服务的架构(SOA)是一种软件设计典范 可使无所不在的通信跨越不同企业 连接众多的平台和设备 从而使基础结构更加灵活 SOA的流行是围绕可扩展标记语言(XML)用于定义元数据的业界标准化取得巨大成功的结果 也是致力于使用XML在Web services (WbS)标签下开发新一代中间件的结果   大部分主要软件解决方案提供商都已采用Web services产品 应用程序平台套件产品(如BEA WebLogic Platform )将来自多个开发商的产品跨越不同企业无缝地集成在一起 这种方法有利于 新 旧 软件更好地集成 在这一点上 采用SOA三个领域中具有重要的意义 企业应用程序集成(EAI) 企业对企业(B B)集成和最近的移动软件解决方案 SOA简化了硬件和软件构建模块的组合 以适当的粒度提供适当的业务服务 这允许企业既可以增加Intel Itanium 系列处理器的数量又可以向外扩展到Intel Xeon处理器 采用SOA的解决方案还会淡化服务器与客户端之间的区别 从而使所有可连接设备在企业计算环境中做出有价值的贡献   基于SOA的解决方案的基础不断扩大 为激增的无线设备带来好处 在应用程序间传递XML数据为SOA提供了基础 还允许设备以不可分割的方式交换信息 并将灵活的计算扩展到传统办公环境的边界之外   硬件和软件的发展可以进一步促进向SOA的转换 这既需要原始速度方面的性能 又需要具有处理不断增大的数据量的能力 Intel Itanium系列处理器允许大量内存直接寻址 从而提高了运算能力 同时还能提供企业级的可靠性 可用行和可伸缩性   除硬件性能外 SOA还需要能够充分利用可用性能的执行环境 BEA的WebLogic JRockit是一种企业Java虚拟机(JVM) 它采用完全 位的功能 提供出色的性能 BEA WebLogic JRockit利用极富创造力的代码性能和自适应最优化 连同创新的可伸缩自适应垃圾收集器 确保在Intel Itanium 体系结构上实现最佳性能 企业 Java和 位寻址  特别是服务器应用程序 倾向于利用大量可用内存 企业Java应用程序倾向于访问大量数据 因此大地址空间可以显著降低磁盘访问的次数 此外 大内存还允许对从网络访问接收的数据进行缓存 从而也能潜在地降低网络流量 业内领先的基准(如SPECjbb )在 位体系结构(如Intel Itanium 微处理器)上表现得更好(参见表 ) 硬件厂商 硬件系统 JVM名称 CPU# 结果 Fujitsu Limited(富士通有限公司) PRIMEPOWER HotSpot 位Server VM在Solaris/SPARC 版上 Hewlett Packard(惠普) HP Integrity Superdome Server (Itanium M) HotSpot ( 位)在HP UX i v for Itanium 上 Fujitsu Limited(富士通有限公司) PRIMEPOWER HotSpot 位Server VM在Solaris/SPARC _ 版上 Hewlett Packard(惠普) HP Superdome Server 位Server VM 在HP UX i for PA RISC +上 Sun Microsystems Sun Fire K HotSpot 位Server VM在Solaris/SPARC _ 版上

  表 业界领先的基准(如SPECjbb )在 位体系结构(如Intel Itanium 微处理器)上表现得更好 (数据来源 Standard Performance Evaluation Corporation(标准性能评测公司)[SPEC] specjbb 评测结果 )已发布的specjbb 结果的前 名都是在 位处理器上取得的 这里列出了前五位

  Java应用程序将对象分配到堆 通常具有较高的对象分配速率 堆用完时 就要进行垃圾收集 以便释放堆空间 使应用程序继续运行 许多大型Java应用程序都得益于拥有较大的堆 因为这可以降低垃圾收集的开销 并且还允许JVM更加灵活地查找较小的插入点 以便在其上收集垃圾   此外 还常常可以从运行一个以上应用程序的平台上获得更高的性能 例如 在单个系统中创建三层设置是可能的 方法是在单个平台上运行Web服务器 应用程序服务器和数据库 这种设置在具有较大内存的系统中将执行得更好 通过群集运行应用程序的多个实例也是可行的 大内存可使每个Java应用程序的实例都有较大的堆空间 因此能够从降低垃圾收集开销中得益 进而提高应用程序的整体性能   在典型的设置中 有数台运行应用程序服务器的计算机全部通过网络连接到一台强大的后端数据库 在数据库成为瓶颈时 这种系统的性能通常依赖于数据库系统的饱和程度 要解决此问题 可以在应用程序服务器容器中使用缓存 自然 在具有大内存的 位系统中 这样更加有效 企业 Java与Intel Itanium 微处理器  如果可以使用多个 位处理器 Intel Itanium处理器系列可为企业Java应用程序带来许多引人注目的优点 企业 Java应用程序需要高可靠性和 x 的可用性 Itanium 微处理器上的RAS(可靠性 可用性 可服务性)特性可与多种其他服务器处理器相比 参见表 所示 如表中所述 Intel Itanium 微处理器可以提供比任何其他服务器微处理器更强的错误检测 错误纠正和错误恢复功能

功能 Itanium IBM Power Intel Xeon MP Sun Ultra Sparc Opteron 对数据总线的错误恢复(ECC) X X   X   内部软错误逻辑检查       Lockstep支持 X   X     错误数据内嵌 X X       缓存可靠性(Pellston) X       内存SDEC 双位重试 X X X X X 内存节约 X X X X   分区 X(节点) X(核心) X(节点) X(节点)   电隔离分区 X(节点)   X(节点) X(节点)  

  表 几种服务器微处理器之间的RAS特性比较(按照本文发布时各开发商的可用产品文档)   Itanium 处理器系统总线将几种高级数据完整性功能集成到一起 可以提高错误检测和错误纠正能力   Itanium 处理器系统总线使用错误纠正代码(ECC) 可以纠正单个位得错误 检测双位错误 发送中毒数据 并可检测所有仅限于半字节( 位)的错误 系统设计人员也可以选择将相同的ECC代码用于其他系统级缓存 主内存阵列或I/O子系统缓冲区中 此外 双位奇偶校验码还可以保护地址总线   总之 基于Itanium 的解决方案可以赶上甚至超过先前成本较高的专用体系结构系统所提供的可靠性特性 基于Itanium 的系统可以通过较低的成本提供这种可靠性 同时还能提供多种操作系统选择和广泛的生态体系合作伙伴支持   增加处理器数量带来的性能可伸缩性是令人满意的 因为通常情况下 增加平台上处理器的数量要比更改为新的 更加强大的平台破坏性低 由于性能要求的不断提高 向已部署的系统中增加更多处理器的能力必不可少 无论是在产品中还是对于通过集群组成得其他产品 Intel Itanium 处理器都可以提供非凡的处理器可伸缩性 数据总线与内存之间的高带宽和大型片载缓存可以在单一平台上实现性能的线性提升 对于企业 Java应用程序 具有 个处理器的基于Intel Itanium 的系统 其性能在通常情况下是单处理器系统的 倍 Intel Itanium 微处理器具有 MB的片载缓存 并且很快即可提供更大的缓存 除了可以去除来自前端总线(数据总线与内存之间的总线)的数据流量来提高处理器的扩展以外 片载缓存还可以减少由于处理器等待内存而无法执行指令的时间 企业应用程序确实拥有数量可观的工作数据 而在这些大型片载缓存中可以轻松容纳相当大的工作数据集 从而可以实现更高的性能   程序操作码通常保留在寄存器中 当操作码的数量超过寄存器的数量时 当前不需要的操作码就会通过两种方式被传输到内存中 通过内存存储操作的显式方式或者通过将这些操作码移动到堆栈的隐式方式 在很多平台上 这会加重缓存和内部数据路径的压力 并且还要插入很多附加指令才能移动这些操作码 Intel Itanium处理器系列的架构中已经包含 个通用寄存器和 个浮点寄存器 为包含大量操作码的服务器工作负荷提供了足够的空间   基于Intel Itanium 的系统利用显式并行指令计算(EPIC)功能 超越了常规处理器体系结构的顺序访问特性 应用程序通过编译器与处理器进行显式通信 其操作可以并行完成 这样可使整体使用效率更高 通过使用预测技术 降低分支指令和分支指令预测失败的次数 还可以进一步提高性能 Intel Itanium 处理器系列通过使用数据和控制推测(这些功能可以帮助隐藏与内存相关的处理器停顿)以便编译器提高性能 从而提供额外的稳定性级别 并提高整体可靠性和性能 挑战与问题  Java的流行是因为它与平台无关 在一个平台上开发的应用程序也可以部署到任何其他平台 应用程序以隐式方式依靠JVM来提供针对平台得优化性能 代码生成 线程管理 内存分配和垃圾收集都是Java应用程序性能的重要方面 因此JVM处理这些方面的方式就是一个关键的性能区别   Intel Itanium处理器系列使用EPIC体系结构 这种体系结构的关键特性是多个指令组成几个指令束 可以在同一时钟周期内发出这些指令束以便执行它们 编译器控制用于识别可以组成指令束的指令的质询 以便充分利用这种并行机制 计算机的性能始终取决于所生成代码的质量和基础硬件快速使用代码的能力   伴随预期优势而来是任务的增加 使用Intel Itanium体系结构 编译器的任务可能会比其他平台上更多 因为EPIC概念允许编译器大量占用更多的空间 以便从这种体系结构中获益   Java的首要问题是 代码生成是应用程序执行的一部分 对于Java 虽然编译器生成正确代码非常重要 但迅速生成代码也是重要的 速度较慢的代码生成器会对应用程序性能造成负面影响 此外 启动应用程序的较长延迟也是令人不快的   在编译器中 代码调度程序是关键组件 它需要查看可用指令 然后决定哪些指令能够绑定到一起 显然 代码调度程序能够查看的指令越多 找到适当指令的几率越大 也就越能从代码并行机制中受益 范围 (即代码调度程序能够查看的代码数量)也是影响应用程序性能的一个重要因素   Java代码通常由大量的类和方法组成 大多数方法一般都很小 这样就会极大地限制调度程序可以查看的范围 JVM需要找到能够扩展这一范围的方法 JVM还必须能够高效地处理大量方法 例如 在SPECjAppServer 基准中共有大约 种方法 没有一种方法能够使用超过 %的执行时间

  内存管理器也有必须面对的问题 虽然具有较大的堆对性能有益 但为了使堆管理算法伸缩自如 这也加重了JVM的负担 虽然始终都有堆碎片的问题 但在堆较大时 这一问题就很严重了 编译器和优化器  为了实现快速启动 许多JVM选择在开始时首先解释Java字节码 在随后运行时再对这些字节码进行编译 然而 JRockit首先使用JIT(Just In Time)编译器编译代码 虽然启动时间稍长 但这样可以使应用程序能够从一开始就提高性能 为了实现快速启动 WebLogic JRockit不使用所有可能的编译器优化 虽然使用所有编译器优化可能会在应用程序执行的初始阶段获得较高性能 但在启动时间上的额外延长也被认为是不必要的   从应用程序性能的角度考虑 使用所有优化去编译所有方法也是不必要的 因为编译时间也是应用程序执行时间的一部分 因此 不仅WebLogic JRockit不会在启动时完全优化所有方法 而且在整个应用程序运行期间 也会保留大量的方法不被优化 WebLogic JRockit仅选择改进后能够最大限度地提高应用程序性能的函数 然后仅对这一少部分方法进行优化   WebLogic JRockit有两个各不相同但可以协同操作的代码生成器 JIT编译器和优化编译器 如图 所示 大多数方法只能遍历图表的左半边 某些选择方法将会利用优化编译器

   图 BEA WebLogic JRockit有两条代码编译途径

cha138/Article/program/Java/hx/201311/26578

相关参考

知识大全 64位计算中的Java虚拟机(JVM)性能测试

64位计算中的Java虚拟机(JVM)性能测试  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  随

知识大全 在64位Linux环境下安装Oracle数据库10g

在64位Linux环境下安装Oracle数据库10g  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 64位系统php运行报错

  问题一php运行报错%不是有效的win应用程序  php环境配置完毕后运行成功但运行php就报错错误提示是"%不是有效的win应用程序"英文报%isnotavalidWinapplication第

知识大全 java base64编码和解码案例

  Java代码  importjavaioIOException;  publicclasstest  /**  *编码  *@parambstr  *@returnString  */  publ

知识大全 Java Base64类库学习笔记

JavaBase64类库学习笔记  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  JavaBase

知识大全 在 Java 中如何进行 BASE64 编码和解码

在Java中如何进行BASE64编码和解码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  BAS

知识大全 win7家庭普通版32位和64位区别大么

win7家庭普通版32位和64位区别大么?是不是绝大多数软件,特别是常用软件都支持64位?32位操作系统:无论是32位处理器还是64位处理器都支持。64位操作系统:只有64位处理器才能支持。其实大多数

知识大全 电脑说的32位系统和64位系统是什么意思啊

电脑说的32位系统和64位系统是什么意思啊?!1.64bitCPU拥有更大的定址能力,最大支援到16GB记忆体,而32bit只支援4G记忆体2.64位CPU一次可提取64位资料,比32位提高了一倍,理

知识大全 深度技术 ghost win7 sp1 x64是32位还是64的

深度技术ghostwin7sp1x64是32位还是64的深度技术ghostwin7sp1x64是64位的64位CPU则有了很大改变,64位CPU的最大寻址空间为2的64次方bytes,计算后其可寻址空

知识大全 用u盘怎么安装win7 64位系统

用u盘怎么安装win764位系统U盘重装系统比较麻烦,如果电脑可以开机重装系统可以使用白云一键重装系统软件,这个软件可以把32位系统换成64位系统,也可以把64位系统换成32位系统,还支持XP,win