Load balancing algorithm problems with servlets

All,
We have a simple servlet which looks up an RMI object from JNDI and invokes
one of its methods in a loop. The RMI object is the HelloClusterImpl
example provided by WebLogic. The servlet basically copies the code from
the HelloClusterClient. In the cluster property file, our load algorithm is
setup to be round-robin. We are using IIS as our web server. If we start
up both servers in the cluster and then use another machine as our client to
call the HelloClusterClient, we see that the calls to HelloClusterImpl
alternate between the two clustered servers. In fact, it is done perfectly
at 50% for each server. When we run the servlet from with the client's
browser, however, it seems as if which ever server in the cluster that
receives the servlet request then takes 100% of the calls to
HelloClusterImpl and there is never any alternating. Although we can verify
that different servers in the cluster receive the servlet request, it seems
as if there is never any altering between the servers during the method
invocations on the HelloClusterImpl servant. Does this seem right?
Shouldn't there be alternating between the servers? Any help would be
greatly appreciated.
Thanks,
-Jon

I have to try this and I will let you.
Thanks
Jon Eagles wrote:
All,
We have a simple servlet which looks up an RMI object from JNDI and invokes
one of its methods in a loop. The RMI object is the HelloClusterImpl
example provided by WebLogic. The servlet basically copies the code from
the HelloClusterClient. In the cluster property file, our load algorithm is
setup to be round-robin. We are using IIS as our web server. If we start
up both servers in the cluster and then use another machine as our client to
call the HelloClusterClient, we see that the calls to HelloClusterImpl
alternate between the two clustered servers. In fact, it is done perfectly
at 50% for each server. When we run the servlet from with the client's
browser, however, it seems as if which ever server in the cluster that
receives the servlet request then takes 100% of the calls to
HelloClusterImpl and there is never any alternating. Although we can verify
that different servers in the cluster receive the servlet request, it seems
as if there is never any altering between the servers during the method
invocations on the HelloClusterImpl servant. Does this seem right?
Shouldn't there be alternating between the servers? Any help would be
greatly appreciated.
Thanks,
-Jon

