没有完美架构,AI 时代架构师如何找到成本与性能的平衡点?

2024-06-17 14:56:13 浏览数 (1)

嘉宾 | 喻珍祥、沈斌、康雄

策划 | 薛梁

数字化时代中,系统稳定性和用户体验已经成为企业成功的关键因素。越来越多的企业加快数字化进程,随之产生的大规模复杂业务对系统的高可用架构带来了巨大的挑战,稳定性这个历史话题又重新被业界所重视。然而,企业在追求高可用架构的同时,不得不面临可投入的研发成本与人力成本有限的问题。

在资源有限的情况下,如何把握成本与系统稳定性之间的平衡?构建高可用架构时,最重要的因素是什么?在团队管理和人才培养的作用日益显现的今天,怎样让组织变革更好地支撑技术创新与执行?

在日前的《超级连麦. 数智大脑》x ArchSummit 直播节目上,携程技术总监喻珍祥、众安银行首席架构师兼技术委员会主席沈斌、vivo 互联网架构师康雄 一同探讨了这些问题。

以下内容根据对话整理,篇幅有删减,点击链接可查看直播回放:https://www.infoq.cn/video/alYoHxk0rSMlvoMElpJQ

ArchSummit 深圳大会议程已经上线,感兴趣的同学请锁定大会官网:https://archsummit.infoq.cn/2024/shenzhen/schedule

1 企业数字化转型背景下的业务创新与技术应用

喻珍祥:数字化转型正在影响各行各业,既包括众安银行所在的金融行业,也包括 vivo 所在的电子消费行业。请两位老师分别介绍一下,在此背景下,贵公司在业务层面做了哪些创新?

沈斌: 众安银行是香港首家也是规模最大的虚拟银行,与内地所说的数字银行实质相同。在数字化转型方面,金融行业的企业级应用是所有领域中最为复杂的,对可靠性和性能要求极高,因此金融行业的数字化转型具有极高的难度和挑战性。众安银行作为一家数字银行,从其名称就可以看出它是基于数字化转型构建的,与传统银行相比拥有许多创新之处。众安银行没有线下柜台和网点,所有客户服务都通过 APP 进行。在创新方面,有两点值得一提。

第一,众安银行实现了线上开户流程,客户只需持有有效证件并下载 APP 即可快速完成开户。这一流程中的关键技术包括 eKYC 技术,即电子版的 KYC 技术,它取代了传统的线下人工核验过程,涉及 DA 技术、OCR 技术和人脸验证技术。特别地,众安银行是首家使用香港身份证进行开户的银行,相关技术也是由众安自研的。例如,在 DA 技术方面,假证的通过率低于 0.6%,OCR 技术在各个字段的识别率超过 99%,并且已经申请了 7 项专利,达到了中国领先水平。

第二,众安银行采用了云原生理念,从开业之初就基于云平台运营。与许多传统银行拥有自己的机房不同,众安银行的运营管理从一开始就基于华为的私有云。去年,众安银行成功实现了跨云双活,即同时在华为云私有云和阿里云公有云拥有两个可用区。虽然跨云双活在非金融领域可能不是新鲜事物,但在银行业中,这已经领先于传统银行。众安银行在技术和口碑方面的影响力在业内非常高。

康雄: 数字化转型是利用数字技术改变或创新传统业务模式,以提高企业效率和改善用户体验。以网约车服务为例,它彻底改变了出租车行业,用户不再需要在路边无目的地等待,而是可以通过平台快速预约车辆,这显著提升了打车效率和用户体验,同时也促进了企业的发展。

在营销领域,数字化转型同样发挥着重要作用。我负责营销活动业务的设计和开发工作,我们构建了一个活动平台,为不同用户群体提供服务。这个平台支持公司内部 APP 的运营,也能帮助 vivo 的线下代理门店进行运营,同时还能服务于 B 端广告主、合作伙伴以及外部合作公司。

传统手机门店的销售模式主要依赖于导购和地推活动来吸引顾客。随着数字化的推进,我们加速了线上线下业务的创新和融合。我们利用新媒体平台如抖音、快手、小红书等,以及基于地理位置的活动和广告,吸引顾客到线下门店。此外,我们还通过企业微信等多种方式,为代理商和导购提供与用户沟通的渠道。我们还推出了一个小程序,用于承载线上云店,让用户不仅可以访问线下实体店,还可以在小程序上直接体验线上云店。在线上,我们利用 AR 和 VR 技术,为用户提供真实的产品体验。

