Monday, 14 May 2012

Setting the scene: Getting to grips with an inherited app

I seem to be the primary support in my work for an internal app developed by contractors for us.  They were able to produce the app without the usual restrictions, styles and frameworks imposed on internal staff by my company.  As a result the architecture and approach is modern and unlike anything I come across in work.  It's a fantastic opportunity to learn about modern coding styles and techniques!

The application is an ASP.Net 3.5 web app with WCF services as the app tier and a database plus NAS share for the data tier.  It's written using C# in a CQRS pattern.

But there are problems with the application:-

1. Intermittent timeouts in production when users try to zip up and download multiple files.
2. Errors when uploading a file and assigning multiple entities to the new file.
3. The app is slow, especially for the first page load.
4. Calls from the ASP.Net presentation tier to the WCF app tier do not work correctly in a load balanced environment.  Calls must only be routed to http://localhost.  This appears to be a consequence of impersonating another ID when running the app.  The authentication is lost if we route via the load balancer in a double hop.
This blog will capture my learnings and fixes applied.

No comments:

Post a Comment