Similar Messages

  • ACE Load Balancing algorithm

    Team,
    I was reading Designing Content Switching Solutions last night. I came across a page that suggested Round Robin for HTTP connections, Least Conns for FTP connections, dst Hash for caching connections and so on.
    Could someone please provide information or a link on which load balancing algorithm to use based on the application, is there some form of best practice for this?
    Thank you,
    John...

    John,
    there is no best practices.
    It depends on your applications and needs.
    For example, for caching, some people prefer to optimize the disk space, and other the response time.
    So, if you do destination hash, you guarantee that all traffic for one site is always handled by the same cache.
    Therefore you optimize the disk space since you will not find the same object on all caches.
    BUT if one site attracts a lot of connections, the cache device that handles that site will be overloaded (for example youtube.com)
    Leastconn is a good option in theory.
    The device that has less connections should receive the next one.
    The problem is if you have flapping links or servers crashing or if you do a lot of maintenance and add/remove servers frequently.
    This confuses the algorithm and is the source of a lot of bugs.
    My recommendation is to go with roundrobin unless you have identify that you really need another algorithm.
    And you can always start with roundrobin and see what happens...
    Gilles.

  • ESXi 4.1 NIC Teaming's Load-Balancing Algorithm,Nexus 7000 and UCS

    Hi, Cisco Gurus:
    Please help me in answering the following questions (UCSM 1.4(xx), 2 UCS 6140XP, 2 Nexus 7000, M81KR in B200-M2, No Nexus 1000V, using VMware Distributed Switch:
    Q1. For me to configure vPC on a pair of Nexus 7000, do I have to connect Ethernet Uplink from each Cisco Fabric Interconnect to the 2 Nexus 7000 in a bow-tie fashion? If I connect, say 2 10G ports from Fabric Interconnect 1 to 1 Nexus 7000 and similar connection from FInterconnect 2 to the other Nexus 7000, in this case can I still configure vPC or is it a validated design? If it is, what is the pro and con versus having 2 connections from each FInterconnect to 2 separate Nexus 7000?
    Q2. If vPC is to be configured in Nexus 7000, is it COMPULSORY to configure Port Channel for the 2 Fabric Interconnects using UCSM? I believe it is not. But what is the pro and con of HAVING NO Port Channel within UCS versus HAVING Port Channel when vPC is concerned?
    Q3. if vPC is to be configured in Nexus 7000, I understand there is a limitation on confining to ONLY 1 vSphere NIC Teaming's Load-Balancing Algorithm i.e. Route Based on IP Hash. Is it correct?
    Again, what is the pro and con here with regard to application behaviours when Layer 2 or 3 is concerned? Or what is the BEST PRACTICES?
    I would really appreciate if someone can help me clear these lingering doubts of mine.
    God Bless.
    SiM

    Sim,
    Here are my thoughts without a 1000v in place,
    Q1. For me to configure vPC on a pair of Nexus 7000, do I have to connect Ethernet Uplink from each Cisco Fabric Interconnect to the 2 Nexus 7000 in a bow-tie fashion? If I connect, say 2 10G ports from Fabric Interconnect 1 to 1 Nexus 7000 and similar connection from FInterconnect 2 to the other Nexus 7000, in this case can I still configure vPC or is it a validated design? If it is, what is the pro and con versus having 2 connections from each FInterconnect to 2 separate Nexus 7000?   //Yes, for vPC to UCS the best practice is to bowtie uplink to (2) 7K or 5Ks.
    Q2. If vPC is to be configured in Nexus 7000, is it COMPULSORY to configure Port Channel for the 2 Fabric Interconnects using UCSM? I believe it is not. But what is the pro and con of HAVING NO Port Channel within UCS versus HAVING Port Channel when vPC is concerned? //The port channel will be configured on both the UCSM and the 7K. The pro of a port channel would be both bandwidth and redundancy. vPC would be prefered.
    Q3. if vPC is to be configured in Nexus 7000, I understand there is a limitation on confining to ONLY 1 vSphere NIC Teaming's Load-Balancing Algorithm i.e. Route Based on IP Hash. Is it correct? //Without the 1000v, I always tend to leave to dvSwitch load balence behavior at the default of "route by portID". 
    Again, what is the pro and con here with regard to application behaviours when Layer 2 or 3 is concerned? Or what is the BEST PRACTICES? UCS can perform L2 but Northbound should be performing L3.
    Cheers,
    David Jarzynka

  • What is load balancing "stickyness" problem

    We are getting this error " Failed to send alert messages to browser " on the interaction centre after saving the ticket followed by  the END button.
    There is a similar thread with the same issue [CRM 2007-IC Web Interface Message - Failed to send Alert Message to Browser;
    in the observations one of the solution for the issue was load balancing "stickyness" problem
    If any one can share some knowledge on load balancing "stickyness" problem it is really appreciated  and points will be awarded.
    regards
    Kumar
    Edited by: S Kumar on Jun 16, 2011 11:28 AM

    Clustering : is the use of multiple computers to provide a single service.
    Load Balancing: Technique implemented to spread "load" between alike computers for service availability via unshared system resources increasing  system availability and performance.
    Please refer to this link to gather more about :
    http://en.wikipedia.org/wiki/Load_balancing_%28computing%29

  • Hyper-V NIC Team Load Balancing Algorithm: TranportPorts vs Hyper-VPorts

    Hi, 
    I'm going to need to configure a NIC team for the LAN traffic for a Hyper-V 2012 R2 environment. What is the recommended load balancing algorithm? 
    Some background:
    - The NIC team will deal with LAN traffic (NOT iSCSI storage traffic)
    - I'll set up a converged network. So there'll be a virtual switch on top of this team, which will have vNICs configured for each cluster, live migration and management
    - I'll implement QOS at the virtual switch level (using option -DefaultFlowMinimumBandwidthWeight) and at the vNIC level (using option -MinimumBandwidthWeight)
    - The CSV is set up on an Equallogics cluster. I know that this team is for the LAN so it has nothing to do with the SAN, but this reference will become clear in the next paragraph. 
    Here's where it gets a little confusing. I've checked some of the Equallogics documentation to ensure this environment complies with their requirements as far as storage networking is concerned. However, as part of their presentation the Dell publication
    TR1098-4, recommends creating the LAN NIC team with the TrasportPorts Load Balancing Algorithm. However, in some of the Microsoft resources (i.e. http://technet.microsoft.com/en-us/library/dn550728.aspx), the recommended load balancing algorithm is HyperVPorts.
    Just to add to the confusion, in this Microsoft TechEd presentation, http://www.youtube.com/watch?v=ed7HThAvp7o, the recommendation (at around minute 8:06) is to use dynamic ports algorithm mode. So obviously there are many ways to do this, but which one is
    correct? I spoke with Equallogics support and the rep said that their documentation recommends TransportPorts LB algorithm because that's what they've tested and works. I'm wondering what the response from a Hyper-V expert would be to this question. Anyway,
    any input on this last point would be appreciated.

    Gleb,
    >>See Windows Server 2012 R2 NIC Teaming (LBFO) Deployment and Management  for more
    info
    Thanks for this reference. It seems that I have an older version of this document where there's absolutely
    no mention of the dynamic LBA. Hence my confusion when in the Microsoft TechEd presentation the
    recommendation was to use Dynamic. I almost implemented this environment with switch dependent and Address Hash Distribution because, based on the older version of the document, this combination offered: 
    a) Native teaming for maximum performance and switch diversity is not required; or
    b) Teaming under the Hyper-V switch when an individual VM needs to be able to transmit at rates in excess of what one team member can deliver
    The new version of the document recommends Dynamic over the other two LBA. The analogy that the document
    makes of TCP flows with human speech was really helpful for me to understand what this algorithm is doing. For those who will never read the document, I'm referring to this: 
    "The outbound loads in this mode are dynamically balanced based on the concept of
    flowlets.  Just as human speech has natural breaks at the ends of words and sentences, TCP flows (TCP communication streams) also have naturally
    occurring breaks.  The portion of a TCP flow between two such breaks is referred to as a flowlet.  When the dynamic mode algorithm detects that a flowlet boundary has been encountered, i.e., a break of sufficient length has occurred in the TCP flow,
    the algorithm will opportunistically rebalance the flow to another team member if apropriate.  The algorithm may also periodically rebalance flows that do not contain any flowlets if circumstances require it.    As a result the affinity
    between TCP flow and team member can change at any time as the dynamic balancing algorithm works to balance the workload of the team members. "
    Anyway, this post made my week. You sir are deserving of a beer!

  • Load balancing algorithm for groups in RZ12

    Hello,
    I would like to know the load balancing algorithm for groups defined in RZ12.
    I know that log on groups for external connections are administered via SMLG and table RZLLICLASS.
    I also know that RFC resources can be managed for RFC logon groups via RZ12.
    Kind regards,
    Peter
    <removed_by_moderator>
    Point awarding is at your discretion, but read and follow the "Rules of Engagement"
    Edited by: Juan Reyes on Dec 3, 2010 10:21 AM

    Hello!
    Found this post while searching information about RFC and Logon Groups...
    I have some mess in my head with SMLG functionality and RZ12. As I know SMLG we can use to distribute users to application server instances, it gives us good achievement in performance. With RZ12 we can distribute RFC connection of particular job for parallel execution on predefined application server. With SMQS and SMQR transaction we can set "Name of AS Group" to route RFC-execution on certain server or servers. But I have troubles with understanding. Imagine, we set up group 1 with 2 servers (name it RFC_GR1), and group 2 with another 2 servers (name it RFC_GR2). How could qRFC scheduler decide on which RFC server group (RFC_GR1 or RFC_GR2) distribute RFC-execution? How to interact "Name of AS Group" with RFC groups if we can set only one group?   How could we distribute RFC-execution depending on our logon groups (smlg)? We would like to distribute RFC depending on SAP logon groups. Is it possible? Or do I compare apple and orange?
    Regards,
    Artem Ivashkin

  • OSB 10gR3 - Create load balanced endpoint URI with WLST

    Hi,
    I need to create load balanced endpoint URIs for a Business Service listening to a JMQ queue. The configuration can be done through the console as shown below:
    Protocol: JMS
    Load Balancing Algorithm: round-robin
    URI 1 - jms://localhost:7001/loggingXACF/loggingQueue
    URI 2 - jms://localhost:7002/loggingXACF/loggingQueue
    I would like to do the same using ALSB customization API in WLST. Any pointers on this would be helpful
    Regards
    Vikas

    Any one have any idea what a CLUSTER-BROADCAST message is? And where it would be coming from?Cluster broadcast message is one of the way by using which WebLogic Server instances in a cluster communicate with one another. Details are here -
    http://download.oracle.com/docs/cd/E14571_01/web.1111/e13709/features.htm#i1021836
    Having little idea about this, I may not comment on the exact reason behind 21.4 million CLUSTER-BROADCAST messages in 70 minutes, but you may get better and faster response in Weblogic clustering forum -
    WebLogic Server - Clustering
    If you have Oracle Support, then I will suggest you to track this throgh a SR.
    Regards,
    Anuj

  • SG300-28: LAG Load Balance Algorithm

    The SG300-28 LAG Load Balance Algorithm options are:
    MAC Address
    IP/MAC Address
    This switch is connected to two ESXi hosts running version 5.5 each with quad port 1 gbit nic.
    These ESXI hosts supports > 20 algorithms.
    Is there in a upcoming firmware for the SG300-28 supporting more algorithms?

    The SG300-28 LAG Load Balance Algorithm options are:
    MAC Address
    IP/MAC Address
    This switch is connected to two ESXi hosts running version 5.5 each with quad port 1 gbit nic.
    These ESXI hosts supports > 20 algorithms.
    Is there in a upcoming firmware for the SG300-28 supporting more algorithms?

  • Port Channel Load-Balancing Algorithm (North Bound)

    I'm trying to figure out what the load balancing algorithm for the 6100 and 6200 FIs for the Northbound connections. I can't find any documentation on how to change it.
    The Nexus 7000s use an 8-bit hash, making it very easy to do something other than 2, 4, or 8 link port channel and get even (at least algorithmically) distribution.
    Catalyst switches (not sure about Sup2T though) would use a 1, 2, or 3-bit index, which would skew traffic algorthmically if you used a non-power of 2.
    Looking at the 5K documentation, it seems to use the Catalyst style (though haven't been able to confirm). My guess is that whatever is used for the 5Ks is used for the 6100/6200.
    Design wise, this would mean you would want to use powers of 2 for your NB uplinks.

    Hello Tony,
    On UCS FI, it uses " sr-cdest-ip " as the load balancing algorithm and uses 8 parameters for hashing
    6248-01-B(nxos)# sh port-channel load-balance
    Port Channel Load-Balancing Configuration:
    System: source-dest-ip
    Port Channel Load-Balancing Addresses Used Per-Protocol:
    Non-IP: source-dest-mac
    IP: source-dest-ip source-dest-mac
    6248-01-B(nxos)# show platform fwm info pc port-channel 1
    dump pc info: if_index 369098752 dump_all 0 verbose 1
    Po1: state 0x0  #pifs 1  fwimpd ctx 0x9666c1c
    Po1: hash params - l2_da 1 l2_sa 1 l3_da 1 l3_sa 1
    Po1: hash params - l4_da 1 l4_sa 1 xor_sa_da 1 hash_elect 1
    I could not find an option to change these values.
    Padma

  • Load balancing algorithms

    hello
    can any one give URL about load balancing algorithms in 11500 series?
    sincerally

    Hi,
    Here is a link.
    http://www.cisco.com/univercd/cc/td/doc/product/webscale/css/css_730/contlbgd/contrule.htm#1038118
    Hope this helps,
    Regards,
    Sagar

  • ACE load-balancing-Cookie problem

    In our other load-balancing environments the load-balancer-cookie contains the encrypted (real) servername or ip-address.
    We think it's the same on the cisco, for that reason it's in theory not possible, that there are two 'green'-cookies with different values in the same request.
    There are only two possibilities how this could happen:
    a) The healthmonitor (http_probe) fails, the loadbalancer 'thinks' that the realserver is down and redistributes the traffic.
    But in that case we would expect, that the old cookie will be overwritten by the new one and not simply added to the http-header.
    b) The predictor in the serverfarm chooses a new realserver within the same request.
    If that is really the cause of that problem this would be bug in the cisco ace.
    What we found out, is that the loadbalancer performs a 'Set-Cookie'-Operation an every request even if the client submits the cookie correctly.
    For example:
    GET /ips-opdata/scripts/jquery.js HTTP/1.1
    Host: www.xxxxx.com
    User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.15) Gecko/20110303 Ubuntu/10.04 (lucid) Firefox/3.6.15
    Accept: */*
    Accept-Language: en-us,en;q=0.5
    Accept-Encoding: gzip,deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 115
    Connection: keep-alive
    Referer: http://www.xxxxx.com/
    Cookie: green=R339366665; JSESSIONID=28D91FC6FD62A3921354BB36826294C4
    HTTP/1.1 200 OK
    Set-Cookie: green=R339366665; path=/; expires=Tue, 29-Mar-2011 06:33:00 GMT
    Server: Apache-Coyote/1.1
    X-Powered-By: Servlet 2.4; JBoss-4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA date=200710221139)/Tomcat-5.5
    ETag: W/"72181-1298537508000"
    Last-Modified: Thu, 24 Feb 2011 08:51:48 GMT
    Content-Type: text/javascript
    Content-Length: 72181
    Date: Mon, 28 Mar 2011 06:15:19 GMT
    As you can see the cookies: green=R339366665 is transmitted from the client, but the loadbalancer does a Set-Cookie Operation of the same cookie once again. This is an unexpected behaviour.
    We hope that this helps you to figure out the reason of the problem.

    The cookie is sent by the ACE on each response to refresh the timeout value on the client. The value of the cookie doesn't change. This is the expected behaviour and shouldn't break anything in the application / browser.
    For browser-based applications, don't forget to add the "browser-expire" parameter to your cookie-based stickyness config.

  • Load balancing for JSPs and servlets

    Hi:
              I am using IIS as the proxy server, with the WLS plug-in, to a WLS
              cluster. This provides round robin load balancing just fine. Will it
              provide weight based load balancing if I set 'weblogic.system.weight'
              differently on each server, or is that not relevant for clustering JSPs
              and servlets?
              Sincerely,
              Ashish
              

    Currently the plugins ( for NES, IIS and Apache) just use the round robin
              algorithm. the property
              weblogic.system.weight is used only be weblogic's replica aware clusterable
              RMI/EJB stubs.
              To use this property for your JSP/Servlet load balancing you have to use
              weblogic server as proxy fron-ending your weblogic cluster.
              --Viresh Garg
              Ashish Vimal wrote:
              > Hi:
              > I am using IIS as the proxy server, with the WLS plug-in, to a WLS
              > cluster. This provides round robin load balancing just fine. Will it
              > provide weight based load balancing if I set 'weblogic.system.weight'
              > differently on each server, or is that not relevant for clustering JSPs
              > and servlets?
              > Sincerely,
              > Ashish
              

  • Load Balancing Directory Servers with Access Manager - Simple questions

    Hi.
    We are in the process of configuring 2 Access Manager instances (servers) accessing the same logical LDAP repository (comprising physically of two Directory Servers working together with Multi-Master Replication configured and tested) For doing this, we are following guide number 819-6258.
    The guide uses BigIP load balancer for load balancing the directory servers. However, we intend to use Directory Proxy Server. Since we faced some (unresolved) issues last time that we used DPS, there are some simple questions that I would be very grateful to have answers to:
    1. The guide, in section 3.2.10 (To configure Access Manager 1 with the Directory Server load balancer), talks about making changes at 4 places, and replacing the existing entry (hostname and port) with the load balancer's hostname and port (assuming that the load balancer has already been configured). It says that changes need not be made on Access Manager 2 since the LDAPs are in replication, and hence changes will be replicated at all places. However, the guide also states that changes have to be made in two files, namely AMConfig.properties, and the serverconfig.xml file. But these changes will not be reflected on Access Manager 2, since these files are local on each machine.
    Question 1. Do changes have to be made in AMConfig.properties and serverconfig.xml files on the other machine hosting Access Manager 2?
    Question 2: What is the purpose of putting these values here? Specifically, what is achieved by specifying the Directory server host and port in AMConfig.properties, as well as in serverconfig.xml?
    Question 3. In the HTTP console, there is the option of specifying multiple primary LDAP servers, as well as multiple secondary LDAP servers. What is the purpose of these? Are secondary servers attempted when none of the list in the primary list are accessible? Also, if there are multiple entries in the primary server list, are they accessed in a round robin fashion (hereby providing rudimentary load balancing), or are other servers accessed only when the one mentioned first is not reachable etc.?
    2. Since I do not have a load balancer setup yet, I tried the following deviation to the above, which, according to me, should have worked. If viewed in the HTTP console, LDAP / Membership / MSISDN and Policy configuration all pointed to the DS on host 1. When I changed all these to point to the directory server on host 2 (and made AMConfig.properties and serverconfig.xml on host 1 point to DS of host 2 as well), things should have worked fine, but apparently Access manager 1 could not be started. Error from Webserver:
    [14/Aug/2006:04:30:36] info (13937): WEB0100: Loading web module in virtual server [https-machine_1_FQDN] at [search]
    [14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: Exception in thread "EventService" java.lang.ExceptionInInitializerError
    [14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: at com.iplanet.services.ldap.event.EventServicePolling.run(EventServicePolling.java:132)
    [14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: at java.lang.Thread.run(Thread.java:595)
    [14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: Caused by: java.lang.InterruptedException
    [14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: at com.sun.identity.sm.ServiceManager.<clinit>(ServiceManager.java:74)
    [14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: ... 2 more
    In effect, AM on 1 did not start. On rolling back the changes, things again worked like previously.
    Will be really grateful for any help / insight / experience on dealing with the above.
    Thanks!

    Update to the above, incase anyone is reading:
    We setup a similar setup in Windows, and it worked. Here is a detailed account of what was done:
    1. Host 1: Start installer, install automatically, chose Directory server, Directory Administration server, Directory Proxy server, Web server, Access Manager.
    All installed, and worked fine. (AMConfig.properties, serverconfig.xml, and the info in LDAP service, all pointed to HOST1:389)
    2. Host 2: Start installer, install automatically, chose Directory server, Directory Administration server, Directory Proxy server, Web server, Access Manager.
    All installed, and worked fine. (AMConfig.properties, serverconfig.xml, and the info in LDAP service, all pointed to HOST2:389)
    3. Host 1: Started replication. Set to Master
    4. Host 2: Started replication. Set to Master
    5. Host 1: Setup replication agreement to Host 2
    6. Host 2: Setup replication agreement to Host 1
    7. Initiated the remote replica from Host 1 ----> Host 2
    Note that since default installation uses abc.....xyz as the encryption key, setting this to same was not an issue.
    9. Started webserver for Host 1 and logged into AM as amadmin.
    10. Added Host 2 FQDN in DNS Aliases / Realms
    11. Added http://HOST2_FQDN:80 in the Platform server (instance) list.
    12. Started Host 2 webserver. Logged in AM on Host 2, things worked fine.
    At this stage, note the following:
    a) Host 1:
    AMConfig.properties file has
    com.iplanet.am.directory.host=host1_FQDN
    and
    com.iplanet.am.directory.port=389
    serverconfig.xml has:
    <Server name="Server1" host="host1_FQDN" port="389" type="SIMPLE" />
    b) Host 2:
    AMConfig.properties file has
    com.iplanet.am.directory.host=host2_FQDN
    and
    com.iplanet.am.directory.port=389
    serverconfig.xml has:
    <Server name="Server1" host="host2_FQDN" port="389" type="SIMPLE" />
    c) If one logs into AM, and checks LDAP servers for LDAP / Policy Configuration / Membership etc services, they all contain Host2_FQDN:389 (which makes sense, since replica 2 was initialized from 1)
    Returning back to the configuations:
    13. On Host 1, login into the Admin server console of the Directory server. Navigate to the DPS, and confgure the following:
    a) Network Group
    b) LDAP servers
    c) Load Balancing
    d) Change Group
    e) Action on-bind
    f) Allow all actions (permit modification / deletion etc.).
    g) any other configuations required - Am willing to give detailed steps if someone needs them to help me / themselves! :)
    So now, we have DPS configured and running on Host1:489, and distributing load to DS1 and DS2 on a 50:50 basis.
    14. Now, log into AM on Host 1, and instead of Host1_fqdn:389 (for DS) in the following places, specify Host1_fqdn:489 (for the DPS)--
    LDAP Authentication
    MSISDN server
    Membership Service
    Policy configuation.
    Verified that this propagated to the Policy Configuration service and the LDAP authentication service that are already registered with the default organization.
    15. Log out of AM. Following the documentation, modify directory.host and directory.port in AMConfig.properties to point to Host 1_FQDN and 489 respectively. Make this change in AMConfig.properties of both Host 1 as well as 2.
    16. Edit serverconfig.xml on both hosts, and instead of they pointing to their local directory servers, point both to host1_FQDN:489
    17. When you start the webserver, it will refuse to start. Will spew errors such as:
    [https-host1_FQDN]: Sun ONE Web Server 6.1SP5 B06/23/2005 17:36
    [https-host1_FQDN]: info: CORE3016: daemon is running as super-user
    [https-host1_FQDN]: info: CORE5076: Using [Java HotSpot(TM) Server VM, Version 1.5.0_04] from [Sun Microsystems Inc.]
    [https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [amserver]
    [https-host1_FQDN]: warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
    [https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [ampassword]
    [https-host1_FQDN]: warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
    [https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [amcommon]
    [https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [amconsole]
    [https-host1_FQDN]: warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
    [https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [search]
    [https-host1_FQDN]: warning: CORE3283: stderr: netscape.ldap.LDAPException: error result (32); matchedDN = dc=sun,dc=com; No such object (DN changed)
    [https-host1_FQDN]: warning: CORE3283: stderr: Got LDAPServiceException code=-1
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getConnection(DSConfigMgr.java:357)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewFailoverConnection(DSConfigMgr.java:314)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewConnection(DSConfigMgr.java:253)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewProxyConnection(DSConfigMgr.java:184)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewProxyConnection(DSConfigMgr.java:194)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.initLdapPool(DataLayer.java:1248)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.(DataLayer.java:190)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.getInstance(DataLayer.java:215)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.getInstance(DataLayer.java:246)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.ldap.SMSLdapObject.initialize(SMSLdapObject.java:156)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.ldap.SMSLdapObject.(SMSLdapObject.java:124)
    [https-host1_FQDN]: warning: CORE3283: stderr: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    [https-host1_FQDN]: warning: CORE3283: stderr: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    [https-host1_FQDN]: warning: CORE3283: stderr: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    [https-host1_FQDN]: warning: CORE3283: stderr: at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
    [https-host1_FQDN]: warning: CORE3283: stderr: at java.lang.Class.newInstance0(Class.java:350)
    [https-host1_FQDN]: warning: CORE3283: stderr: at java.lang.Class.newInstance(Class.java:303)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.SMSEntry.(SMSEntry.java:216)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.ServiceSchemaManager.(ServiceSchemaManager.java:67)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.am.util.AMClientDetector.getServiceSchemaManager(AMClientDetector.java:219)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.am.util.AMClientDetector.(AMClientDetector.java:94)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.mobile.filter.AMLController.init(AMLController.java:85)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:322)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:120)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3271)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardContext.start(StandardContext.java:3747)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
    [https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
    [https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
    [https-host1_FQDN]: failure: WebModule[amserver]: WEB2783: Servlet /amserver threw load() exception
    [https-host1_FQDN]: javax.servlet.ServletException: WEB2778: Servlet.init() for servlet LoginLogoutMapping threw exception
    [https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:949)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:813)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3478)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardContext.start(StandardContext.java:3760)
    [https-host1_FQDN]: at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
    [https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
    [https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
    [https-host1_FQDN]: at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
    [https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
    [https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
    [https-host1_FQDN]: at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
    [https-host1_FQDN]: ----- Root Cause -----
    [https-host1_FQDN]: java.lang.NullPointerException
    [https-host1_FQDN]: at com.sun.identity.authentication.UI.LoginLogoutMapping.init(LoginLogoutMapping.java:71)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:921)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:813)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3478)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardContext.start(StandardContext.java:3760)
    [https-host1_FQDN]: at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
    [https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
    [https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    [https-host1_FQDN]: at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
    [https-host1_FQDN]: at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
    [https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
    [https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
    [https-host1_FQDN]: at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
    [https-host1_FQDN]:
    [https-host1_FQDN]: info: HTTP3072: [LS ls1] http://host1_FQDN:58080 [i]ready to accept requests
    [https-host1_FQDN]: startup: server started successfully
    Success!
    The server https-host1_FQDN has started up.
    The server infact, didn't start up (nothing even listening on 58080).
    However, if AMConfig.properties is left as it originally was, and only serverconfig.xml files were changed as mentioned above, web servers started fine, and things worked all okay. (Alright, except for some glitches when viewed in /amconsole. If /amserver/console is accessed, all is good. Can this mean that all is still not well? I am not sure).
    So far so good. Now comes the sad part. When the same is done on Solaris 9, things dont work. You continue to get the above error, OR the following error, and the web server will refuse to start:
    Differences in Solaris and Windows are as follows:
    1. Windows hosts have 1 IP and hostname. Solaris hosts have 3 IPs and hostnames (for DS, DPS, and webserver).
    No other difference from an architectural perspective.
    Any help / insight on why the above is not working (and why the hell does the documentation seem so sketchy / insecure / incorrect).
    Thanks a bunch!

  • Load Balancing Forms Services with an effective healthcheck

    I am in the process of configuring two forms 11.1.2 servers running with weblogic 10.3.5 with multiple forms applications clustered across both physical servers. We are looking to load balance to the various forms applications using a hardware load balancer. Can anyone comment on their experience with setting up effective application healthchecks using either hardware or software load balancers?
    For example say that we have 3 applications clustered across 2 servers with the following
    URLs:
    http://server01:7777/forms/frmservlet?config=myapp1
    http://server01:7777/forms/frmservlet?config=myapp2
    http://server01:7777/forms/frmservlet?config=myapp3
    http://server02:7777/forms/frmservlet?config=myapp1
    http://server02:7777/forms/frmservlet?config=myapp2
    http://server02:7777/forms/frmservlet?config=myapp3
    We would need a checking mechanism on the load balancer that could tell if myapp2 was down on say server01 and therefore block traffic to that application yet keep traffic open for the other 2 apps on the same server.
    A specific difficulty with forms is that when the database behind the application is down forms services will return an error message within a displayed error form. From the load balancer's point of view the forms services are "up". We need to find a way of detecting that the application is actually available and not just that the forms services themselves are available. To detect that the forms services are available we might normally use the status check:
    http://server01:7777/forms/frmservlet?ifcmd=status
    however this will only tell use the availability of the forms services on a physical server and not whether any actual applications are available.
    I am aware that f5 do a BIGIP offering that includes some Oracle Forms specific components. Can anyone comment on how they have setup Oracle Forms healthchecks using various load balancing methods. In particular if a load balancer is limited to using WGET commands to check HTTP returned content is there a way of checking a forms application's availability and if not how have other people achieved an effective healthcheck?
    Many thanks,
    Philippe

    Did you ever Get this to work?
    I am having some problems trying to load balance with Oracle Forms, Discover and reports Oracle Application Server Release 10g (9.0.4.0.2) and I was wondering if you could help. Has any one ever got this to work consistently? We are an ERP product written mostly in forms (904) and are trying to implement are largest customer there performance issue so we need the load balancing to work. Will also accept other recommendation as cost effective as solutions.
    Site 1:
    A: SERVER –
    •     Host as1.xyzco.local
    •     Version 10.1.2.0.2
    •     Installation Type Identity Management and Metadata Repository
    •     Oracle Home E:\oracle\inf_1012
    •     Farm as1db.xyzco.net
    o     HTTP_Server
    o     Internet Directory
    o     OC4J_SECURITY
    o     Single Sign-On:orasso
    o     Management
    B SERVER –
    •     Host as2. xyzco.local
    •     Version 9.0.4.0.2
    •     Installation Type Business Intelligence and Forms
    •     Oracle Home E:\oracle\mid_904
    •     Farm as2db. xyzco.net
    o     Discoverer
    o     Forms
    o     home
    o     HTTP_Server
    o     OC4J_BI_Forms
    o     Reports Server
    o     Web Cache
    o     Management
    C SERVER –
    •     Host as3. xyzco.local
    •     Version 9.0.4.0.2
    •     Installation Type Business Intelligence and Forms – Discoverer and Reports
    •     Oracle Home E:\oracle\mid_904
    •     Farm as2db. xyzco.net
    o      Discoverer
    o     Forms
    o     home
    o     HTTP_Server
    o     OC4J_BI_Forms
    o     Reports Server
    o     Web Cache
    o     Management
    All servers Are:
    •     Windows 2003 Standard Server with current service packs
    •     Xeon Dual Processor with 4GB ram
    •     Raid 0 drives 2 for OS and 2 for Oracle
    Daniel Brody
    [email protected]

  • FRM-92101: Load Balancing Forms 10g with Web Cache

    Hi,
    I´m having some problems with Oracle Forms and Webcache 10g and I was wondering if you
    could help.
    Machines: (Pentium IV 2.6 GHz; 2GB RAM; 80GB HD)
    A. Red Hat Linux AS 2.1
    Oracle AS 10g - Infrastructure Installation
    B. Windows 2000 Server - Service Pack 4
    Oracle AS 10g - BI and Forms Installation (Using Infrastructure on machine A)
    C. Windows 2000 Server - Service Pack 4
    Oracle AS 10g - BI and Forms Installation (Using Infrastructure on machine A)
    I didn´t apply any Patchsets of Oracle AS 10g. My current version is 9.0.4.0 .
    Goal:
    Use Oracle Webcache 10g on machine B for Load Balancing an Oracle Forms Application
    on machines B and C.
    Facts:
    The Oracle AS 10g installation on the 3 machines was made without problems.
    The Forms Applications are running without problems on both Forms servers in machine B and C.
    Symptoms:
    I´m getting the following error when I try to acces the forms application through Webcache:
    FRM-92101: There was a failure in the forms server during startup.
    This could happen due to invalid configuration.
    Please look in the web-server log file for details.
    But, this error happens ONLY when BOTH OC4J_BI_Forms instances (machines B and C) are
    running.
    When just one of the OC4J_BI_Forms is running everything works fine.
    Webcache Configuration:
    I´ve followed Metalink note 207668.1: Configuring Web Cache as a Load Balancer for Application Servers
    step by step to make the configuration of the following components:
    1. Configuration of the origin servers
    2. Configuration of Site definitions
    3. Configuration of Site to server mapping
    After that, I´ve follwed the Metalink note 229900.1: Integrating and using Web Cache with Forms 9i for Load Balancing
    step by step to make the configuration of the following components:
    4. Session Binding
    Then I try to test the Load Balancing and I got the error FRM-92101 when both OC4J_BI_Forms
    instance were running.
    I´ve searched Metalink and found note 268830.1: Webcache Won't Load Balance 2 Forms Instances.
    Following the note instructions I did the following changes:
    Added these lines at the end of HTTPD.conf (machine B):
    CookieTracking On
    CookieName myformscookie1
    Added these lines at the end of HTTPD.conf (machine C):
    CookieTracking On
    CookieName myformscookie2
    In Webcache configuration:
    I´ve Changed the default session binding from JSESSIONID to "ANY SET COOKIE" for the
    site's session binding.
    But even after these changes I´m getting FRM-92101 error on the same conditions.
    How can I solve this problem ?
    Thank you in advance.
    Marcus Santos.
    ([email protected])

    Just ran into this problem last Tuesday, Nov.30 and applied the changes today.
    My configuration is similar to yours: 9.0.4 web cache on machine A, 9.0.4 10gAS forms and reports standalone on machine B and C (not a cluster, no infra).
    I appended the Cookie lines you mentioned in httpd.conf located in $ORACLE_HOME/Apache/Apache/conf in both machines B and C.
    One important thing you may have missed. After changing httpd.conf in each 9iAS instance, you need to make the change known to dcmctl so issue:
    dcmctl updateConfig -ct ohs
    Then do the following for each 9iAS instance and it should be ready for webcache:
    dcmctl stop
    dcmctl start
    Setup Any-set-Cookie in webcache instead of JSESSIONID and the whole thing should now work. You can run a form through machine A which will load balance to either machine B or C (which can both be up). Then, try shutting down 9iAS on machine B or C and run a form again. They now all work.
    HTH,
    Raffy

Maybe you are looking for

  • Why do I get a status of 'waiting' when I run a report in the background

    Happy new Year Experts!! I am working with Ad-hoc query and I run reports in the background.  When I go to System > Own Spool Requests the status is always waiting.  When I go to SM37 the status is complete.  I can open the report from my own spools

  • HTML to PDF converstion

    Hi, I dont know whether this is the right place to ask my question , So Please direct me . In our application we need to convert HTML string to as a PDF document. Our client suggested try in Adobe Acrobat SDK , so i have started exploring in SDK but

  • Running application behind the proxy

    Hi, I have developed one test SAPUI5 application and using Northwind OData service. Application is working fine but when I try to run in my office network which is behind the proxy, application is giving "407,Proxy Authentication Required". Following

  • Creative Cloud Trial

    Hi I have joined the Creative Cloud on the 30day trial and have installed some apps on my main computer which seem to work fine. I am now trying it out on my laptop. I have downloaded the application manager and installed photoshop and indesign. Now

  • Adding switch into an existing stack

                       Hi all,     I have an existing stack which comprises of 6 switches, please help with the following questions : 1/ adding another switch into this stack will cause all switches in stack to reboot ? anything that I should be aware of