【每日一记2】+第4天+桌面云性能漫谈
  

平凡的小网工 1066

{{ttag.title}}
经常在项目中碰到别人在问性能相关的问题。典型的问题如,“我的虚拟机感觉比PC慢”,“这次项目中一台服务器承载多少用户”,“为什么深信服的带宽比C公司的高”等等。本文尝试以通俗易懂的技术来描述性能相关的知识,不打算引入大量的性能数据来证明。

1、  关于云计算和桌面云

云计算和虚拟化之所以存在,是有一个理论基础的,那就是原有的硬件利用率不高,各种资源大部分时候都是较轻的负载,进行云化改造以提升利用率。在桌面云中,就是假定原有的PC资源过剩,如CPU大部分时候都是比较低。如果原有的PC就是一个性能要求非常高的PC,那建议这种设备要谨慎变成桌面云,如图形工作站、游戏、视频监控等场景。也就是说如果客户原有的痛点是PC的某种性能不足,那就不要上桌面云;桌面云解决的是运维效率和信息安全的问题,跟PC相比,用户体验会略有变差,大部分人对这种变化并不敏感,不排除少部分人对这种变化特别敏感,这种情况下要提前跟用户做好一个宣传。

2、  关于用户体验的性能

用户体验最直接的感受是我的虚拟机是否流畅,对应的最核心的技术参数是操作响应时间,如用户动作“移动鼠标”,鼠标在多长时间移动到指定位置,如果这个时间太长,人就会感觉鼠标粘滞,点不准;动作“双击文件”,系统响应是多长时间内打开文件,这里涉及到应用软件启动,打开磁盘上文件,如果文件有一些关联控件,应用软件又会打开一些DLL库,这些都是隐藏在用户的一次点击动作中。很遗憾,操作响应时间是无法准确度量的,这个用户动作有关,也跟用户心理期待有关,如客户的习惯就认为移动鼠标的响应时间就应该远比打开文件的响应时间要短。再举一个用户心理期待的例子,如游戏玩家,一般鼠标就不能满足他们的需求,要高级的鼠标,高级的PC才能满足,反映到测试数据只是毫秒级的差异,但不同的操作者是有感知的。

响应时间是很难测量,也很难有评判标准,只能从其他容易测量的相关资源指标得到系统的性能,这就是CPU、内存、带宽和磁盘IO。

CPU:CPU的参数跟应用软件和使用场景强相关,如同样是呼叫中心,基本相当的硬件配置,有的运营商呼叫中心1台服务器能承担60用户,有的能承担40用户,某电商的呼叫中心甚至只能承担20个用户左右。有几个经验结论:CPU主频越高,用户体验越好;如果应用软件在多核下有优化,给VM分配更多的虚拟机核,用户体验也会提升;VM中看到的CPU占用率低于70%,体验较好;物理机的CPU占用率跟多VM并发率有关,如果一台物理机承载的VM多,多人同时抢占物理CPU,会导致所有人的体验都差,服务器物理CPU低于70%时,所有人的体验感觉都会较好;如果有厂家宣称1台服务器能支持100个用户,从实践来看,那基本就是在吹牛----如果用户不使用,或者不考虑用户体验,1台服务器创建1千VM也是可以的。

内存:一般情形而言,内存越大,体验也越好。如果内存不足,操作系统会自动把部分内存交换到磁盘,这会增加磁盘IO压力和CPU的压力。从一般情况而言,长久不关闭windows,内存碎片会导致性能体验变差,这种情况是windows的弱点,并非桌面云特有。

带宽:一般人认为网络带宽越大,体验越好,实际上真正影响体验是网络响应时间,带宽只是表面测试的结果,核心指标是RTT(round trip time,用ping工具得到的响应时间)。经过的网络设备越多,RTT时间就会变长,特别在无线网络下,这个指标很难控制。一般情况下,带宽越大,RTT越短,体验越好;带宽这个指标更好衡量,所以一般就以带宽作为指标了。

磁盘IO:一般的程序在进行磁盘读写时,程序都是暂停等待,等待的时间就是核心的体验指标----IO响应时延,但这个指标也是很难测量,跟应用相关,也跟硬盘类型相关(显然SSD比磁盘好,SAS盘比SATA盘好)。容易测量的指标是IOPS(每秒IO次数),一般来讲IO次数越多,存储存储符合越重,体验越差。很多程序为了减少磁盘IO,加入cache技术。一般VM的操作系统都有cache;在深信服一体机中,引入了SSD做cache。Cache技术的引入能提升用户体验,但对数据可靠性是一个挑战,应用程序的一次写操作,这个数据可能被VM操作系统缓存在内存中,也可能被缓存在一体机的SSD,或者IPSAN的cache中。操作系统关机时会把cache全部写到磁盘,如果异常终止,可能就会出现数据不一致,需要cache的厂家做大量的技术保证工作。

