优势
概述
薪资管理工作可能非常耗时,在具有复杂薪酬体系的国家/地区中尤其如此。Employment Hero 提供了一款精密、全面的薪资解决方案,可帮助各个企业计算付款,并确保遵守政府法规。
随着客户群的不断壮大,该公司希望在 Amazon Web Services(AWS)上对自己的薪资应用程序进行现代化改造,以便提高可扩展性,同时加快内部开发速度。因此,Employment Hero 放弃了以前使用在 Microsoft Windows Server 和 Microsoft SQL Server 数据库上运行的 Microsoft .NET Framework 代码库的整体式架构,并迁移到采用跨平台 .NET 的现代化、容器化架构。
通过对自己的 AWS 架构进行现代化改造并迁移到多种开源、云优化型技术,Employment Hero 节省了持续许可成本,并将这笔资金重新投入到该公司的优先事项和发展中。与此同时,Employment Hero 还缩短了构建时间,更重要的是提高了客户的应用程序质量和可靠性。
关于 Employment Hero
Employment Hero 于 2014 年在澳大利亚成立,致力于提供人力资源、薪资和招聘解决方案,这些解决方案利用先进的技术来帮助中小型企业简化劳动力管理。
机会 | Employment Hero 使用跨平台 .NET 进行现代化改造
Employment Hero 可提供人力资源、薪资和招聘解决方案,服务于澳大利亚、新西兰和英国等多个国家/地区的 30 多万家企业。
澳大利亚拥有世界上最复杂的薪资体系之一,他们的奖励制度除了基于标准工资之外,还取决于政府确定的条件。因此,他们迫切需要一个能够简化这一过程的应用程序。然而,Employment Hero 的薪资应用程序是基于整体式应用程序群和架构而构建的,它们的复杂性导致该公司难以管理频繁的变更和更新。“无论是更改代码的哪个部分,我们都要部署一个庞大的整体式代码库,”Employment Hero 工程总经理 Alan Hynes 表示。
在这样的应用程序群和架构上,该公司只有一个后台队列处理器负责处理全部工作负载,因此当执行资源密集型任务或者该系统中的任意位置出现问题时,都可能在其他地方产生不可接受的延迟。“我们是澳大利亚最大的薪资提供商之一,”Hynes 说道。“一旦我们遇到异常状况,澳大利亚的很多公民都会受到影响。因此,我们需要一个极具弹性的系统。”
为了提高弹性并适应增长,Employment Hero 需要对自己的应用程序群和架构进行现代化改造。因此,该公司决定从 .NET Framework 编程环境迁移到跨平台 .NET。这样一来,该公司就可以提高可扩展性、优化成本,并让自己的应用程序为长期成功做好准备。
解决方案 | 通过容器化来提高开发速度
Employment Hero 与 AWS 团队全面讨论了业务优先事项和有效的方法。在这些讨论中,该公司了解了 AWS Application Modernization Lab(AWS AML),这是一项为期数周的三阶段 AWS 计划,致力于提升技能和加速客户的云现代化改造策略。因此,Employment Hero 决定加入这项只适用于顶级 AWS 客户的计划,并制定了一项计划,以便对薪资应用程序进行现代化改造。例如,通过使用代码扫描工具来扫描数百万行代码,各个团队发现,他们可以通过几种方法将关键工作负载分成六个模块。
“AWS AML 为我们提供了一些工具,以往我们可能由于缺乏必要的资源或专业知识而无法运行这些工具,”Hynes 表示。“AWS 团队努力了解我们的业务,并发现了一些机会让我们使用 AWS 的多种技能和知识。”
这些团队评估了代码的各个方面,以便确定最大、最关键的组件。因此,他们决定将现代化改造工作重点放在 Pay Run 模块上,这个模块中包含该应用程序的计算引擎。在接下来的几个月里,Employment Hero 团队成功将此模块改造成一个基于容器的架构。该公司已经在其他方面使用了 AWS 上的容器,还通过将工作负载容器化而提高了可扩展性和弹性。“我们一直渴望将薪资发放到容器化的环境中,但是直到加入 AWS AML 计划,我们才拥有了能够实现这一目标的策略,”Hynes 说道。
使用跨平台 .NET,Employment Hero 可以为自己的容器选择一款解决方案,以便优化资源使用情况。因此,该团队开始将工作负载迁移到 Linux 容器上的跨平台 .NET,这些容器运行在 Amazon Elastic Container Service(Amazon ECS)(一项完全托管式容器编排服务)上。“在容器化方面,我们薪资团队的经验不是很足,因此我们希望使用更多的托管式服务,”Hynes 表示。为了支持容器化的工作负载,Employment Hero 还实施了 AWS Fargate,这是一款无服务器、按即用即付模式付费的计算引擎。
在启动 AWS AML 计划之后不久,各个团队将经过现代化改造的 Pay Run 模块部署到了生产环境中。此次迁移降低了基础设施、运营和许可的成本,帮助该公司优化了 41% 的成本。“该计划只专注于 Pay Run,但是他们绘制的蓝图适用于整个应用程序堆栈,”Hynes 说道。
通过在跨平台 .NET 环境中使用 AWS 服务,Employment Hero 将发布速度提高到五倍,预计每天部署的代码数量将会翻一番。该公司将部署速度加快了 83%,并将构建时间缩短了 85%,因此提高了敏捷性。每一名开发人员每周都可以节省大约 4 个小时,这正是他们以前在等待代码部署和编译完成时浪费的时间。生产力的这一提升相当于每周节省了 340 个小时。
通过在容器化的环境中进行构建,该公司增强了薪资应用程序的弹性。不同的任务可以同时运行,而不会影响性能。不仅如此,通过为每个组件进行独立扩展和改进故障隔离,Employment Hero 可以提高应用程序防范中断的能力。
成果 | 持续进行现代化改造并支持创新
通过迁移到跨平台 .NET 并在 AWS 上进行现代化改造,Employment Hero 奠定了一个坚实的基础,可支持进一步进行创新。此外,该公司还计划将他们的全部工作负载迁移到 AWS Graviton 处理器,这些定制的服务器处理器是由 AWS 开发的,旨在为 Amazon Elastic Compute Cloud(Amazon EC2)上运行的云工作负载提供卓越的性价比。
“这项 AWS AML 计划为我们指明了方向,并加速了我们的现代化改造,”Hynes 表示。“这是一项基础性的工作,让我们为未来实现更大的创新做好了准备。”
这项 AWS AML 计划为我们指明了方向,并加速了我们的现代化改造。这是一项基础性的工作,让我们为未来实现更大的创新做好了准备。
Alan Hynes
Employment Hero 工程总经理找到今天要查找的内容了吗?
请提供您的意见,以便我们改进网页内容的质量