挑战和注意事项

更新时间:

介绍在高性能架构设计过程中会遇到的一些挑战以及注意事项。

业务优先

架构的性能规划始终是为业务服务的,需要依赖真实的业务需求展开,严谨的业务评估和预测是十分必要的,不能一味追求高性能。

性能的权衡

设计业务系统时,平衡性能优化与其他制约因素是一个重点,主要因素如成本、稳定性、安全、可运维性等。

  • 成本:性能与成本的关系通常不是线性的,各瓶颈点的性能突破往往意味着阶梯式的成本增加,而不同产品或产品类型之间成本可能差别巨大,需要从规格、产品组合、业务特征等方面综合权衡选择合适的方案,避免单方面的追求某一方面导致整体设计失衡,产生不必要的成本支出。

  • 稳定性:高可用和容灾方面的考量会引入架构和资源的冗余,并在诸如备份等动作的执行上拉低资源在工作负载上的性能投入,但该部分的投入是不可或缺的,需要结合各业务系统及其数据的重要性进行不同程度高可用和容灾架构的适配。

  • 安全性:性能较差或者性能极佳的时候,均可能对架构配套的安全服务提出一定的考验,如较高的性能要求意味着显著增加的安全成本,较差的性能导致的业务波动会引入更多的告警并增加SIEM的运维投入。

  • 可运维性:一方面架构上的性能优化通常会引入一些产品服务来解耦特定的资源依赖,而这也会带来架构复杂性的增加,另一方面高性能对业务系统配套的测试复杂度、监控精度、SIEM链路处理能力以及各运维操作都提出了更高的要求。

  • 伸缩能力:弹性缩扩容是我们谈性能架构时的重点,而支持扩容的规模和速度是保障业务连续稳定的关键,不同的要求可能意味着不同的产品组合与系统设计,并反应到其他多方面的差异,这也需要结合业务特征综合考量。

持续的监控与性能优化

通常来说,高性能系统建设与性能优化都不是一蹴而就的事情,而是随着业务运行不断迭代和优化提升,这也是业务能持续健康运行的重要保障,需要纳入日常IT治理的范畴。

测试左移

云服务部署的敏捷性,大大降低了架构建设成本与试错成本,除了系统测试左移,压测测试也需要左移,在更早的阶段、更小的业务场景进行压测,以便及时对产品规格、组合进行评估和调整,最大限度的降低整体部署完成后压测调优的复杂度。