Please use Google Chrome, Mozilla or Opera to visit the site
SaaS solution for companies staff collaboration and development
Client had existing developed on-premise web-based platform to for companies including the personnel collaboration, development and knowledge base.
For each new company was created separate installation on own or company server.
In case of any changes in the source code, it was necessary to duplicate changes in each installation.
Aim of the project was to make it easy to add new company and avoid code duplication.
To reach the goal was made decision to move the system to the MS Azure platform and modify it to be SaaS solution.
To be able handle a lot of companies in the same time it will be necessary to implement dynamic scalability. Thus web-project was moved to the cloud service with WebRole and tasks to be done in background in same cloud service, but in WorkerRole.
Then this cloud service was configured for auto-scaling.
SQL Server database was migrated to the SQL Azure.
After that modification of the source code for solution were made to support cloud system and auto-scaling including: moving session to the database instead of storing data in memory, change using local file system to the Blob storage, implementing Azure Queue to pass commands from WebRole to the WorkerRole and vice versa.
During first testing session of the cloud solution was detected big performance issues, which were absent in previous version.
System performance analysis was done and as result was detected, that data access layer has been implemented not in optimal way making hundreds of requests to the SQL Server database for each page loading.
As a result data access layer was optimized to decrease number of database requests to up to five per page and performance issues were solved.
Feel free to contact us.