Hi Jeff,

On Feb 15, 2006, at 1:55 AM, Jeffrey Schmitz wrote:

I tried adding WODirectConnectEnabled false as an added application parameter on start (although I was never setting it to true in the first place, and I thought false was the default),

It has defaulted to true for a few versions now.


and still the only way to connect to my application instances is by specifying the port number. Also, although Monitor actually does start my app and it is running, it reports the app as dying.

That is probably a symptom of the same problem.

I have tried giving my app a very long startup time (2 minutes) with the same results. And looking at the Host config via monitor shows that the instances that have been started using monitor are being given a negative host ID.

Ditto.

also, I can start my app from the command line using the same parameters Monitor says it uses and it starts fine, but even for that app I can only connect by specifying the port number in the URL.

I've pasted below my info copied from what Monitor is reporting as the startup options and the Host config.

Any help would be GREATLY appreciated because I really can't think of anything else to try other than trying to get it to run on Tomcat.

Thanks,
Jeff


-WOPort 2002 -WOCachingEnabled YES -WODebuggingEnabled NO - WOOutputPath /dev/null -WOAutoOpenInBrowser NO - WOAutoOpenClientApplication NO -WOLifebeatInterval 30 - WOLifebeatEnabled YES -WOLifebeatDestinationPort 1085 -WOAdaptor WODefaultAdaptor -WOWorkerThreadCount 8 -WOListenQueueSize 128 - WOWorkerThreadCountMin 16 -WOWorkerThreadCountMax 256 - NSProjectSearchPath () -WOSessionTimeOut 3600 -WOApplicationName MyApp -WOMonitorEnabled YES -WONoPause YES -Xms512m -Xmx1024m - WOStatisticsPassword xxxxyyyy -WODirectConnectEnabled false

Try adding -WOHost localhost


<SiteConfig type="NSDictionary">
        <hostArray type="NSArray">
                <element type="NSDictionary">
                        <type type="NSString">MACOSX</type>
                        <name type="NSString">localhost</name>

I noticed that the host name here does not match the one used below. That may be part of the problem.


Adaptor Config as sent to Local WOAdaptors - All Running Applications and Instances


<?xml version="1.0" encoding="ASCII"?>
<adaptor>
  <application name="JavaMonitor">
    <instance id="-8086" port="8086" host="My-Quad.local"/>
  </application>
  <application name="MyApp">
    <instance id="-2002" port="2002" host="My-Quad.local"/>
    <instance id="-2001" port="2001" host="My-Quad.local"/>
  </application>
</adaptor>

Notice that this is My-Quad.local and not localhost. Adding the WOHost param above should fix that. I've had a lot of trouble setting up localhost machines with WO. I suspect that this Rendezvous address(?) may be part of the issue. Setting up a machine with a real domain name is much, much smoother.


Adaptor Config as sent to remote WOAdaptors - All Registered and Running Applications and Instances
<?xml version="1.0" encoding="ASCII"?>
<adaptor>
</adaptor>

That might not be too surprising as remote machines would not be able to resolve localhost correctly.


Adaptor Config as written to disk - All Registered Applications and Instances


<?xml version="1.0" encoding="ASCII"?>
<adaptor>
  <application name="MyApp">
    <instance id="1" port="2001" host="localhost"/>
    <instance id="2" port="2002" host="localhost"/>
  </application>
</adaptor>

Interesting. The host matches here and the instance numbers are correct.

Properties of this wotaskd


The Configuration Directory is: /Library/WebObjects/Configuration/
Wotaskd is NOT writing WOConfig.xml to disk
The multicast address is: 239.128.14.2
This wotaskd is running on Port: 1085
Wotaskd is NOT responding to Multicast
WOAssumeApplicationIsDeadMultiplier is 4
The System Properties are: {java.vendor=Apple Computer, Inc., WOWorkerThreadCountMax=256, sun.management.compiler=HotSpot Client Compiler,
...
Nothing there jumps out as being wrong.

Chuck



On Feb 14, 2006, at 12:59 PM, Chuck Hill wrote:


On Feb 13, 2006, at 9:28 PM, Jeffrey Schmitz wrote:

This is a very simple question that I can't seem to find the answer to in the Deployment documentation. When I deploy an app with multiple instances, what URL am I supposed to use such that connections amont the instances are load-balanced? The only URL I can figure out how to use are the direct connect ones to a specific instances, but using one of those as my URL isn't going to allow load balancing, right?


Correct. First, turn off Direct Connect in deployment unless you have some (odd) reason for having it on. The URL should not have any instance number in it:
http://www.domain.com/cgi-bin/WebObjects/MyApp.woa

The woadaptor will talk to wotaskd and choose an appropriate instance based on how it is doing load balancing. I think you can also use -1 to tell it to do this:
http://www.domain.com/cgi-bin/WebObjects/MyApp.woa/-1

Chuck

--
Coming in 2006 - an introduction to web applications using WebObjects and Xcode http://www.global-village.net/wointro

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/ practical_webobjects






--
Coming in 2006 - an introduction to web applications using WebObjects and Xcode http://www.global-village.net/wointro

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/practical_webobjects




_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-deploy mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-deploy/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to