Server/Client Software - What host package do I need?

B

Blacklazy

Guest
I have made a program in .Net. It's a client/server application which communicates via a port.

I tested it on my computer and it works. I put the server.exe on one computer, and double click it to start it. Then I place the client.exe on the other computer (or several other computers) and double click that to start it.

Once server.exe is listening on a port, and client.exe connects to it data can be passed between them.

I need to move my server.exe to a web host now so that it can be accessed online. I tried creating a trial windows shared account but I cannot figure out how to start the server.exe on my website.

There is no way for me to double click on server.exe and run it when its on the server.

Can you tell me what plan I need to get to do this, and how it can be done so I can test it before I sign up?

Also, would I need deticated ports or something? The ports will be busy enough with my software if I have to share them with other people. I need to make sure no one else can intercept my data on the ports by listening on the ports I am using.
 
Hello,

We can not, never have, and never will allow a compiled exe app to run in a shared enviroment :)

This is something that will require a windows VPS. I do not know of any host that will allow you to execute such an application like server.exe on a shared environment.

From WinVPS you could login to remote desktop and launch it.

winVPS has a firewall enabled by default, you'd need to set some allows on the ports your app needs.
 
Ok, thanks.

The server.exe application I made needs to run 24/7. I can get a VPS, that's easy but I might need help setting up stuff. I've never had anything but a shared account before.

A VPS can run everything my shared account runs?

The server.exe program that I made needs to be avaliable 24/7 to grab data from my clients and store it in a database, and run processes.

In a emergency if the server ever went down, or if you preformed maintenance on the server and restarted it. Is there anyway it could be setup to automatically start my server.exe as soon as the web server comes back online? Like in Windows you can just drag it to the startup folder.

Or would I need to login and start it manually all the time?

Thanks again. :D
 
you can drag it to the startup folder. just like you said

We only occasionally have emergency reboots on winvps, they are posted when it is the case :)
Otherwise we give 24 hours notice of reboots for scheduled maintenance.

You can do all that you can on shared and more, to name a few:
full trust asp.net
execute apps
install own DLLs
change permissions as desired
add or remove ports from the firewall(windows firewall)
Install your own software for the most part, there are a limited number of apps that will not work, it can not be a VPN server

As for setup and not using, it is windows 2003 server, which works basically like windows, we will aid you without logigng into the VPS freely unless it is a plesk error then we will login and check it freely.

If you need further assistance with us logging in and installing or such, it is $3 per ticket or you can buy in ticket bundles as low as $2 per ticket pre-paid.
 
Are you sure you need the server side to be an exe? Since you're using .NET have you considered driving it via IIS? In other words, build an ASP.NET web service. That's what IIS is for. Its a robust, reliable, multithreaded service always listening for requests. Threads restart if they crash. Requests are passed onto your code which does whatever it needs to do and returns a response. Instead of an exe, you write code (usually C# or VB.NET) behind asmx files or dlls in class libraries. That probably works on shared hosting if you can stay within medium trust. The only real limitation I can think of with shared hosting is that you're stuck with port 80.

Perhaps you're doing something really special but, in general, building your own tcp/ip server is like trying to reinvent the wheel. It sounds like your server.exe is a desktop application. If you do anything like this then it should be a service.

Cheers
Ross
 
I have tried web services before and they don't work for what I want. I am building a game server. Its a lot easier for me not to use web services and just use ports instead.

I also need data to stay in RAM at all times to run the games. Web services don't hold anything in RAM between calls unless its a static member, instance members are destroyed between calls, which forces me to store the game into a SQL.

Also web services cannot send requests to the client by them self, they only work if you query them, then they can return a result. With a full EXE application running I can track which clients are connected and send them data anytime I need. Its a two way connection, web services are only one way connection.

On my game server web services use SOAP to transmit and they create a lot of extra overhead that's useless to my games.

I've tried them before and they just dont do what I need. Also in the future as I add more games I will want each game, on its own port to speed things up, so I can't count on a shared server to be powerfull enough for me. :D
 
Back
Top