-5

We develop an app.
Our app need to connect through RDP protocol to server (so, server should have RDP server running on it, as I think).
Server need to launch Firefox (specifically configured) for each connected client in kiosk mode (session should contain only firefox app without possibility to close it and/or open other apps).
Our app will display firefox window (as if it is running on clients machine) We think a lot of people will use our app ( several thousands, possibly simultaneously).
So we think that our servers should have large computational resources and broad Internet channel.

We need a hosting, or may be dedicated servers (I don't completely understand for now what is it, sorry), or may be something else (cloud hosting?) for our app's servers.
I'm a programmer, and I have no experience with servers, clouds, and related things.
I think that server which we need is a terminal server, but I may be wrong.
Is that right that we needs a terminal server?
Does such servers support arbitrary (high) number of simultaneous sessions?
For load level that we expect (high, several thousands of users or more), do we need a cloud technology?
Can you recommend concrete hostings/tools/platforms for our task?
What is prices level for such hostings/ services?
May be I miss some other things?
Sorry for my English.
If I described functionality of our app not clearly, please give me know, and I will explain it more precisely.
Thank you.

Petr
  • 103
  • 5

2 Answers2

3

Your question is too broad, really.

Explaining you all the details would be out of scope for this place (that's probably a few days worth of consultant work) so let me suggest to you a few steps that you should take first (since I had to answer the same question from several customers over the last 12 years, I'm starting to figure out what the pattern for getting these rights is):

Get your requirements right

I means, really, do that first.

You state that you developed the application so you will need to go back to your developers and ask them to write the specifications. They should contains things like:

  • Architecture requirement (32/64 bits)
  • OS requirement (What specific version of windows is desired, what roles and services are necessary).
  • Sizing (how much memory, CPU and hard drive space per user ? How much shared resources will be required per server, overall).
  • Additional requirement (Will you need to print ? Access to USB devices on the client ? Special hardware on the server ?)

You will also need to go to your business users and ask them about SLA and DR:

  • What type of uptime do you need ? 99.999 % 24/7 ? 99% 8/5 ?
  • In case of outage, what is the acceptable time to recovery ? How much data can you afford to lose ? How much history do you want to keep ? Do you have specific requirements concerning backups (like having a copy stored at no less that 50 km from the primary site, for instance)
  • What type of backup will you need ?
  • What level of security do you need for the data ?
  • How many users are you planning on hosting (both total and simultaneous).

Once you've compiled answers to these questions, time for the next step:

Get professional help

Your question shows that, right now, you don't know enough about the technical aspects of things and will most likely not succeed by yourself so you need either a lot of additional training or you need help.

Get someone who is familiar with Windows Server but also with medium to large deployments or Terminal Services (Citrix would be a good reference). He or she needs also to have a good gasp of security. Give them your documentation and ask them to prepare a technical requirement for your hosting. Be prepared to discuss the ins and out with them and even change plans: some things like high availability are VERY expensive to do right with terminal services.

Depending on your specific requirement, it could be a good idea to double-check these technical requirements with a security specialist as well.

Once you have all this, you will be in a good position to search for a service provider that matches your needs.

Stephane
  • 6,382
  • 3
  • 25
  • 47
  • 1
    I do not think he is even *near* the phase where one would try to do capacity and availability planning. I even suspect that the whole app plan will break down as soon as he learns about the licensing costs for Windows Remote Desktop services. – the-wabbit Apr 29 '13 at 09:47
  • 1
    I agree, that's why I suggest he gets the requirements first and the goes to a consultant. If he can't do both of these, he's going to fail anyway. – Stephane Apr 29 '13 at 09:49
  • Thank you both for you great answers. We do not have an app yet. Now I see that we should do a lot of work to accomplish our task. I think that we may be completely wrong with technologies that we choose. Our app is a mobile app. We want to present desktop browser (Firefox) to user of mobile device and to enable user to see desktop browser window on his device. We want to run desktop browser for each user on server, send the browser window contents to device, and send user input back to server. Give us please a pointers to technologies that will be appropriate to use for this app, Thank you – Petr Apr 29 '13 at 12:39
  • 1
    Frankly, there isn't much that I can tell you: You need to start with the basics before going any further and that means getting the requirements right. Once you have that, go see a consultant with that because that's not really a job for a 2 page answer on a community web site. – Stephane Apr 29 '13 at 12:51
1

You probably would need a terminal server, as RDP is the protocol a Windows Remote Desktop Session Host / Terminal Server implements on the server side, although it remains unclear from your question if RDP is a hard requirement or if you would use any technology allowing for graphical interface remoting (e.g. X).

Obviously, a TS would not suport an arbitrary number of connections and every user or device potentially able to connect would be subject to licensing.

The typical number of users a single Session Host would serve is in the realm of several dozens to a few hundreds, depending on the load and its capacity. It rather would not support thousands of users, but means of scale-out exist using the Remote Desktop Connection Broker or third-party software.

As for product recommendations, pricing and licensing questions, you have come to the wrong site to ask them - they are explicitly off-topic here. We also have no commonly recommended place to direct people to in these cases.

the-wabbit
  • 40,319
  • 13
  • 105
  • 169