除了这些,我们还探索了智慧门店与用户互动方面的业务创新,并在线下体验店的智慧选址方面进行了创新。所有这些业务创新和探索都是营销数字化转型的重要组成部分。

喻珍祥:在两位老师所在企业推动数字化转型的过程中,面临的最大挑战是什么?各自的企业是如何解决这些挑战的?

沈斌: 我认为,数字化转型面临的挑战主要有三个方面:

  1. 领导层的重视与决心:数字化转型是一项长期投入且见效较慢的工程,需要企业高层的坚定决心和持续支持。如果领导层缺乏长远思维,项目容易半途而废。这与多巴胺和内啡肽的区别相似,前者代表短期的快感,而后者则代表长期的收益。
  2. 数字化人才的稀缺性: 尽管数字化转型的概念已经提出多年,但真正能够成功推动数字化转型的人才仍然稀缺。这是因为数字化转型不仅要求人才具备技术能力,还需要对业务有深刻理解,这些综合技能的培养需要时间和系统性培训。此外,许多企业虽然口头上支持数字化转型,但实际投入在技术团队、尤其是自研团队上的资源却非常有限,这使得转型难以落地。
  3. 企业文化的适应性:如果企业文化与数字化转型背道而驰,那么即便有人才也难以留存。因此,推广工程师文化变得尤为重要。工程师文化的核心是相信技术的力量,而不是仅仅依赖管理。在面对问题时,应首先从技术角度出发寻找解决方案,而不是单纯增加人力。但同时,也要避免走向极端、将技术视为目的本身。技术终究是手段,业务发展才是最终目的。

康雄: 在数字化转型的过程中,我们主要面临以下几个挑战:

  1. 思维转变:我们需要改变传统的思维模式。过去,我们可能习惯了依赖于经验、重复相同的做法。但在数字化转型的过程中,我们必须改变理念和思想,以适应新的环境。
  2. 业务复杂性:数字化转型的复杂性远超传统。以营销数字化转型为例,我们发现线下业务的复杂性与线上业务无法相比。某个线上营销活动可能参与度高、效果显著,但同样的策略在线下可能并不适用。线下业务,如门店运营时要考虑是否存在物料准备不足、店员对活动理解不全面等问题,这将大大增加业务的复杂性。在线下数字化转型中,可能需要采用更简单、更易于接受的营销策略,以聚集人气。
  3. 用户体验衡量:如何做好线下用户体验的衡量。例如,当用户通过小程序获取附近门店的导购信息时,我们面临的是如何推荐导购的问题。如果推荐专属导购,但距离用户较远,可能无法满足用户即时需求;如果推荐附近的导购,由于不熟悉用户,可能无法建立信任感。此外,还可能涉及导购离职后的客户维系问题,这些都增加了用户体验衡量的复杂性。

为了应对这些挑战,我们需要全面了解信息,深入线下业务、积累经验,以便做出更好的决策。在这个转型过程中,我们需要倾听用户的声音、具备同理心,不仅要作为设计者,还要作为使用者去体验和感受产品,这样才能更好地提升用户体验。

2 企业技术创新过程中的架构挑战与技术管理

喻珍祥: 两位老师其实都讲到了一个很重要的、但从前技术圈很少关注的问题,就是业务问题,其实数字化转型的最终目标还是要提升业务能力。数字化技术只是工具,最终我们还是要让技术服务于业务。对于两位老师所在企业而言,在构建高可用架构时,最重要的因素是什么?如何在实际项目中实现这些因素?

康雄:在构建高可用架构时,我们主要关注两个关键点:稳定性与可靠性,也即系统的鲁棒性。稳定性和可靠性是架构设计的基石,在大多数场景下,系统正常运行时,优秀的架构设计并不显眼。真正的考验在于面对突发大流量、网络波动或下游依赖服务出现瓶颈等异常情况时,系统是否仍能正常响应、核心功能是否受影响、会不会给用户带来资产损失。

举例来说,我们曾经历过一次核心系统因网络抖动导致大量调用超时的事件。尽管业务群内告警频发,但由于我们在架构设计时已考虑到这种情况,并实施了兜底、补偿和重试逻辑,我们的系统几乎未受太大影响,用户资产也未受损,整体表现保持正常。

