Thank you again Robert, for a very comprehensive explanation. I had a rough idea before, but this cements it :-)
Having the user "assigned" a specific Server for their session is what I was hoping for. It'll make migrating issues easier. Thanks again...... Scott Cadillac, Witango.org - http://witango.org 403-281-6090 - [EMAIL PROTECTED] -- Information for the Witango Developer Community --------------------- XML-Extranet - http://xmlx.ca 403-281-6090 - [EMAIL PROTECTED] -- Well-formed Development (for hire) --------------------- > -----Original Message----- > From: Robert Shubert [mailto:[EMAIL PROTECTED] > Sent: Friday, December 12, 2003 10:47 AM > To: [EMAIL PROTECTED] > Subject: RE: Witango-Talk: Load Balancing Question > > Scott, Good question. > > Each service runs independently, as you would expect a single > server to run. The variables, user, domain, etc., are managed > per service. This can cause some issues with higher scopes, > because you might update the contents of the domain scope > without doing it to all services, and have out of sync data. > > For users, the client does a nice little trick. First off, > it's important to describe two things: Each Witango service > is known to the client by its IP address and TCP port, thus > the default clients.ini contains 127.0.0.1,18100 (this > machine, default port). When you move the services to a > remote server, you must use the real IP. When adding more > than one service to a server, you must use differing ports. 2 > servers each with 2 services is my preferred setup and looks like: > 192.168.1.1,18100:192.168.1.1,18101:192.168.1.2,18100:192.168. > 1.2,18101 > > The second tidbit is that each service in the stanza (between the > colons) has an equal chance to receive an incoming new user. > At this point selection is random, however, you can weight a > service by adding it more than once. I say 'new user' here > because once a Witango service is selected for a user, the > request is tagged with the service's IP and PORT. This IP and > PORT information is then appended to the beginning of the > user reference. > > This explains why the userreference on a single server is 24 > characters long, and the userreference on a load balanced > server is 36 characters long. The 12 additional characters > are the IP and port of the Witango service to which the user > 'belongs'. This is read by the client on subsequent incoming > requests and used to select the target service. It is not > stripped so if you log userreferences you must be ready for a > 36 character string, and you can read the first 12 characters > to determine which server executed you request. > > Robert > > -----Original Message----- > From: Scott Cadillac [mailto:[EMAIL PROTECTED] > Sent: Friday, December 12, 2003 12:19 PM > To: [EMAIL PROTECTED] > Subject: RE: Witango-Talk: Load Balancing Question > > Thank you Robert, you're a valuable resource in this field. > > So I'm wondering, because I've never used load balancing with > Witango - how does the client handle Session Management and > the access of User Scoped Variables? > > ~~ After the client decides which Server the visitor's > request is assigned to, does all subsequent request from the > same visitor always go to that same Server? So that any User > Scoped Variables for that visitor are active on just one Server? > > ~~ Or, does the client somehow manage where to store User > Scoped Variables for a specific visitor - similar to how you > described file management? > > ~~ Or, is it some other process. It seems for every web > platform out there, there is a different technique. > > Let us know, when you have a moment. Thank you in advance. > > Cheers.... > > Scott Cadillac, > Witango.org - http://witango.org > 403-281-6090 - [EMAIL PROTECTED] > -- > Information for the Witango Developer Community > --------------------- > > XML-Extranet - http://xmlx.ca > 403-281-6090 - [EMAIL PROTECTED] > -- > Well-formed Development (for hire) > --------------------- > > > > -----Original Message----- > > From: Robert Shubert [mailto:[EMAIL PROTECTED] > > Sent: Thursday, December 11, 2003 7:48 PM > > To: [EMAIL PROTECTED] > > Subject: RE: Witango-Talk: Load Balancing Question > > > > Load balancing is achieved by the client (wiis.dll for > > example) being told that there are more than one Witango server > > available to answer requests. The client actually passes the user's > > request (GET or POST) to the server which in turn determines which > > TAFs, or TCFs it needs to run. > > It first checks its local memory cache for the files, and if not > > present, it requests the files to be sent by the client. > > Therefore it is true to consider that the web server, which > contains > > the Witango client, is where the TAFs are considered > 'local', and are > > sent from there to the Witango servers (or services). > > > > In my setup, my two Witango servers are distinctly separate > from web > > serving and database duties. It's also nice because you can do the > > reverse where more than one web server interacts with one Witango > > server. > > > > Note that when purging the cache (<@PURGECACHE>), it must > be done on > > all services, or you will have out of sync applications. > > > > Hope that helps some. > > > > Robert > > > > -----Original Message----- > > From: Dave Machin [mailto:[EMAIL PROTECTED] > > Sent: Thursday, December 11, 2003 11:21 AM > > To: [EMAIL PROTECTED] > > Subject: Witango-Talk: Load Balancing Question > > > > I set up a test of load balancing between 2 WiTango servers > yesterday, > > and found something I didn't expect. I have server A and > server B - > > the actual .taf files are only on server A. However, when requests > > were handled by server B it didn't complain that the .taf > files were > > unavailable locally. > > Does server B load the .taf files from server A? > > If the files were available on server B would it load it's > own local > > copies? > > > > Dave Machin > > > > > > E-Mail. [EMAIL PROTECTED] > > Tel. 805.614.0123 x 30 > > Address: 3130 Skyway Drive #702 > > Santa Maria, CA > > 93455________________________________________________TOUNUBCRB > > E G t htp//wwwiano.ommallstta > > > > ______________________________________________________________ > > __________ > > TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf > > > > ______________________________________________________________ > __________ > TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf > > ______________________________________________________________ > __________ > TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf > ________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf
