{"id":9327,"date":"2023-01-09T09:00:52","date_gmt":"2023-01-09T17:00:52","guid":{"rendered":"https:\/\/www.microsoft.com\/insidetrack\/blog\/?p=9327"},"modified":"2023-08-18T16:06:32","modified_gmt":"2023-08-18T23:06:32","slug":"bringing-microsofts-commerce-platform-to-microsoft-azure","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/insidetrack\/blog\/bringing-microsofts-commerce-platform-to-microsoft-azure\/","title":{"rendered":"Bringing Microsoft\u2019s commerce platform to Microsoft Azure"},"content":{"rendered":"
\n
\n
<\/div>\n

This content has been archived, and while it was correct at time of publication, it may no longer be accurate or reflect the current situation at Microsoft.<\/p>\n<\/div>\n<\/div>\n

\"MicrosoftFor almost 20 years, our Microsoft\u2019s Commerce Transaction Platform (CTP) processed online payments through an on-premises environment, verifying that all transactions had been processed, sales had been finalized, and revenue reported. Commerce & Ecosystems (C&E), the team who manages the CTP, had an important question to answer\u2014should they continue refreshing and building out the on-premises infrastructure or take the big step towards digital transformation and migrate the platform into Microsoft Azure?<\/p>\n

The decision was made to bring CTP into the cloud, a change that meant we at Microsoft would see better performance, improved reliability, new monitoring capabilities, and an ability to scale in a cost-optimized way.<\/p>\n

[Read more about boosting Microsoft\u2019s transaction platform by migrating to Microsoft Azure<\/a>. Explore moving Microsoft\u2019s financial reporting processes to Microsoft Azure<\/a>. Discover modernizing enterprise integration services using Azure<\/a>.]<\/em><\/p>\n

Microsoft\u2019s eCommerce runs on our CTP<\/h2>\n

In order for our online business to grow, the CTP has to be available and reliably processing requests.<\/p>\n

Most purchases of Microsoft Azure, Microsoft Office 365, Microsoft Dynamics 365, and several other consumer and commercial services, are powered by the CTP. If the platform goes offline, revenue loss is measured in thousands of dollars per second. In addition to recording online orders, the system is responsible for billing subscriptions.<\/p>\n

Like most on-premises environments, our CTP follows a traditional refresh cycle, typically driven by warranty lifecycles. As machines and hardware are due to fall out of warranty, the C&E team evaluates their infrastructure, projects future needs, and research replacement options before systematically changing out the machines. This refresh cycle takes a minimum of six months, with the C&E team being careful not to disturb or disrupt the commerce platform.<\/p>\n

In keeping up with the processing and storage needs of the CTP, C&E ends up purchasing bigger, faster, and more expensive hardware with each refresh cycle. The CTP runs on over 700 machines and stores over six petabytes of data in over 100 databases, relying heavily on the use of the Microsoft Distributed Transaction Coordinator (MSDTC), which is responsible for coordinating transactions across multiple resources. This makes replacement a major task. However, each refresh is also an opportunity to identify a better path forward.<\/p>\n

\n
\"A
Our CTP includes a network of storage devices to record and verify transactions. This improves response time and availability of data, but also made it difficult to move away from an on-premises environment.<\/figcaption><\/figure>\n<\/div>\n

Time to move to the cloud<\/h2>\n

When C&E was considering Microsoft Azure, it was already very popular at an enterprise level. Microsoft Azure is highly robust, introduces more flexibility, more computing options, and would have a lower maintenance cost for C&E. The team also had a vocal cadre of engineers throwing support behind the cloud platform, who were all eager to work on the latest technology.<\/p>\n

Scaling was also on the table. In the on-premises environment, C&E had been required to procure enough machines to handle high volume surges, even though this capacity was an intermittent need. This meant a large number of physical machines would need to be procured to accommodate occasional spikes, only to remain dormant during low-traffic periods. Unlike an on-premises environment, Microsoft Azure can spin machines up and down as needed. This cost-efficient method for balancing out high and low system volume also meant C&E could procure and decommission virtual machines (VMs) in a matter of minutes, not months.<\/p>\n

Considering these factors, the cost-benefit of renewing the on-premises machines versus moving to Microsoft Azure reached a tipping point, and Microsoft Azure was coming out on top.<\/p>\n

Finding the right infrastructure for our CTP<\/h2>\n

For the migration to Microsoft Azure to be successful, C&E would need the cloud service to match or exceed the growing performance and storage needs of the transaction platform. This meant carefully examining the options available to the team, trying to identify the right approach while still being cost-aware.<\/p>\n

Because of the need to scale up performance, the demand on Microsoft Azure machines would be high. Several brand-new virtual machine series had just been released, and they met those performance requirements, but C&E was reluctant to be one of the first customers. Time was not on their side; however, the warranties for CTP\u2019s on-premises machines would be expiring soon. In the end, moving to Microsoft Azure was more important and C&E decided to act.<\/p>\n

PaaS or IaaS?<\/h3>\n

Before C&E could migrate the CTP to Microsoft Azure, they had an important tech decision to make: would they use Platform-as-a-Service (PaaS) or Infrastructure-as-a-Service (IaaS)?<\/p>\n

PaaS was the preferred option, especially after doing a feature analysis. In PaaS, our CTP would have more flexibility and an easy environment to operate in. Additionally, PaaS would require less maintenance, making it an improvement over the on-premises infrastructure.<\/p>\n

But some of the legacy services needed for CTP to process transactions didn\u2019t easily fit into PaaS. The team had to think through how specific our CTP needs would be addressed.<\/p>\n