在设计高可用架构时,我们遵循几个原则:

  1. 服务隔离:在前期架构设计时,我们会进行服务隔离,实现异地多活和多地多机房部署。
  2. 周到的业务场景设计:在设计业务场景时,考虑兜底措施和系统降级,以及系统的自恢复能力。在重要位置设置告警和配置开关,以便在问题出现时能快速切换。
  3. 定期故障演练:定期进行故障演练和压力测试,以提前发现并解决问题。建立一套完整的主动发现机制,包括业务巡检、日志告警、数据库问题跟踪和解决。
  4. 快速响应:线上出现问题时,能迅速处理并控制影响范围,最小化用户影响。
  5. 事后复盘:修复问题后,对整个过程进行复盘,总结经验,避免类似问题再次发生。

沈斌: 在金融领域,银行对可靠性的要求极高,因此在实操和原则层面,我们首先需要确立正确的态度,整个团队必须将可靠性作为优先考虑的事项。在原则方面,可以总结为以下三点。

  1. 消除单点:这是构建高可靠性系统的首要任务。例如,通过实现两地三中心架构和跨云双活,以及数据的三倍备份,为系统的可靠性打下基础。但仅仅做到这一点还不够,还需要定期进行高可用性演练和混沌工程,确保银行系统不存在单点故障。
  2. 可观测性:在云原生架构下,可观测性至关重要。我们需要能够实时监控整个系统的运行状况,包括系统和业务指标,以及第三方服务的状态。这需要通过可视化工具和定期巡检来实现。
  3. 系统设计层面的可靠性设计:在系统设计时,需要采取特定的措施来增强可靠性。核心措施包括限流和降级。对于非核心业务,在面对线上故障或高并发场景时,首先考虑限流;如果限流仍不足以应对,就考虑降级。例如,银行系统在第三方依赖出现问题时,需要有兜底策略以确保系统稳定运行。以银行活动中的抽奖场景为例,正常情况下抽奖逻辑会运行在智能营销平台上,但如果该平台出现问题,可以降级为本地概率处理,以此来提升系统的可用性。

喻珍祥: 两位老师在讨论服务架构和服务部署时,众安银行采用了跨源部署和依赖管理策略,以增强系统的稳定性和可靠性。同时,故障域隔离是确保系统某一部分出现问题时,不会影响整体服务的关键措施。此外,有效的监控和告警系统对于及时发现并响应问题而言至关重要,而故障预案则包括服务降级和服务限流等策略,以应对高流量或故障情况。在与外部系统交互时,实施超时和重试机制是必要的,因为外部调用往往不如内部调用那样可控。压力测试、故障演练和混沌工程等措施有助于评估系统在极端情况下的表现,并提前发现潜在问题。然而,所有这些措施都涉及到成本问题。在资源有限的情况下,完美的系统架构是不存在的,因为它需要巨大的成本来实现。因此,在追求高可用架构的同时,如何把握成本与系统稳定性之间的平衡呢?

沈斌: 在讨论成本问题时,我们首先需要改变对成本的传统看法。很多人在遇到难以实现或具有挑战性的问题时,会立即认为成本是限制因素。然而,我认为资源不足是常态,条件受限反而可以成为创新的契机。我们不应将成本视为限制,而应通过技术手段解决成本问题。

我们银行在平衡成本和稳定性方面有两个原则:

  • 质量优先: 我们全行将质量视为最重要的事项,建立了质量月会体系。每月全行会进行复盘,讨论生产故障、问题以及紧急发版等问题。虽然不是全行参与,但核心人员都会参与,通过复盘机制提升质量意识,并不断完善系统的稳定性和质量把控措施。除了月度复盘,当故障发生时,我们还会进行更细致的故障复盘,拉通相关团队,包括业务和合规团队等,进行垂直复盘,并闭环所有改进措施。
  • 确保稳定性手段的落地: 我们通过技术手段解决成本问题。例如,在转账和支付场景中,我们最初通过第三方服务对接国际 Visa 组织。由于该第三方系统的质量、稳定性和性能不佳,且成本高昂(每年约 1000 万),我们在外层做了很多补救工作,如重试、回调等,以保证数据一致性。但这些措施仍对客户产生了影响,如转账延迟。为了解决这个问题,我们的研发团队成员挑战自我,阅读了近 1 万页的 Visa 规范文档,并在三个月内完成了整体流程的打通。随后又花了半年时间,实现了无缝的自研替换。这样我们不仅节省了成本,还提高了系统的可靠性,达到了我们行内的标准。这证明了通过技术创新,我们可以在利用有限的资源实现高可用架构,同时控制成本。

