Clouds.Fail
Do Clouds Fail..?
Modernizing Legacy Applications (1)
When looking at the software deployed a decade ago, we see a few common patterns. An application platform often consists of various parts. A typical application platform is the two- or three-tier architecture:
- Presentation tier: This is the highest level of the application. The presentation tier displays information related to such services as browsing. This is typically a web server.
- Application tier (business logic, logic tier, or middle tier): The logical tier is pulled out from the presentation tier and, as its own layer, it controls an application’s functionality by performing detailed processing. This is usually an application server.
- Data tier: The data tier includes the data persistence mechanisms and the data access layer that encapsulates the persistence mechanisms and exposes the data. This is typically a database server.
The presentation and application tiers are usually based upon either a Windows IIS web server running a .NET based application supported by a SQL Server database, or Linux based application architecture often running IBM WebSphere HTTP Server and Application Server, or Oracle HTTP Server and WebLogic supported by an Oracle or DB2 database. If you’re lucky, it’s running on Tomcat or JBoss Application Server, which likely means it has probably been looked at in the last seven years or less.
The custom applications are usually written in Java or C#. The versions are as old as the underlying platforms and have usually been out of support for years. A rule of thumb for these systems is: the more complex the application, the less interest there has been to update or patch the platform it is running on. Many apps integrate with further legacy systems, like messaging, e.g., IBM MQ or Tibco, and identity and access management systems, like IBM Tivoli Access Manager and Sun LDAP backends.