The Trouble with Terminal Services
Terminal services is a technology that allows traditional fat-client software
to be implemented as server-based thin client software, so that ASP and
web-based implementations are possible. It does so by allowing multiple sessions
of an application to run on a server or server farm while sending screen updates
to and accepting input from a remote client. The most popular implementation of
terminal services is a product called Metaframe, from Citrix. Metaframe is a
mature, reliable product that works just as advertised. The problem is that many of
the advantages of the ASP model are diminished when using it. The biggest problem
is cost: Metaframe licenses are very expensive, running into the hundreds of
dollars per concurrent user. This neutralizes the inherent economic advantages
of the ASP model, and makes large distributions prohibitively expensive. Another
problem is that an instance of the application must still run on the server for
each concurrent session (albeit with
savings through resource pooling), and many healthcare client applications are
massive affairs. This means that while the Metaframe solution is theoretically
scalable (with server farms and load balancing), it's very expensively scalable.
A high-end server can easily be required for every 20-30 concurrent users.
Thus, when based on terminal services, the ASP model is far less economically
compelling. For many applications, it may actually cost more in the long run
than a traditional client/server model. There are still advantages, of course,
like far easier maintenance and software upgrades, but it pales in comparison to
a true, native web-based ASP implementation.
|