• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Monitor thinks instances are dead
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Monitor thinks instances are dead


  • Subject: Re: Monitor thinks instances are dead
  • From: wojingo <email@hidden>
  • Date: Thu, 16 Feb 2006 10:44:05 +1030

Hi,

I would start out trying to access the app without using monitor and not using direct connect.

Given that you can access you app using direct connect but not via developer mode ie) app.woa/-portnumber, I think the problem is the way your web server is configured or how your app wohost is set.

Try specifying -WOHost when you start the application as well as -WODirectConnectEnabled NO.

eg) -WOHost my-quad.local or -WOHost localhost

What is the hostname set to in the httpd.conf does it match one of those above?

HTH.
regards,
- shaun


Jeffrey Schmitz wrote:
Hello,
   I thought I would move the below thread over from deployment since this seems to be a much more active list, and also I am getting desparate here.  I hope that's ok.  I think the basic problem I'm having is Monitor thinks the instances it is starting are dying, even though they aren't.  This causes them to only be accessible via direct connect (i.e. by specifying the port number in the URL) since wotaskd assigns them a negative instance ID as can be seen in my host config below.  So the thing I need to figure out is, why does Monitor think my instances are dead when they are not.  btw, I do have web services (i.e. apache) on and I'm running 10.4.x server.  The rest of the thread is below...

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), 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.  I have tried giving my app a very long startup time (3 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.

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

My startup options:

-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

My Site Config:

<SiteConfig type="NSDictionary">
<hostArray type="NSArray">
<element type="NSDictionary">
<type type="NSString">MACOSX</type>
<name type="NSString">localhost</name>
</element>
</hostArray>
<applicationArray type="NSArray">
<element type="NSDictionary">
<adaptorThreadsMax type="NSNumber">256</adaptorThreadsMax>
<startingPort type="NSNumber">2001</startingPort>
<cachingEnabled type="NSString">YES</cachingEnabled>
<additionalArgs type="NSString">-Xms512m -Xmx1024m -WOStatisticsPassword xxxxyyyy -WODirectConnectEnabled false</additionalArgs>
<adaptor type="NSString">WODefaultAdaptor</adaptor>
<projectSearchPath type="NSString">()</projectSearchPath>
<autoOpenInBrowser type="NSString">NO</autoOpenInBrowser>
<listenQueueSize type="NSNumber">128</listenQueueSize>
<timeForStartup type="NSNumber">120</timeForStartup>
<lifebeatInterval type="NSNumber">30</lifebeatInterval>
<adaptorThreadsMin type="NSNumber">16</adaptorThreadsMin>
<notificationEmailEnabled type="NSString">NO</notificationEmailEnabled>
<debuggingEnabled type="NSString">NO</debuggingEnabled>
<phasedStartup type="NSString">YES</phasedStartup>
<autoRecover type="NSString">YES</autoRecover>
<adaptorThreads type="NSNumber">8</adaptorThreads>
<name type="NSString">MyApp</name>
<macPath type="NSString">/Library/WebObjects/Applications/MyApp.woa/MyApp</macPath>
<minimumActiveSessionsCount type="NSNumber">0</minimumActiveSessionsCount>
<sessionTimeOut type="NSNumber">3600</sessionTimeOut>
</element>
</applicationArray>
<instanceArray type="NSArray">
<element type="NSDictionary">
<port type="NSNumber">2001</port>
<cachingEnabled type="NSString">YES</cachingEnabled>
<schedulingStartDay type="NSNumber">1</schedulingStartDay>
<additionalArgs type="NSString">-Xms512m -Xmx1024m -WOStatisticsPassword=xxxxyyyy -WODirectConnectEnabled false</additionalArgs>
<path type="NSString">/Library/WebObjects/Applications/MyApp.woa/MyApp</path>
<schedulingHourlyStartTime type="NSNumber">3</schedulingHourlyStartTime>
<autoOpenInBrowser type="NSString">NO</autoOpenInBrowser>
<schedulingEnabled type="NSString">NO</schedulingEnabled>
<schedulingType type="NSString">DAILY</schedulingType>
<debuggingEnabled type="NSString">NO</debuggingEnabled>
<schedulingInterval type="NSNumber">12</schedulingInterval>
<autoRecover type="NSString">YES</autoRecover>
<lifebeatInterval type="NSNumber">30</lifebeatInterval>
<applicationName type="NSString">MyApp</applicationName>
<gracefulScheduling type="NSString">YES</gracefulScheduling>
<schedulingWeeklyStartTime type="NSNumber">3</schedulingWeeklyStartTime>
<id type="NSNumber">1</id>
<hostName type="NSString">localhost</hostName>
<minimumActiveSessionsCount type="NSNumber">0</minimumActiveSessionsCount>
<schedulingDailyStartTime type="NSNumber">3</schedulingDailyStartTime>
</element>
<element type="NSDictionary">
<port type="NSNumber">2002</port>
<cachingEnabled type="NSString">YES</cachingEnabled>
<schedulingStartDay type="NSNumber">1</schedulingStartDay>
<additionalArgs type="NSString">-Xms512m -Xmx1024m -WOStatisticsPassword xxxxyyyy -WODirectConnectEnabled false</additionalArgs>
<path type="NSString">/Library/WebObjects/Applications/MyApp.woa/MyApp</path>
<schedulingHourlyStartTime type="NSNumber">3</schedulingHourlyStartTime>
<autoOpenInBrowser type="NSString">NO</autoOpenInBrowser>
<schedulingEnabled type="NSString">NO</schedulingEnabled>
<schedulingType type="NSString">DAILY</schedulingType>
<debuggingEnabled type="NSString">NO</debuggingEnabled>
<schedulingInterval type="NSNumber">12</schedulingInterval>
<autoRecover type="NSString">YES</autoRecover>
<lifebeatInterval type="NSNumber">30</lifebeatInterval>
<applicationName type="NSString">MyApp</applicationName>
<gracefulScheduling type="NSString">YES</gracefulScheduling>
<schedulingWeeklyStartTime type="NSNumber">3</schedulingWeeklyStartTime>
<id type="NSNumber">2</id>
<hostName type="NSString">localhost</hostName>
<minimumActiveSessionsCount type="NSNumber">0</minimumActiveSessionsCount>
<schedulingDailyStartTime type="NSNumber">3</schedulingDailyStartTime>
</element>
</instanceArray>
<site type="NSDictionary">
<viewRefreshEnabled type="NSString">YES</viewRefreshEnabled>
<password type="NSString">E6CD15482C2B643DE962D3B4466D79B1A2DF</password>
<woAdaptor type="NSString">http://68.188.35.122/cgi-bin/WebObjects</woAdaptor>
<viewRefreshRate type="NSNumber">60</viewRefreshRate>
</site>
</SiteConfig>


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>

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

<?xml version="1.0" encoding="ASCII"?>
<adaptor>
</adaptor>

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>

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


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




_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden

_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >Monitor thinks instances are dead (From: Jeffrey Schmitz <email@hidden>)

  • Prev by Date: Re: Most efficient character parsing.
  • Next by Date: Re: Postgresql + booleans = error
  • Previous by thread: Monitor thinks instances are dead
  • Next by thread: Listen Queue Size Setting & Concurrent Request Handling
  • Index(es):
    • Date
    • Thread