Solved

Fastest way to upload files to Windows Web Server 2008 R2

Posted on 2010-08-27
10
932 Views
Last Modified: 2013-12-02
Hello

I was wondering what is the fastest way to upload a large number of small files, but also large files (size over 500Mb) to a Windows Web Server 2008 from a VB.Net script.

I was thinking ftp but the negociation time is prohibitive for small files
I was thinking asp webservices, but the files have to be encoded to fit into an XML file, which increases the size, which is not great for large files.

But I am not on expert on windows services and I was wondering if a smarter way I wasn't aware of.

thanks
Charles
0
Comment
Question by:cm2187
10 Comments
 
LVL 7

Expert Comment

by:brettkm
ID: 33542655
Stab in the dark, is queing up all your files with an FTP client an option?  That way you could just let them all upload overnight.  Are you talking over the internet or LAN?

If I'm way off, a bit more info might help others.
0
 

Author Comment

by:cm2187
ID: 33542797
thanks. Unfortunately I am indeed trying to speedup the upload time. So an overnight batch won't do it.

The background is that I am trying to build a script that backs up files. I will compress most of the files before uploading them. But the user will be waiting in front of his machine while the files upload. Also I want to minimize the time it takes to backup in order to reduce the risk of the files being modified or deleted in between.
0
 

Author Comment

by:cm2187
ID: 33542883
And this would be over the internet (so relatively low and unstable connection)
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 4

Expert Comment

by:kjetilroe
ID: 33542945

The fastest way I know of, is to use zip-encoded binary streams with a TCP server - client model, or maybe using the binary transfer protocol with Windows Communication Foundation (WCF).

Tell me if you want examples for solving it this way.
0
 

Author Comment

by:cm2187
ID: 33543001
I wouldn't be developping a server with a service listening on a port from scratch but if there is something already available and which I can use on WS2008 then I am keen to try.

Does WCF requires to develop my own server app or is this just some ASP scripts?
0
 
LVL 4

Expert Comment

by:kjetilroe
ID: 33543106

WCF is a framework for develloping .Net remoting services (like web-services, just with more opportunities, and more protocols). I cant see how you can get the speeds you ask for by using plane ASP scripts.

And also, to make a TCP server is actually not as hard as you might think, and there are lots of examples with startingpoints for this on the internet.
0
 

Author Comment

by:cm2187
ID: 33543299
Well, it's perhaps the time to learn. Would you have some good links already about where to start with?
What I liked with the ASP webservice is that I just need to write the function with the arguments I need and I don't need to worry about security or encoding or any of these things.

Also lots of examples I see for TCP servers seem to be with windows forms. I though a service wasn't based on forms but more like some sort of console application. Although I would expect it to be events based.
0
 
LVL 4

Accepted Solution

by:
kjetilroe earned 250 total points
ID: 33554519

Here is maybe two good startingpoints for you:

http://www.codeproject.com/KB/WCF/wcffileserver.aspx
http://www.codeproject.com/KB/WCF/WCFDownloadUploadService.aspx

The TCP Servers can be both windows forms, console applications or a windows service. It all depends where or how you want to host your server. I think that the reason for making a windows forms app, is to easier make a window to be able to see the status of your TCP server. Apart from the status view, and the graphical userinterface that comes with a windows forms app, I can see no other reason to use forms. You can hook up events in a console application too, you just dont get the windows forms event loop.
 
0
 

Author Closing Comment

by:cm2187
ID: 33594156
Thanks. I tried creating the service but I think I will stick to an asp.net script. I understand it's going to be a bit complicated to handle concurrency properly and I am not entirely sure that it actually uses binary to transfer a bytes() variable.

thanks for your inputs
0
 
LVL 1

Expert Comment

by:thready
ID: 36143146
Hi cm2187,
Just wondering if you ever discovered some built-in support for file transfer on Windows Server 2008 web in the end?
Thanks!
Mike
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Scenario:  You do full backups to a internal hard drive in either product (SBS or Server 2008).  All goes well for a very long time.  One day, backups begin to fail with a message that the disk is full.  Your disk contains many, many more backups th…
If, like me, you have a lot of Dell servers in the estate you manage this article should save you a little time. When attempting to login to iDrac on any server I would be presented with two errors. The first reads "Do you want to run this applicati…
This tutorial will give a short introduction and overview of Backup Exec 2012 and how to navigate and perform basic functions. Click on the Backup Exec button in the upper left corner. From here, are global settings for the application such as conne…
This tutorial will walk an individual through the process of transferring the five major, necessary Active Directory Roles, commonly referred to as the FSMO roles to another domain controller. Log onto the new domain controller with a user account t…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question