Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Technology

To Citrix or Not to Citrix? 31

Saqib Ali asks: "These days, it seems almost any application can be served on a Citrix Farm . However, not all application are best fit for a Citrix environment, and I am sure most IT admins are faced with the tough decision of whether to host an application on Citrix or not. What questions should an IT administrator ask before deciding whether to serve an application over Citrix or just plainly install the application on each desktop? I am NOT looking for the benefits of using Citrix, as I'm very well aware of them. What I want to know is, what criteria should be used in determining whether to use Citrix for an application or not. I just don't want to use technology for the sake of using technology. There should be a methodical way (like a checklist or questionnaire) for determining the feasibility (NOT PROs and CONs) of serving an (any) application on Citrix. Here is a Checklist/Questionnaire that I have come up with. Any more suggestions to add to the checklist?"
This discussion has been archived. No new comments can be posted.

To Citrix or Not to Citrix?

Comments Filter:
  • by Spudley ( 171066 ) on Friday May 28, 2004 @07:05PM (#9281861) Homepage Journal
    The Citrix/Terminal Server platform is usually pretty good, but there are a few things that have caught us out.

    Even in this age of multitasking, some apps still don't share. One timesheet application I know of can't be used on terminal server because it chews up all the processor time it can get it's hands on, which just about kills all the other users.

    Even some well known applications can be quite heavy on resources when run on a terminal server, so lesson one is to make sure you know what you'll be running, and how well those apps work in that environment.

    The other thing that stung us quite badly when we moved to the terminal server platform is licencing.

    One piece of software in particular that we used to rely on suddenly became massively more expensive when we switched from fat client desktops to terminal servers. The licence for the desktop PCs had been a free client licence, but for the same users doing the same thing on a terminal server we were forced to pay for them all to use a server licence for the software.

    Needless to say, we dropped that product as soon as we had found an alternative, but it was quite a painful process to do in a hurry.

    So lesson two is: work out the licencing implications for everything you run before you start the conversion.

    I hope this helps you avoid the mistakes we made. :-)
    • I agree with you. We used to use Citrix, but we found that it had a number of issues:

      1. Some applications conflict with other applications, requiring us to install them on separate Citrix servers ("server siloing", doubling the hardware and administration costs).

      2. Performance over a slow link degrades to the point that fast typists could enter an entire line before seeing the first character appear.

      3. The "thin client" model assumes that the client has little to no intelligence and just sends keystr

  • by ADRA ( 37398 ) on Friday May 28, 2004 @07:08PM (#9281872)
    How much access to local system resources does the application need? (Tools for interfacing with system)

    How often does the tool need to receive updates?
    (More updates means more effort distributing for non-citrix setups)
    What is the time taken for each update?
    (Simply for manpower running around mnaking changes)
    How does the non-upgraded version function with the upgraded system?
    (backward compat means less need for single cut migration. Citrix guarantees this)

    What are the bandwidth requirements of the software with VS. without citrix?
    (It may be that the amount of data you're transfering to/from the server is actaully lighter than the graphical snapshot of the cistrix app.)

    My main reason for staying away from Citrix has been the price point. My customer base isn't large enough to justify the expenditure. It makes updates easier, but if the tool has a very easy migration/upgrade path and it isn't an insanely heavy network abuser, i'd go without Citrix.
  • Dont forget TS (Score:3, Interesting)

    by jmenezes ( 100986 ) on Friday May 28, 2004 @07:08PM (#9281883) Homepage
    Another point to keep in mind, is that you could also factor in Terminal Services, which while not as full-featured, can be a much more cost-effective solution for some situations.
    Using same said checklist, if a particular scenario doesnt entirely jsutify Citrix due to costs, it may still be better than foregoing a centralized appliaction altogether....

    That said, i assist some of my customers with TS problems everyday, and i must say I DESPISE it.
    but at least it gets the job done when appropriate.
  • by Marxist Hacker 42 ( 638312 ) <seebert42@gmail.com> on Friday May 28, 2004 @07:21PM (#9281952) Homepage Journal
    Nobody's mentioned it yet, but I've yet to see ANY terminal server handle extremely complex user interfaces across a network very well. By complex, I mean: varying colors, extremely busy screens, and at the worst point, 3d graphics rendered in real time. In other words, the kind of bitmaps that don't compress really well put a strain on Citrix, VNC, or Windows Terminal Service all alike.
    • Exactly, our IT department thought they would switch to TS servers so they would only have to patch 1 machine with the latest graphics drivers to play UT 2004. Boy were they wrong, imagine office productivity with 35 cubicles trying to protect the flag at 1 frame per second.

      The next place I worked at wanted to move their base application to a centralized server so they could use their desktops for distributed rendering. Well the rendering was going quickly but nobody could use it fast enough to create any
      • I was thinking more about how at a place I used to work, the CD burner was on VNC. But it was a fancy robotic multiple-CD burner complete with printer; it had a LOT of fields to fill out in it's user interface, and between VNC trying to compress the graphical image of a screen with a lot of fields, only a 10BaseT network, and the machine cycles eaten up controling the robot, it was VERY slow.
  • Use Linux instead (Score:3, Informative)

    by pabtro ( 609586 ) on Friday May 28, 2004 @07:35PM (#9282045)
    In our work environment, we use Citrix on top of HP-UX. In general, it is slow and the only applications available are Word, Excel, and FrameMaker. The mouse scroll wheel is not supported and employees cannot install software on the served Windows environment. Surely I imagine this must be paradise for IM.

    When frustration peaked, they installed a real Windows box besides our HP360, so we ended up with 2 systems; it is cumbersome, but it works.

    In my view, all this could be replaced with a single Linux box, OpenOffice added, plus any additional application you might require on top.

    • Read the question. He explcitly asked not to hear the pros and cons of using Citrix. He asked for the criteria for determining whether or not to use Citrix with a given application.

      And I may be reading into it here, but I'm pretty sure he doesn't need any "why bother with Windows at all, just use Linux?" replies.
  • by rocket rancher ( 447670 ) <themovingfinger@gmail.com> on Friday May 28, 2004 @08:00PM (#9282208)
    > Any more suggestions to add to the checklist?

    Lots of good suggestions so far. As a long-time Citrix admin, I would add a couple questions to the fairly good ones you already have.

    Will the app vendor still support the app if it is deployed via Citrix? In my experience, this is a really good question to ask up front before deploying the app!

    Are your apps mission critical? Do you need high availability for them? Citrix really reduces the cost of deploying and supporting mission critical applications, but at a price, as another poster in this thread rightly pointed out. If you don't have the numbers to get the bulk discount rate, Citrix may not save you all that much.

    Finally, one that probably doesn't need to go on a checklist, but one that you should ask yourself anyway. Are you willing to work with Metaframe, with your users, and with the app vendors to make it work? We have a nice stable Citrix environment here at the rocket ranch, but we worked with our vendors, and with Metaframe to make it that way. It didn't happen overnight, and I had to take several Citrix training courses before I got really comfortable with Citrix. It was worth it, but that is just my environment -- ymmv.
  • by Kris_J ( 10111 ) * on Friday May 28, 2004 @08:17PM (#9282306) Homepage Journal
    I'll try to stay on topic, but your original question is so specific that I think you've probably asked the question in the wrong place. I'll address your checklist to try and keep me on the rails
    • Is the application a fat-client or a thin-client (web-based) client?

    Your first question looks wrong off the bat. If you have a web-based client, why are you needing Citrix at all? If the software is already server-based with a web interface, it doesn't need a terminal. Unless that's your point, you don't explain what you would do with the checklist answers.

    • What is the frequency of queries to the application server?
    • How much data is transferred between the client and the server?

    Unless Citrix has some quirks I'm unaware of, the first question is immaterial. The second question is much more important. Applications that are network bound are much better to run with a terminal, ie; I always verify our main database's schema using a copy of the client running on the server. However, the last two major upgrades we done have been specifically designed to reduce the network traffic that it generates, while at the same time we're starting to sniff around gigabit ethernet. Since most applications are not run on Citrix-esq installations, any new version is suddenly likely to change the balance of network traffic to server and client load.

    • Will the application users connect to the application server over a WAN connection?
    • Are there any concerns about WAN connection usage and time required to retrieve data - over a WAN connection?

    Here I'm assuming you're talking about non-network apps (Like Word) and a user's connection to the Citrix server. Obviously, high latency to the Citrix server will make any app that would otherwise be installed locally look crappy over Citrix. That's so obvious that I think I might have missed your point on this one.

    • Will files be transferred to-and-from the application server?

    Here I have to again assume you mean that staff might be rocking up with a floppy or CD with files that need to be transferred up to the application on the server so they can work on them. Yes, I would imagine that applications with large amounts of local data are best handled locally.

    • Can the application in question be used off-line?

    Do you mean "Does the program need a server anyway"? Ultimately that only matters for laptops and server downtime. I question the value of laptops in lots of situations. Where I work, apart from a couple of people that develop stuff at home those of us that use laptops only ever use them plugged into a LAN. They're just a familiar environment that can be moved from one office to another, and occasionally used to check email remotely (except we have webmail now, so any PC will do). As for server downtime, many companies have a key network database application that staff use all the time. Without it they're stuff anyway, what does it matter if a few other lightweight apps are down too.

    • How many users will be connecting the application?

    You're referring to CPU load on the server? This is where I tend to think that Citrix is the wrong solution. Desktop PCs are so cheap and powerful, why are we killing ourselves to build a monster terminal server? But you don't want to talk about that. Or maybe you mean that if the numbers are too low, it's not worth centralising? I guess the sweet spot depends on the price of the application (if it's licenced differently for Citrix vs desktops) vs its processing requirements.

    • What is the geographic location of the users?

    That looks like your WAN question above.

    • Citrix can provide centralized management/administration. Is this preferable?

    Not sure how this would differ application-to-application. This would much likely differ from department to department.

    Okay, I've tried to stick to your rules, now here's my real answer. Centralised Citrix-like systems for Windows applications are not the answer. Thin

  • I have supported MetaFrame, sold Citrix.. their product enables great things to happen over WANs, but corporations tend to abuse it from what I've seen.

    And by abuse I mean shaving off having to do multiple installations in a corporation by having a central corporate MetaFrame farm. then the SQL server disk array fails. then the whole corp is disabled. Hello eggs, meet basket.

    Also, be prepared to deal with the horrid hell that is Citrix printer support. It's not entirely their fault as some printer dri
    • Yes, printer driver hell was our experience with our Citrix users. Other than that, we're happy with it. Much more efficient over a WAN than a fat client that's passing a lot more data.
    • Having personally written some of the printer support for the Java client I can tell you that the printer support is actually quite good now. And doesn't involve running random drivers in kernel mode on the server,

      Also, having worked in the Research Lab for a summer I happen to know that quite a lot of the issues mentioned above (text latency, graphics slowness etc) are being fixed in the next few releases. They have some *really* cool tech, which I'm probably not allowed to tell people about.

  • Testing (Score:2, Informative)

    by dJCL ( 183345 )
    Test the apps you will need. The company I work for sets up and install application servers as our base business model and you have no idea how many programmers just assume they are the only application on the machine, and only one user is running it. Even some large scall stuff.

    A lot of low power apps, ones that don't need much/any horsepower are idealy suited for app servers, but just don't work, so try them first, then buy.

    Anyway... someone probably said all this already...
  • If your company uses any large databases, it can be a very good idea to use Citrix for any programs that run off the database, assuming that your Citrix farm and the DB servers have a very fast connection between them. If a client tries to run off the DB from another site, then it will run much slower (duh). With the processing power that our Citrix farm has, I can run a particular application faster over Citrix than locally with my own copy of the DB. (About 3 sec vs. 6 sec)

Saliva causes cancer, but only if swallowed in small amounts over a long period of time. -- George Carlin

Working...