wGrow - Team Notes

Sharing Expertise: Tech Insights and Case Studies

Optimizing a Large-Scale Medical Service Provider's Patient Management System Using Cost-Effective Scalability Solutions

Abstract:

This article outlines the process of improving the performance of a commercial medical service provider's patient management system without resorting to expensive server upgrades. The solution involves separating employee and public portals, distributing data across multiple servers, implementing archiving and web services, and utilizing Windows Service scheduled timer jobs for report generation. The implementation is based on ASP.NET, MS SQL, and AWS infrastructure.

Note: information shared in this article does not reveal any confidential information or workflow.

1. Introduction

The patient management system of a commercial medical service provider with over 500K clients in Singapore faces performance issues, including slow report generation and timeouts during new registrations. The system, built with ASP.NET and MS SQL and hosted on AWS, handles more than 5 million records in key tables. AWS recommends expensive dedicated host and high-performance database server upgrades, which the client rejects. This article presents a cost-effective solution to optimize the system's performance without resorting to server upgrades.

2. Solution Design

The proposed solution involves the following steps:

  1. Separating employee and public patient portals
  2. Distributing data across multiple servers
  3. Implementing an Archive Automation Service
  4. Creating web service APIs for data access
  5. Generating reports using Windows Service scheduled timer jobs

    Server_Network
    Note: the diagram above is for showcase only. Not identical to the deployed design.

3. Implementation

3.1 Separating Portals

The employee-accessed portal and public patient-accessed portal are separated and hosted on different servers. This ensures that each portal has dedicated resources, improving overall system performance and reducing the likelihood of timeouts.

3.2 Data Distribution

Three additional servers with regular specifications are set up to host specific data:

  1. Server 1: Log data older than one week
  2. Server 2: Patient visit data older than six months
  3. Server 3: Health reports older than six months

By distributing older data across these servers, the core production database retains only around 500K records in key tables, reducing the load on the primary server.

3.3 Archive Automation Service

An Archive Automation Service is implemented to transfer data from the primary server to the additional servers based on specific settings. It also removes physical reports older than 30 days. The service periodically scans the primary server's tables, transferring data to the appropriate secondary server and deleting it from the primary server.

3.4 Web Service APIs

Web service APIs are created on the additional servers, and firewall controls are set up to allow production servers to call these APIs. The APIs return data in real-time upon request, ensuring that the primary server can access older data when needed.

3.5 Windows Service Scheduled Timer Jobs

A Windows Service scheduled timer job is implemented to generate patient reports on the secondary servers. The timer job periodically generates reports, offloading the report generation process from the primary server and improving its performance.

4. Conclusion

The cost-effective scalability solution presented in this article optimizes the performance of a large-scale medical service provider's patient management system without requiring expensive server upgrades. By separating portals, distributing data across multiple servers, implementing an Archive Automation Service, and utilizing web service APIs and Windows Service scheduled timer jobs, the system can handle high volumes of data while maintaining fast response times and smooth operation.

5. Future Improvements

The solution can be further enhanced with the following improvements:

  1. Implementing caching mechanisms to reduce database load
  2. Optimizing database queries and indexes for faster data retrieval
  3. Monitoring system performance and adjusting server resources as needed
  4. Exploring the use of AWS services like Amazon RDS or Amazon Aurora for improved database performance


By continually refining the system's performance, the medical service provider can ensure reliable and efficient patient management while keeping infrastructure costs under control.

Related

Implementing Business Continuity Management for a Singapore Real Estate Agency's ERP Solution

Implementing Business Continuity Management for a Singapore Real Estate Agency's ERP Solution

This technical summary documents the process of designing and implementing a Business Continuity Man...

Read More >
Integrating Python's Rembg Library with C# for Background Removal in .NET Applications

Integrating Python's Rembg Library with C# for Background Removal in .NET Applications

In this article, we will explore how to integrate Python's Rembg library with C# to add backgrou...

Read More >
Streamlining Monthly Billing Reports for a Singapore Energy Company: A .NET-Based Solution

Streamlining Monthly Billing Reports for a Singapore Energy Company: A .NET-Based Solution

Efficient and accurate billing processes are crucial to the financial health of a business. In the c...

Read More >
Implementing Blockchain Technology for Secure Financial Forecasting in Commercial Real Estate

Implementing Blockchain Technology for Secure Financial Forecasting in Commercial Real Estate

This technical article details the process of leveraging blockchain technology to secure complex fin...

Read More >
SQL Server Hardening Checklist & Best Practices

SQL Server Hardening Checklist & Best Practices

It's essential to ensure that SQL Server is secure and protected against potential cyber threats...

Read More >
Designing a Secure and High-Performance EC Sales and Report System for Property Developers

Designing a Secure and High-Performance EC Sales and Report System for Property Developers

In light of policy changes, property developers are now expected to create their own Executive Condo...

Read More >
Contact Us
  • Our Address:
    114 Lavender Street, #07-51, CT Hub 2, Singapore 338729
    Malaysia Johor - 99-01 Jalan Adda 3/1 Taman Adda Height 81100 Johor Bahru Johor, Malaysia
  • Phone Number:
    +65 6652 3398
  • WhatsApp:
    WhatsApp Us
  • Email:
    [email protected]