General Info Template Language WCTL Commands WebX/Chat WebX/Platinum
Release Notes Standard Templates URL Codes WebX/Multi FastCGI, NSAPI, ISAPI

Visit the Web Crossing Conference to find a wealth of WebX info and a community of WebX experts on the Web!

Web Crossing/Platinum Sysop Documentation

Table of Contents

Distributed Web Crossing servers

» Distributed Web Crossing servers

Web Crossing/Platinum allows you to run multiple cooperating Web Crossing servers. These cooperating servers can

  • provide real-time redundancy to make sure you can always respond to user requests and that you never lose your discussion database;
  • greatly increase throughput and responsiveness;
  • share a single user directory among multiple virtual Web Crossing sites.

    » Redundant database architecture

    To serve the same database from multiple servers, Web Crossing uses a source-mirror architecture with a single source/master and one or more mirrors/servants.


    Redundant database with 2 mirrors

    All of the servers, including the source, can be used to process user requests. In very high-volume sites, the source may be dedicated to synchronizing the various mirror databases.

    Each mirror may run as a separate process on the same machine as the source, or on its own machine. Each server, source or mirror, keeps its own copy of the discussion database. TCP/IP connections from the source to each mirror are used to synchronize all of the databases.

    The mapping of a user request to a particular Web Crossing server is done outside of Web Crossing. For example, you could use DNS rotation to have domain-name lookups rotate among the various servers, or hardware such as Cisco's LocalDirector to transparently assign each request to an available server.

    Because each server keeps its own copy of the database, most requests can be served locally, without accessing the source database. Requests that change the database, such as checking subscriptions or changing user preferences, are passed to the source and then from the source to the other mirrors. Requests that create a new database object, such as posting a message or creating a new discussion, are passed to the source to have the object's unique ID assigned centrally, and are then passed by the source to all mirrors.

    Scaling and Load Issues

    In terms of volume, multiple redundant servers can grow to 10-15x the capacity of a single process before the source server is saturated. This is because we typically see about 20 page views to 1 post, and at 10-15x the throughput of one process, the source server is completely occupied with post synchronization.

    On Solaris Ultra2 machines, a single process can serve 250,000 to 1,000,000 page views per "day" over a 10-hour duty cycle. The duty cycle takes into account that server load varies dramatically during a 24 hour period, and figures for purposes of determining load capacity that the server is running full-out for 10 hours, idle for the rest.

    So on Solaris Ultra2 machines, this means you can serve between 2.5 million and 15 million page views per day with multiple redundant servers, depending on typical post sizes, ratio of page-views to posts, and how much customization you do on the site.

    » Configuring redundant servers

    You configure redundant servers through the Distributed servers sysop control panel. This panel allows you to specify TCP/IP ports and source/mirror relationships for all of your servers.

    Each redundant server must have its own license certificate.

    » Operations with redundant servers

    The normal operations required to maintain a site are to install a new mirror server, take down a mirror server, move the source server to one of the mirrors, and make a backup copy of the discussion database. This section also discusses handling unscheduled server outages.

  • Add a new mirror server.

  • Take down a mirror server.

  • Move the source server to one of the mirrors.

  • Make a backup copy of the database.

  • Handle unexpected server outages.

    » Shared user directory

    Web Crossing/Platinum allows you to share a common user directory among multiple different conferences.

    You can use this to have a common user community across multiple sites, or to break a single large conference down into smaller pieces so that it can scale to much larger volume.

    In this mode, all of the servers share the same member directory information, so that login certificates and preference settings are propagated throughout the cooperating servers.

    Scaling with split areas is essentially unlimited, because you can keep splitting the site into smaller pieces as desired.

    You configure shared directory service through the Distributed servers sysop control panel.

    » Combined redundancy and shared user directory

    You can run in both modes: each separate area of the site can run multiple redundant servers, all connected together to form a very large cooperating site.


    Copyright © 1996-98 by Lundeen & Associates, Alameda, California.