how to use multiple remote displays
Martin Drautzburg
Martin.Drautzburg at web.de
Sun Oct 1 03:13:06 PDT 2006
We are currently investigating a major rewrite of one of our products and we
especially have to solve to problem of allowing a large user base to access
our app so a web application is under consideration. Alternatively I tested
using a native app using a remote display via X11. I got this to work
within minutes using the cygwin XWin server and a wxPython app running
under Linux and performance was more than okay even over a throttled (64
kB/s) network. So bad surprises so far.
The drawback of this approach is that my app uses apx 30 MB per session.
Since I have to start a new app for every user I would need 1500 GB to
allow 500 users. Even though this costs only about $5 per user it is still
a lot.
I am using wxPython and I could see that most of the memory is allocated the
moment I import wx. I tried forking the application instead of starting it
anew for every new session, but this only saved some memory (required 26
MB).
Then I tried to use threads instead of processes. The main problem I had to
face there was accessing different remote displays. IOW I could not find a
way to change the DISPLAY for different Threads individually. I could not
even find the SetDispaly method, which was mentioned in some usenet
postings. Also I am not sure if wxWidgets is thread safe enough to allow
this (I belive Tk is).
Questions:
(1) Is it possible to access multiple remote DISPLAYs from different threads
of the same process and if so: how ?
(2) Are you aware of thin clients other than a Web Browser or an X11
server ? Our customer would most likely accept installing another "Browser"
as long as they don't have to upgrade with every change to our software ?
More information about the wx-users
mailing list