Load Testing X11 Servers?
An Anonymous Coward asks: "There is a site that wishes to test more than 450 users running thin-client X on a server without having to have 450 client terminals. Is there a simple method to do this. So far I've thought of the following options: 1) recording X network packets then sending them from multiple dummy 'clients' on the same PC. (This was done during the Mindcraft benchmarking episode by simulating 'netbench'). 2) some sort of scripting process that can simulate typical X11 usage on the server. Unfortunately, expensive load testing software is not an option."
You could start Xvfb running on your test client(s), and then fire all 450 sessions off, displaying to the virtual frame buffer(s). You get all the downstream network traffic of the 450 sessions, without having to look at them.
what you really want to do is test the network, cpu and memory load of 450 clients. the xserver will run on the thin clients, the xclients will run on the application server. first, remember that x allows load balancing - when the xterminal's xserver starts up it can issue an xdmcp request and get a list of available servers with their load. as long as the servers share a common home directory, no worries. plus you can reduce network load by using multiple subnets and so on.
but your question was, how to test what you describe. look into using xnest, xvnc or xvfb on a few host clients. each instance of those on a host client will be a test client. the more host clients you have the better since that means less test clients per host client. xnest will put a lot of load on the host client but you can use all the fake clients at once (or at least you can see them all at once, you'll still have to move your mouse from one to the other). xvnc will put less load on the host clients, but you'll need to run vncviewers to see each fake client. finally you can use xvfb which will allow you no control over the test client, but will stress the host clients less.
the latter might actually be easier to test with though. the first test could be to start up 450 xvfb xservers. then start up gnome/kde desktops for 450 users on the application server (with DISPLAY pointed to each of the xvfb xservers). that should test ram requirements. then keeping the desktops running, run x11perf (on the application server) on all the displays. that should exercise network load and cpu.
US Citizen living abroad? Register to vote!