康雄: 在讨论成本问题时,首先要认识到人力成本是不可避免的,并且它在营销活动平台的开发中占据着重要的比例。由于营销活动业务需要紧跟时间节点,一旦错过这些节点活动将失去意义,因此我们的版本工期 80% 是倒排的。在成本方面,我们进行了一些实践和探索,以确保在资源有限的情况下,仍能高效地完成项目。为了提升开发效率,我们首先从架构设计入手,确保在紧迫的工期内完成开发任务。同时,我们接受在设计过程中可能需要做出一些妥协,产出不那么“优雅”的设计。为了解决这一矛盾,我们采用了技术债务管理方法论,记录下当前不完美的设计,并将其作为团队的技术债务进行管理。通过一年多的技术债务管理实践,我们不断发现并解决新的技术债务,形成了良性循环,从而在整体架构设计中平衡了成本。

喻珍祥:在 ArchSummit 全球架构师深圳峰会上,康雄老师将带来《vivo 日活千万级活动平台架构的设计实践》的分享,可以先给大家大致透露一下演讲的亮点吗?您认为有哪些内容是大家不可错过的?

康雄: 在用户体验方面,我们非常注重营销活动的用户体验,尤其是首页加载速度。我们采取了多种措施,如接口合并、懒加载、预渲染、缓存预热以及静态资源的 CDN 加速,以提升整体渲染的用户体验。此外,我们还进行了南北机房的就近访问优化,使数据和服务更靠近用户。除了架构上的优化,我们还定期进行用户体验的走查,邀请外部团队共同发现并解决用户体验问题。

我将在下个月的 ArchSummit 全球架构师深圳峰会上分享我们的营销活动平台设计。自 2018 年底开始建设起,这个平台已经支持了多个业务方的不同业务场景。作为平台从 0 到 1 的建设者之一,我对这个系统的成长感到自豪,就像看着自己的孩子一天天长大一样。在这个过程中,我们经历了曲折和辉煌,这是职业生涯中宝贵的体验。

在技术分享中,我将重点讲解我们在营销活动平台业务落地中是如何进行服务拆分、如何抽象出通用的活动模型的,并分享规则引擎在活动业务中的应用和实践。我将详细解答这些问题,期待大家的持续关注。

观众提问:请老师们分享一下异地多活是如何在企业中落地的?

沈斌: 异地多活的概念可以类比于数据库的主从库概念。以我们的跨云双活为例,一边是华为的私有云,另一边是阿里的公有云,它们之间的关系有点类似于主从关系。实现异地多活涉及到几个关键组件:

  1. 流量分发机制:我们有一套完善的流量分发机制,类似于传统的蓝绿发布。流量可以按照不同粒度进行分配,可以全切,也可以根据客群、客户属性或时间进行切流。这种灵活性确保了日常流量通常在两个云平台之间五五分。发版时,我们会先进行蓝绿发布,比如先切换到华为云,然后将阿里云进行升级。新版本升级完成后,我们会将一部分灰度流量切到阿里云进行内部验证。验证通过后,再将全部流量切换到阿里云,随后升级华为云的版本。这是通过流量网关来实现的。
  2. 数据同步:业务数据方面,我们采用了主从库的概念,以阿里云作为主库、华为云作为从库或副本。最终实现两个云平台共用一份数据,并通过跨云同步通道来保证数据的一致性。
  3. 隔离性:我们确保了不同云平台之间的强隔离性。大量中间件都是隔离的,每个云平台都有自己的数据副本。

康雄: 在讨论异地多活的话题时,我们首先要明确异地多活的本质是两套服务都能正常运行,共同为用户提供服务。用户可能基于地理位置等因素被智能分发到不同的服务中心。

我想讨论的关键点是时延问题。在异地多活架构中,业务数据层的同步尤为关键。数据需要在两个异地中心之间进行同步,这不可避免地会引入一定的时延。我们的目标是尽可能降低这个时延,以减少对业务的影响。为了应对时延问题,我们采取的策略是尽量让相同用户或相同地理位置的请求指向同一套服务。这样,数据也会同步到同一套服务所在的数据中心。当一边的服务出现问题时,我们可以将流量切换到另一套服务。此时数据已经在同步,因此能保证数据的及时性和访问的连续性。

