《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一1.3 构建应用程序

简介: 本节书摘来华章计算机《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一书中的第1章 ,第1.3节,[美] 克里斯托弗·库塞克(Christopher Kusek) 著 吕南德特·施皮斯(Rynardt Spies)姚海鹏 刘韵洁 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

本节书摘来华章计算机《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一书中的第1章 ,第1.3节,[美] 克里斯托弗·库塞克(Christopher Kusek) 著 吕南德特·施皮斯(Rynardt Spies)姚海鹏 刘韵洁 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.3 构建应用程序

你已经搭建了一个VMware vSphere集群并且建立了ESXi服务器的能力基准。现在你可以准备开始复制它了,对吗?完全错误。
现在重要的是,要确保你的架构以及模板是为应用程序设计的,而非解决方案。不能仅仅基于架构进行设计,因为应用程序所有者会要求得到该解决方案所支持的最大能力。换句话说,即使只需要一个不超过4GB RAM的32位服务器,但如果应用程序所有者知道能获得一个1TB RAM和64TB磁盘空间的32位vCPU服务器,他们也会想要得到。这样一来需求就会永无止境,系统将因效率低下而崩溃。
这时最重要的就是确定应用程序以及衡量它们的工作负载。你是正在部署一个Web服务器?一个高性能的数据库服务器?一个通用服务器?还是开发一个AppDev vApp?性能特点能否预测?以及模板标准化的期望值?这些都很重要。
刚开始,人们总会建立一个提供给终端用户服务的目录,类似之前提到的。然后根据用户对CPU、内存、网络和存储的需求,建立分目录,满足用户最可能的需求特点。必要时,一些工作量还会分裂成小、中、大或定制的子集,例如:
小:1个 vCPU,2GB的RAM
中:2个vCPU,4GB的RAM
大:4个vCPU,8GB的RAM
定制:最大为64 个vCPU,1TB的RAM
衡量应用程序和工作负载的规则不是一成不变的,但是应该经过你的设计考虑而决定。使用VMware Capacity Planner、Microsoft Assessment and Planning Toolkit、 VMware vCenter Operations Manager等工具,以及一些本机工具如vCenter Performance tab and Perfmon,可以使你不再迷茫和困难。
记住,如果你低估了虚拟机和应用程序的大小—不管是因为不确定工作负载,还是因为系统用户数量增多而需要更多的资源—只要关闭系统并增加额外资源就可以更正。我们拜访过一个向我们诉苦的App所有者。我说:“我注意到你的应用程序表现不佳,可以通过使用额外的内存或者vCPU来解决。我可以关闭你的服务器给你提供更多的资源吗?”如果无法立刻更改,他们通常会抓住机会建立一个硬性的停机窗口,从而进行改变。
通过这样访问应用程序所有者并改造分配的vCPU,他们就再也不用关闭系统,也不会再来电求助。所以,你可能想要为所有虚拟机都热添加资源。但是,不是所有操作系统都支持CPU和内存的热备份,还需要考虑许多注意事项,在第4章和第5章会相应讲到。

相关文章
|
1月前
|
机器学习/深度学习 自然语言处理 数据处理
大模型开发:描述长短期记忆网络(LSTM)和它们在序列数据上的应用。
LSTM,一种RNN变体,设计用于解决RNN处理长期依赖的难题。其核心在于门控机制(输入、遗忘、输出门)和长期记忆单元(细胞状态),能有效捕捉序列数据的长期依赖,广泛应用于语言模型、机器翻译等领域。然而,LSTM也存在计算复杂度高、解释性差和数据依赖性强等问题,需要通过优化和增强策略来改进。
|
1月前
|
编解码 算法 Java
构建高效的Android应用:内存优化策略详解
随着智能手机在日常生活和工作中的普及,用户对移动应用的性能要求越来越高。特别是对于Android开发者来说,理解并实践内存优化是提升应用程序性能的关键步骤。本文将深入探讨针对Android平台的内存管理机制,并提供一系列实用的内存优化技巧,以帮助开发者减少内存消耗,避免常见的内存泄漏问题,并确保应用的流畅运行。
|
5天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
2天前
|
移动开发 Java Android开发
构建高效Android应用:采用Kotlin协程优化网络请求
【4月更文挑战第24天】 在移动开发领域,尤其是对于Android平台而言,网络请求是一个不可或缺的功能。然而,随着用户对应用响应速度和稳定性要求的不断提高,传统的异步处理方式如回调地狱和RxJava已逐渐显示出局限性。本文将探讨如何利用Kotlin协程来简化异步代码,提升网络请求的效率和可读性。我们将深入分析协程的原理,并通过一个实际案例展示如何在Android应用中集成和优化网络请求。
|
7天前
|
存储 NoSQL Oracle
Oracle 12c的内存列存储:数据的“闪电侠”
【4月更文挑战第19天】Oracle 12c的内存列存储以超高速度革新数据处理,结合列存储与内存技术,实现快速查询与压缩。它支持向量化查询和并行处理,提升效率,但需合理配置以平衡系统资源。作为数据管理员,应善用此功能,适应业务需求和技术发展。
|
8天前
|
移动开发 Android开发 开发者
构建高效Android应用:采用Kotlin进行内存优化的策略
【4月更文挑战第18天】 在移动开发领域,性能优化一直是开发者关注的焦点。特别是对于Android应用而言,由于设备和版本的多样性,确保应用流畅运行且占用资源少是一大挑战。本文将探讨使用Kotlin语言开发Android应用时,如何通过内存优化来提升应用性能。我们将从减少不必要的对象创建、合理使用数据结构、避免内存泄漏等方面入手,提供实用的代码示例和最佳实践,帮助开发者构建更加高效的Android应用。
14 0
|
8天前
|
存储 监控 安全
网络安全与信息安全:防范漏洞、应用加密、提升意识
【4月更文挑战第18天】 在数字化时代,网络安全与信息安全保障已成为维护国家安全、企业利益和个人隐私的关键。本文深入探讨网络安全的多面性,包括识别和防御网络漏洞、应用加密技术保护数据以及提升全民网络安全意识的重要性。通过对这些关键领域的分析,文章旨在为读者提供实用的策略和建议,以增强其网络环境的安全防护能力。
10 0
|
9天前
|
数据采集 机器学习/深度学习 数据挖掘
网络数据处理中的NumPy应用实战
【4月更文挑战第17天】本文介绍了NumPy在网络数据处理中的应用,包括数据预处理、流量分析和模式识别。通过使用NumPy进行数据清洗、格式化和聚合,以及处理时间序列数据和计算统计指标,可以有效进行流量分析和异常检测。此外,NumPy还支持相关性分析、周期性检测和聚类分析,助力模式识别。作为强大的科学计算库,NumPy在处理日益增长的网络数据中发挥着不可或缺的作用。
|
10天前
|
缓存 移动开发 Java
构建高效的Android应用:内存优化策略
【4月更文挑战第16天】 在移动开发领域,尤其是针对资源有限的Android设备,内存优化是提升应用性能和用户体验的关键因素。本文将深入探讨Android应用的内存管理机制,分析常见的内存泄漏问题,并提出一系列实用的内存优化技巧。通过这些策略的实施,开发者可以显著减少应用的内存占用,避免不必要的后台服务,以及提高垃圾回收效率,从而延长设备的电池寿命并确保应用的流畅运行。
|
17天前
|
传感器 监控 安全