3、  关于协议的带宽

某公司在很多项目中都宣传带宽最低,这样对客户的网络带宽要求就会降低,好处似乎非常明显(如前文描述,实际项目中的网络时延而不是带宽,才是用户体验的关键)。客户对这种说法都比较理解,通俗易懂,但没有看到事情的另一面。某使用合作版本的项目在用了一段时间桌面云后,有一段时间内部论坛上热炒一个话题,认为桌面云比较模糊,影响视力健康,对IT管理员形成了不小的压力。经过一段时间研究,发现根因是项目中的画质是较差的。画质是可以用技术指标来衡量的,主要是用一个叫PSNR(峰值信噪比)的指标来衡量。这个指标反映在经过压缩、传输、还原后的图像跟原始图像的差异,图像差异越大,PSNR值越小,人眼的感觉就是图像模糊、失真。显然,图像压缩率越大,带宽就会越小,图像失真都就会越大。该项目中后来为了消除大家的怨气,调整了默认的图像压缩率,体验提升了一些,带宽也增加了不少。虽然未彻底解决问题,但也缓解了一下压力。

图像的处理是一个非常复杂的技术,一般厂家都是全屏采用一种压缩率做压缩,这样协议软件最简单,潜在的问题也最多。在深信服自研的HDP协议中,采用了一些特殊的技术来兼顾用户眼睛的体验和带宽的平衡。经过深信服的研究,文字才是传递信息的主要载体,人的眼睛对文字最敏感,会盯着看并仔细理解信息,对图片就是一扫而过,看到一个概貌即可,并不需要仔细分辨。因此深信服在图像处理上,会自动识别文字,对这部分图像采用无损压缩,对屏幕中非文字的图像会采用合适的压缩算法来压缩;由于文字部分采用无损压缩,会导致带宽增加,采用cache技术来降低带宽,这会在VM和客户端上都增加一部分内存的需求。这样最终实现了画质和带宽的平衡。如果把各厂家的桌面云放在一起对比,用户就能直观感觉深信服的桌面云看起来色彩更加艳丽,眼睛感觉好一点。

还有声音,一般厂家为了降低带宽,默认采用较低的采样率和较高的压缩率,语音会出现不清晰,偶尔也会出现刺耳的爆音。深信服HTP协议为了提升用户体验,采用了较高的采样率,自动识别语音模式和音乐模式,自动切换不同的压缩算法和压缩率。这些为了保证用户体验的技术,带宽也是略有增加。

几句话总结深信服的体验效果就是:文字清楚,眼睛舒服一点;声音清晰,耳朵舒服一点;用户自助维护,管理员身体舒服一点。

4、  关于配置器中的性能参数

从上面的描述,大家可以看出桌面云的性能还是一个非常复杂的系统工程问题,是跟客户的应用和使用模型强相关;也许现在性能满足客户需求,未来几年客户的应用升级,又有可能碰到客户抱怨体验变差。实际上IT中所有的软件都面临这个问题,IT中所有的产品都是客户场景的一个环节而已,并不是一个厂家端到端提供了所有的硬件和软件;只要踏入IT行业就面临第三方软硬件,而多厂家集成后的性能和体验不是单一厂家所能控制的,大家只能通过项目去总结经验,不断去适应;也就是说出问题是必然的,只是或多或少的事情,深信服不可能把所有事情包圆了。这点跟电信领域的封闭系统完全不同。事情的好的方面是,这里就存在服务收费的机会,当然,如果把服务机会当成问题和投诉去免费处理,那又另当别论了。

为了简化一线销售的难度,产品提供了配置器作为参考。配置器内置了研发对已交付项目的归纳和总结,适用于大多数场景,但不排除在个别场景不适用,出现问题。最佳的方式是客户真正在系统上进行小规模的办公,以测量最佳的硬件配比。如果一线采用配置器中默认业务模型配置,最后客户性能体验不佳,大家不要责怪研发,这个业务模型是供大家参考的,并非放之四海而皆准的东西。

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

新手011353 发表于 2019-12-16 16:10
  
总结到位。评论的我,再次划重点。
几句话总结深信服的体验效果就是:文字清楚,眼睛舒服一点;声音清晰,耳朵舒服一点;用户自助维护,管理员身体舒服一点。
蟲爺 发表于 2022-1-11 21:28
  
感谢分享
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
干货满满
技术笔记
新版本体验
产品连连看
GIF动图学习
技术咨询
标准化排查
2023技术争霸赛专题
功能体验
秒懂零信任
自助服务平台操作指引
信服课堂视频
通用技术
社区帮助指南
答题自测
安装部署配置
上网策略
运维工具
SANGFOR资讯
技术晨报
项目案例
玩转零信任
深信服技术支持平台
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
测试报告
日志审计
问题分析处理
流量管理
每日一记
云计算知识
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人