在异地多活架构实施过程中,我们特别关注流量管理和数据中心数据同步这两个方面。通过智能的流量分配和有效的数据同步策略,我们可以确保系统的高可用性和数据的一致性,即使在发生故障时也能快速恢复服务,保证用户体验。

喻珍祥: 在讨论异地多活时,流量分发和数据同步是保证数据一致性、进行网络延迟管理的关键方法。此外,异地多活还涉及到故障切换和自动化的问题,这二者也是实现异地多活架构的关键环节。目前市面上有许多工具和解决方案可以帮助实现故障的自动切换,对此感兴趣的听众可以轻松地在网络上找到相关信息。

另外,对于计划出海的企业,在实施异地多活策略时,还需要考虑数据合规性问题。例如,如果企业在美国开展业务,而数据却部署在中国大陆,可能会遇到合规性问题。这就需要企业在设计异地多活架构时,充分考虑不同地区的法律法规,确保数据的合规性,避免让数据问题影响到业务的正常运行。

3 团队管理与人才培养

喻珍祥:事实上,在企业数字化过程中,技术扮演着支撑的角色,而团队管理、人才发展、组织变革变得越来越关键。两位老师在管理技术团队时,有哪些有效的管理和激励措施?如何确保团队的创新力和执行力?

康雄: 技术在很多情况下被视为支撑角色,但在我的理解中,技术人员不应仅限于此。在我的团队里,我们强调主人翁精神,鼓励技术岗位的同事超越技术支撑的角色。作为架构师或技术开发人员,我们应勇于承担责任,深入了解需求背后的逻辑,而不仅仅是表面现象。我们会跟踪需求的价值,并由技术团队来主导技术线路,甚至让技术需求与业务需求进行 PK,以确保技术团队具备主动性和创新性。

在我的部门,我们还特别注重创新激励。我们实行微创新已经有三年多,鼓励团队成员提出创新想法,不论他们来自技术开发还是产品运营等岗位。每个季度末,我们会集体讨论这些想法,评估它们的价值,并为有价值的想法提供额外的激励。这些创新想法会被纳入业务中,真正推进并落地,以检验它们是否能带来价值。

喻珍祥:沈老师将在 ArchSummit 全球架构师深圳峰会上分享《AI 时代,如何成为一名最受企业欢迎的超级员工》,您认为这样的“超级员工”应该具备哪些素质?同样地,是否可以先给大家大致透露一下演讲的亮点?

沈斌: 创新和执行是两个相互依赖的概念,其中执行是实现创新的前提保障。没有执行力,创新就无法落地,成为空中楼阁。因此,我想首先从文化层面谈谈创新和执行。在公司文化中,我们强调的五个核心价值观之一就是“创新守正”。这个理念源自成语“守正居奇”,意味着在保持银行业务基础的同时,进行合规可控的创新。公司举办多种活动以鼓励创新,例如业务创新比赛,我们曾围绕世界杯主题征集活动预案,并进行内部评比,前三名可获得奖励。在技术层面,我们每年举办“Hackathon”黑客马拉松活动,去年以 AI 为主题,举办了一次大规模且有趣的 48 小时不间断的比赛,鼓励大家创新,并提供丰厚的奖励。

在执行力方面,我个人的管理理念是“不说不可能”。面对业务或老板提出的苛刻要求,我们应避免轻易说出“不可能”。这种态度可以倒逼团队产生创新的想法,比如之前提到过的自主研发 Visa 网关。有执行力的团队会寻找双赢的解决方案,而不是简单地推卸责任。

6 月 15 日,我将在 ArchSummit 全球架构师深圳峰会上分享“超级员工”的主题。超级员工是指能够利用 AI 的员工,他们的生产力高于不使用 AI 的员工。从企业层面看,一个全面采用 AI 的企业比传统企业具有更高的生产力和竞争力。2023 年是 AI 元年,现在是学习和应用 AI 的最佳时机。我的分享将围绕超级员工这一主题,从态度、技能、支持三个层面展开,并结合一些学以致用的案例,用这样“3 1”的模型分享我对超级员工以及 AI 时代个人成长的思考。

活动推荐:

距离 ArchSummit 深圳开幕倒计时 1 天,6 月 14 日 -15 日,一起探索大模型时代的软件架构最佳范式。如您感兴趣,可点击「阅读原文」查看更多详情。购买票数越多,享受的优惠也就越丰厚,可以联系票务经理 17310043226 , 锁定最新优惠,期待与你的现场交流~

0 人点赞