<img alt="" src="https://secure.agile365enterprise.com/790157.png" style="display:none;">
Education

Introduction

Updating a website with the latest technologies is always a work in progress. New CMS features and functionalities are created every day, however, the inability to update or implement them makes existing systems obsolete, inefficient and incompatible with new devices and they do not integrate seamlessly with new applications. Also, organizations that continue to use ‘end of life’ software find themselves susceptible to data loss, security threats, and ultimately, at the receiving end of business disruption. 

The Client

Our client is a global leader in education technology and has helped millions of students to identify their strengths, explore different career options, match best-fit educational opportunities, and reach their education and career goals.

They wanted to upgrade their close to ‘end of life’ CMS. It was unable to store, manage, and retrieve information from its colossal database. As a result, website performance was adversely affected and their constantly increasing business requirements were hard to accomplish.

Highlights

We carried out the feasibility study to help the client in the decision-making of migration from Drupal 7 to Drupal 8. The proof of concept showcased seamless database management and optimal website performance.

The Requirement

The client wanted to:

  • Migrate from ‘end of life’ Drupal 7 to Drupal 8.
  • Enhance editorial experience - right from generating content to publishing it on the website.
  • Optimize their huge database of tables to produce fresh content and update existing content with ease.
  • Automate the import process of large datasets. 
  • Improve the API response time and subsequently, enhance application performance to quickly access and retrieve information.

The Challenges 

The client was facing database management challenges and performance-related issues:

  • Usage of Drupal 7 along with a lot of customizations required continuous maintenance of the custom codebase.
  • The automated migration process took weeks to run because of the multitude of fields in D7.
  • Low performance of the D7 system failed to meet current business needs.
  • System inability to simultaneously handle content updates by different users led to the repetitive efforts of saving the records.
  • As the system required manual intervention in uploading content, it took approximately 2-3 days to import/update a large set of data in the CSV file format.
  • Low API response time led to poor application performance.

The Solution

We created a roadmap to migrate the client’s website from D7 to D8. The proof of concept ensured that their business needs are met using Drupal 8 core capabilities and contributed modules with minimal customization. We also recommended the following measures: 

  • An efficient data structure with custom entities to manage huge datasets.
  • Use of improved D8 database structure to reduce the number of tables. 
  • Enhance the editorial experience for in-house content editors.
  • Proposed ways to improve API performance and fix issues of degradation due to increased load.
  • Expose the APIs to third parties (universities and colleges) to allow them to perform tasks, such as form filling, much faster.
  • Utilize a better import process for large datasets (30000 records each).

Our Approach

We worked closely with the client to carve a migration strategy that addressed these issues successfully:

  1. End-of-Life D7 - As D7 was approaching end of life, we provided them a strategy to migrate their website to D8 on PHP 7.3 and MySQL 5.7. This allowed them to leverage new functionalities and achieve better web performance.
  2. Application performance - The use of Elasticsearch indexing to store, search, and analyze huge amounts of data and receive responses in milliseconds. 
  3. Editorial Experience - Integration of the Inline Entity forms module to edit referenced content. It breaks down one large request into multiple requests to reduce response time at the end of content update.
  4. Extensibility - Recommended the usage of robust migration plugins for migrating large sets of data from Drupal 8 to Drupal 9.
  5. Scalability - Demonstrated the Publish/Subscribe model in CMS, so that peripheral systems can be integrated for any future business need.
  6. Improved Website Performance - Showed how Restful APIs can be used in small sets to reduce the request turnaround time.
  7. Managed enormous datasets - Suggested the use of field UI field with custom entities and other base fields to reduce the number of tables.

Tech Stack

edtech-3-1

Business Benefit

  • Increased editor efficiency. They can now generate, edit, and update content much faster.
  • Faster API response - from 8-9 seconds to 0.5-0.6 milliseconds.
  • Minimal code maintenance. 
  • Reduce the time to run the semi-automated import process to less than a day with negligible manual intervention.
  • Improved system scalability to accommodate new datasets, handle higher traffic, and manage new  business requirements.

Subscribe to our newsletter