Tuesday, December 2, 2014

HTTP proxy plugin configuration in weblogic and Failover Demo in Cluster


I have explained in my previous post in more detail about the cluster configuration and deployment of sample application. This post is the continuation to access the deployed application.
In order to access the application deployed in the Cluster environment, we should access via HTTP web servers. We can configure apache HTTP servers  or any other client proxy to access the deployed application.

Simple flow diagram to understand the requests managed by Load Balancer


 In this sample am going use the HTTP proxy  plugin , for that I have created the simple webapplication in JDeveloper and configured the HttpClusterServlet and managed servlets details in web.xml and weblogic.xml. Download web app here.



web.xml (sample and hihglighted important configs)
<?xml version = '1.0' encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         version="2.5" xmlns="http://java.sun.com/xml/ns/j2ee">
<servlet>
  <servlet-name>HttpClusterServlet</servlet-name>
    <servlet-class>
      weblogic.servlet.proxy.HttpClusterServlet
    </servlet-class>
  <init-param>
    <param-name>WebLogicCluster</param-name>
    <param-value>localhost:7881|localhost:7882</param-value>
  </init-param>
  <init-param>
    <param-name>KeyStore</param-name>
    <param-value>/mykeystore</param-value>
  </init-param>
  <init-param>
    <param-name>KeyStoreType</param-name>
    <param-value>jks</param-value>
  </init-param>
  <init-param>
    <param-name>PrivateKeyAlias</param-name>
    <param-value>passalias</param-value>
  </init-param>
  <init-param>
    <param-name>KeyStorePasswordProperties</param-name>
    <param-value>mykeystore.properties</param-value>
  </init-param>
</servlet>
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>*.jsp</url-pattern>
</servlet-mapping>  
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>*.jspx</url-pattern>
</servlet-mapping> 
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>*.html</url-pattern>
</servlet-mapping>
</web-app>

weblogic.xml
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 9.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic
810-web-jar.dtd">
  <weblogic-web-app>
    <context-root>/ </context-root>
  </weblogic-web-app>


 When ManagedServer1 is in not running or down, the request will go to the other servers which is active and running with the requested state without any loss of data. The Managerserver mapping will be taken care by the algorithm you chose when you are creating the Cluster. In my case its round-robin.

Failover flow diagram- ManagedServer 1 is in Shutdown state


Now deploy the web application HTTPProxy plugin into weblogic Admin server (not on cluster).


After deployment, you can access the deployed adf application via admin port. Given below my local sample url for reference


Failover demonstration (Demo app download here)

Look at the below screen, Its Running on Adf_Server-1. Server Name is shown in simple outPutText with weblogic.Name property

JSFUtils.setExpressionValue("#{pageFlowScope.serverName}", System.getProperty("weblogic.Name"));

 <af:panelLabelAndMessage label="Running on :: " id="plam4"
                               inlineStyle="color:Blue; font-size:medium;">
        <af:outputText value="#{pageFlowScope.serverName}" id="ot4"/>
    </af:panelLabelAndMessage>

Note: Fields also binded with Richcomponent and values with scopes

<af:inputText label="Name" id="it1" value="#{pageFlowScope.name}"
                        binding="#{pageFlowScope.clustertestbean.nameRichTxt}"/>
 <af:inputText label="Department" id="it2" value="#{pageFlowScope.department}"/>
<af:inputText label="Location" id="it3" value="#{backingBeanScope.location}"/>


Now stopping my managed server Adf_Server-1 and click Next button


Adf_Server-1 is in SHUTDOWN state, and Keeping the same page same session clicking Next button,

Now it’s showing the server name as Adf_Server-2 which is in running state. Also all the values in the form from Main page carried to Details page as well.


Here we can understand that when the one server is down i.e., when failover happens cluster automatically manages state and keeps the application stable without any service interruption.Your application will be Highly available always.

Downloads

Leave your comments below if any issues. Thanks

31 comments:

  1. Replies
    1. The internet today is full of SCAM ADS, mostly in comments of various sites and blogs. A large number of individuals have been victims of scam and lost a lot of money to SCAMMERS. Most of the common scam you can see
      ❌BANK LOAN SCAM. ❌BINARY OPTIONS SCAM.
      ❌BINARY AUCTION SCAM. ❌HACKING SCAM. and lost more......

      But here is a good news to everyone who has been a victim of INTERNET SCAM❗️
      You can get your money back from your scammer, Authorities will not been involve just the genius of our skill.

      WHO ARE WE⁉️
      We are PLUGGERS! A group of skilled Hackers and have dedicated our time to help individuals get back thier money from INTERNET SCAMMERS. There is a research was carried one to calculate the amount of money individual loose to Scam, and it was confirmed that more than USD $3billion annually. This is so wrong and that’s why we have decided to help individuals get thier money.

      HOW DO WE OPERATE⁉️
      We first of all study the scammer brought to us by hacking the person device(phone or computer) to get information of How, Where, this person keeps money he/she as defrauded from people ( so many of this scammers don’t actually save the money in banks, they mostly stack the money in a Bitcoin wallet, that way it is safe and untraceable to authorities) and we work on a strategy to get back the money and give it back to whom they have defrauded.

      Contacting us is simple, just give us a message through the email below.
      Email-: globalpluggers@gmail.com

      If you a victim of internet scam or you know someone who is, make contact to us immediately. You are 💯 % safe to contact us, our email is very secure.






      Delete
  2. Hi Gopinath..
    Its a good article . Can you email me in asanjana39@gmail.com. I have some doubts regarding ADF so can you plz email me

    ReplyDelete
  3. hi this is maryjackson
    its a good article and it is very useful who want learn oracle adf courseOracle ADF online Training Classes

    ReplyDelete
  4. your providing such a valuable information about studying..and also have some good key points to every student.
    ORACLE ADF

    ReplyDelete
  5. This is very much happy for the great services that to sharing the great technology. I am really very happy for using the nice technology that to using the amazing technology in this blog.Oracle Apps Technical Online Training

    ReplyDelete
  6. This comment has been removed by the author.

    ReplyDelete
  7. Good Article. Thanks for the information. We also provide Oracle ADF online training. check this site & Tekslate for indepth Oracle ADF training.

    ReplyDelete
  8. Thanks for sharing this form of useful information,
    Clearly, i am seeking out this sort of useful records it's miles very useful to me and it's far useful to who need have a look at capability through on-line and who are seeking out oracle fusion procurement online education
    regards
    oracle fusion procurement online training
    oracle fusion procurement training

    ReplyDelete
  9. This comment has been removed by the author.

    ReplyDelete
  10. very interesting article I feel very enthusiastic while reading and the information provided in this article is so useful for me. Content in this article guides in clarifying some of my doubts.

    Oracle Fusion SCM Online Training

    ReplyDelete
  11. Your site is really amazing and useful information to wroth.Thank you so much.

    Weblogic Server 12cR2 Training

    ReplyDelete

  12. I Just Love to read Your Articles Because they are very easy to understand.Very Helpful Post And Explained Very Clearly About All the things.Very Helpful. Coming To Our Self We Provide Restaurant Equipment Parts Through Out US At Very Affordable Prices And Also We Offer Same Day Shipping In US.We Offer Only Genuine Products.Thanks For Posting.HAve a Nice Day!

    ReplyDelete
  13. Really thanks for Posting, Updated Lot of unknown things to me, thanks for sharing the article,You have excelled the topic,Urgent Care Services Provided,Thank You for Sharing such an Informative and Useful Article.I Liked Your Writing Skills, Keep On going.

    ReplyDelete
  14. Your website is very good and nice information was provided in your site, thanks for sharing.
    Oracle Fusion SCM Training in Ameerpet

    ReplyDelete
  15. This Blog is very helpful and useful, came to know that I should be strong in my basics and this blog helps me to improve it, US Medical Residency in Chicago Services Provided by Us. Thanks For Posting.

    ReplyDelete
  16. This comment has been removed by the author.

    ReplyDelete
  17. Really Thanks For Posting Such a Useful and informative article. I would like to share this blog with my friends and Colleagues Tico Certification Training

    ReplyDelete
  18. Really A great informative blog post this blog provides only valuable information on Mulesoft Certification Training .Thanks For Sharing.

    ReplyDelete
  19. Really Thanks For Posting Such an Informative Content....

    Vizag Real Estate

    ReplyDelete
  20. I am really admired for the great info is visible in this blog that to lot of benefits for visiting the nice info in this website. Thanks a lot for using the nice info is visible in this blog.
    Java training in chennai | Data Science Training in Chennai | DevOps Training in Chennai

    ReplyDelete
  21. Thank you for giving the information and it is use full for me. training with placement company in Hyderabad

    ReplyDelete
  22. Pretty good post. I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I’ll be subscribing to your feed and I hope you post again soon.
    ExcelR Data Science Course

    ReplyDelete
  23. Nice to be visiting your blog once more, it has been months for me. Well this article that ive been waited for therefore long. i want this article to finish my assignment within the faculty, and it has same topic together with your article. Thanks, nice share.
    Data Science Course in Malaysia
    Big Data Analytics Malaysia
    Data Analytics Course Malaysia

    ReplyDelete
  24. Very nice blog and articles. I am realy very happy to visit your blog. Now I am found which I actually want. I check your blog everyday and try to learn something from your blog. Thank you and waiting for your new post.big data analytics course malaysia
    360DigiTMG data science course malaysia
    data analytics courses
    360DigiTMG

    ReplyDelete
  25. Excellent blog. Lots of useful information here, thanks for your effort!
    Real Estate Plots in Vizag

    ReplyDelete
  26. You completed certain reliable points there. I did a search on the subject and found nearly all persons will agree with your blog. data science course in mysore

    ReplyDelete
  27. You completed certain reliable points there. I did a search on the subject and found nearly all people will agree with your blog.
    data science training institute in hyderabad

    ReplyDelete