Thanks for the reply, Robert. A couple of quick questions.

I rarely see the thread count go above 2 except for when the cascade and
thread lock starts. I even went and looked at the largest log files for the
past month and saw no thread count go above 3 in any of them and I would
think that those would represent the highest loads. What would be the
advantage to reducing the thread count?

As for adjusting querytimeout, I am not sure what that would do. We rebuild
or reorganize all the indexes in the db on a weekly basis. We have tested
many scenarios and have never seen a slower response time then a few seconds
for very large resultsets being returned.

This is a single logical cpu.

I am beginning to believe that there is probably a badly written peice of
code somewhere that is triggering the event. You probably remember about a
year ago when I was having the same problem. I redid a bunch of logic and
rewrote a bunch of code and the problem went away for almost a year. I
suspect that I am going to have to go through everything again to nail it
down. I have even searched various userreference args in the log files,
logged in as those users and surfed exactly as they had surfed and still
have not been able to recreate the lock myself. The problem I have is trying
to figure out the timing... in other words, how long before the event is the
taf file that is at fault. It can drive you crazy!








  _____

From: Robert Shubert [mailto:[email protected]]
Sent: Wednesday, October 24, 2012 4:37 PM
To: [email protected]
Subject: RE: TeraScript-Talk: config file



I have no significant comments on your configuration settings.



Things I might try is lowering the querytimeout and adjusting the
threadpoolsize (up or down to see what happens)



You can make sure your cachesize is large enough by checking for "flushing"
events in the eventslog. I suspect 50mb is fine.



Turning off logging will reduce query overhead, but only slightly.



Tango2000 is cooperatively multithreaded. This means that as more queries
come into the server, more CPU time is wasted processing them. This means
that your server will fail in a more-or-less exponential way. In other
words, if it takes double the time to process 10 requests over 1, the
processing time doubles again at 15 requests - not 20. This curve makes it
difficult to understand exactly how Tango2000 is going to behave under load,
where 7 threads might be fine, but 8 might be too much.



Tango2000 can also only address a single processor - if you have an advanced
license, you should deploy one service per logical CPU.



The only other thing you can try is to reduce the overhead of each request -
which what you were getting at with eliminating unnecessary columns, etc.
You can also include in this task to optimize your SQL server - the faster
it can return requests, the better.



Lastly, to hunt down potential problem TAFs - write your own log. Write out
at the start and then again at the end of each request. You can do this into
your db if you wish. The start data should contain the request particulars
(search args, etc). What will happen is that when your server dies you'll
have some start entries without end entries - now you'll be able to know
exactly what your server was doing when it went down, and hopefully you'll
be able to isolate a long running TAF or request or query.



Robert



From: WebDude [mailto:[email protected]]
Sent: Wednesday, October 24, 2012 11:27 AM
To: [email protected]
Subject: RE: TeraScript-Talk: config file



Anyone on the config file?



John Muldoon

Corporate Incentives

3416 Nicollet Ave S

Minneapolis, MN 55408-4552

612.822.2222

[email protected]



 <http://cipromo.com/> http://cipromo.com







  _____

From: WebDude [mailto:[email protected]]
Sent: Wednesday, October 24, 2012 6:51 AM
To: [email protected]
Subject: RE: TeraScript-Talk: config file

No external actions and no @urls.



Does the config file look okay to you?



On a side note, I am going through every application and purging variables
when not needed, getting rid of unneeded columns in searches, tightening up
the code, etc. I do have some very basic questions, though. There are quite
a few arrays being built and purged, mostly due to the client wanting to
update multiple rows of data with a single click. Some of these arrays are
being updated in a loop action rather then using <@ROWS>. Is there a
performance hit or difference for using one versus the other?



I think I know the answer to this one, but is there any advantage to running
a different application pool on a subdirectory that is being used for
administration for the client? I do run separate application pools on our
other servers per website, but this server currently has one site that is
divied up between public and admin.



Thanks!





  _____

From: Robert Shubert [mailto:[email protected]]
Sent: Tuesday, October 23, 2012 3:50 PM
To: [email protected]
Subject: RE: TeraScript-Talk: config file

In my experience, this is caused by simultaneous calls to either the
External Action or to @URL. Look through your TAFs and remove these types of
calls.



Robert



From: WebDude [mailto:[email protected]]
Sent: Tuesday, October 23, 2012 2:05 PM
To: [email protected]
Subject: RE: TeraScript-Talk: config file



yes









  _____

From: Robert Shubert [mailto:[email protected]]
Sent: Tuesday, October 23, 2012 12:53 PM
To: [email protected]
Subject: RE: TeraScript-Talk: config file

By 'thread locks' do you mean a state where the server reports some number
of threads in use and the number slowly increases until the server stops
responding because it's out of threads?



Robert



From: WebDude [mailto:[email protected]]
Sent: Tuesday, October 23, 2012 1:30 PM
To: [email protected]
Subject: TeraScript-Talk: config file



Hi Folks,



