To view the application in multiple languages, when invoked from a different locale.
To redirect different URLs to the one application deployed on the application server which displays it to the end user in multiple Languages.
Existing Technical landscape of the Customer:
1.Bunch of intranet applications
2.Need to access the portal thru internet/intranet/extranet
3.Involves RDBMS and SAP applications for data storage and retrieval
Customer pain points
1.Existing landscape does not have web server layer separate
2.URL redirect needed when the application is accessed from a different locale
3.Performance of the existing architecture is not upto the expectations of the customer.
To introduce the Web server layer above the Application Servers layer to take care of the URL redirect and also to act as Proxy/Cache server.
For this scenario we approached Apache as the Web server with accepts the request the user request and then redirects it to the application server for the request to be processed.
The existing scenario does not involve separate web server layer, the application server serves as both web and application server.
Following diagram gives an idea of the architecture explained.
In the below given diagram, when a user makes a request, the request first passes through the firewall before it accesses the Apache server, the Apache server then redirects it to the appropriate server for the request to be processed.
Alternatively we can have one more firewall between the Apache server and the application server.
1. Apache server is a freely downloadable software
2. It is easy to configure an Apache Server
3. It is considered to be a more stable web server
Sequence of Request/Response in the new architecture
The above diagram can be divided into three layers
1. Web Server Layer (Apache)
2. SAP Web Application Server Layer
3. Data Layer
Let us have a look at the sequence of steps that follow when a user makes a request.
1. The request is scanned through the firewall and sent to the Apache server. The Apache server can be integrated with a LDAP server with a web client for the basic authentication of the user making the request.
2. Apache server has to be configured to redirect , different URLs as required here in this scenario to the same application. Create folders for each of the URL and an index.html page inside the directory on the Apache server directory. Edit the index page which is divided into frames and include the URL to be accessed. This is required for masking the Application URL which is deployed on the application server.
3. Finally the application server processes the request interacting with the database if required.
1. Apache can act as a proxy for caching, so that the response time is reduced considerably.
2. Apache server can be made to interact with an LDAP server for the basic authentication keeping that layer of authentication separate.
3. Keeping the web server layer separate can take care of routing the http and https protocols separate, helping in load balancing and distributing the server loads.
4. Layering helps in improving capabilities the non- functional requirements that matter the most to the customers. The components of the layers do their functionalities instead of taking the responsibilities of other components.(web components to Web server and Enterprise components to Application server)
Summary & Conclusion
The approach what we have used here is one of possible ways to show case how we can use Apache as a proxy /cache server.