I have several versions of Tera and the old Witango running on several
boxes. The one box I am concenred about, unfortunately, is running an old
version of Witango (2000 but fully patched with the lastest). I am wondering
if one of you kind souls who have been around for a while could take a look
at the config file to see if I am missing something. We are starting to get
thread lock when the server gets busy. I have been pulling my hair out and
trying to make it break myself but cannot find anything. I am most
concwerned with memory vs what I have set up. I have actually seen the same
userreference assing to 2 users from different IP addresses... not sure waht
is going on. The box is running MS 2008 server web edition with 8 gigs of
ram. It is the only thing we are running on the box. The DB is on another
box running MSSQL 2008. Following is what I have. I am most concerned with
cache settings, datasourcelife, itembuffersize, querytimeout, rerquestlimit
and threadpoolsize.



If anything is glaringly incorrect, I would appreciate a response... THANKS!



[Tango_2000_Server]
ABSOLUTEPATHPREFIX=
ALTUSERKEY=<@CGIPARAM CLIENT_IP>
APPCONFIGFILE=C:\\PVSW\\Tango2000\\Configuration\\applications.ini
APPLICATIONSWITCH=off
APREFIX=<TABLE BORDER="1">
ASUFFIX=</TABLE>
CACHE=true
CACHEINCLUDEFILES=true
CACHESIZE=50457280
CDELIM=,
CONFIGPASSWD=

CPREFIX=<TD>
CRONTABFILE=
CSUFFIX=</TD>
CURRENCYCHAR=$
CUSTOMSCOPESWITCH=off
CUSTOMTAGSPATH=C:\\PVSW\\Tango2000\\Configuration\\CustomTags
DATASOURCELIFE=15
DATEFORMAT=%m/%d/%Y
DBDECIMALCHAR=.
DEBUGMODE=appFileSetting
DECIMALCHAR=.
DEFAULTERRORFILE=C:\\PVSW\\Tango2000\\Configuration\\error.htx
DEFAULTSCOPE=user
DOCSSWITCH=on
DOMAINCONFIGFILE=C:\\PVSW\\Tango2000\\Configuration\\domains.ini
DOMAINSCOPEKEY=<@CIPHER action=hash str=<@LOWER <@DOMAIN>>>
DSCONFIGFILE=
ENCODERESULTS=true
EXTERNALSWITCH=on
FILEDELETESWITCH=on
FILEREADSWITCH=on
FILEWRITESWITCH=on
HEADERFILE=C:\\PVSW\\Tango2000\\Configuration\\Header.htx
ITEMBUFFERSIZE=65535
JAVASCRIPTSWITCH=on
JAVASWITCH=on
LICENSE=

LICENSEERRORHTML=C:\\PVSW\\Tango2000\\Configuration\\licerror.htx
LIMITURLTHREADS=true
LISTENERPORT=18100
LOGDIR=C:\\WebLogs\\Witango
LOGGINGLEVEL=LogLevel1
LOGTORESULTS=FALSE
MAILADMIN=
MAILDEFAULTFROM=Administrator
MAILPORT=25
MAILSERVER=

MAILSWITCH=on
MAXACTIONS=0
NOSQLENCODING=false
OBJECTCONFIGFILE=C:\\PVSW\\Tango2000\\Configuration\\objects.ini
PASSTHROUGHSWITCH=on
PERSISTENTRESTART=true
POSTARGFILTER=
QUERYTIMEOUT=60
RDELIM=;
REQUESTQUEUELIMIT=0
RETURNDEPTH=20
RPREFIX=<TR>
RSUFFIX=</TR>
SHUTDOWNURL=
STARTSTOPTIMEOUT=60
STARTUPURL=
STATICNUMERICCHARS=true
STRIPCHARS=true
SUPPRESS=0
TCFSEARCHPATH=<@APPFILEPATH>;<@CLASSFILEPATH>;/Tango2000/TCF/
THOUSANDSCHAR=,
THREADPOOLSIZE=10
TIMEFORMAT=%H:%M:%S
TIMEOUTHTML=C:\\PVSW\\Tango2000\\Configuration\\timeout.html
TIMESTAMPFORMAT=%m/%d/%Y %H:%M:%S
TRANSACTIONBLOCKING=true
USERAGENT=
USERKEY=<@USERREFERENCE>
VALIDHOSTS=127.0.0.1
VARCACHEPATH=C:\\PVSW\\Tango2000\\Configuration\\variables.Tango_2000_Server
VARIABLETIMEOUT=30





  _____

To unsubscribe from this list, please send an email to
[email protected] with "unsubscribe terascript-talk" in the body.



  _____

To unsubscribe from this list, please send an email to
[email protected] with "unsubscribe terascript-talk" in the body.



  _____

To unsubscribe from this list, please send an email to
[email protected] with "unsubscribe terascript-talk" in the body.



  _____

To unsubscribe from this list, please send an email to
[email protected] with "unsubscribe terascript-talk" in the body.

  _____

To unsubscribe from this list, please send an email to
[email protected] with "unsubscribe terascript-talk" in the body.



  _____

To unsubscribe from this list, please send an email to
[email protected] with "unsubscribe terascript-talk" in the body.


  _____

To unsubscribe from this list, please send an email to
[email protected] with "unsubscribe terascript-talk" in the body.



----------------------------------------

To unsubscribe from this list, please send an email to [email protected] 
with "unsubscribe terascript-talk" in the body.

<<image001.gif>>

Reply via email to