я получил Iis размещаемые службы WCF с функцией, которая получить файл и сохранить его на сервереWCF, Выгрузка байт [] занимает тоскует время
Я сделал некоторые испытания с файлом 6.5MB, он взял меня загрузите его 4.6мин, хотя это займет около 2 минут,
Кто-нибудь знает, как я могу ускорить процесс? я действительно нужно загрузить, чтобы быть быстрее
ServiceManager.UploadFile(fileName, FilesHelper.FileToByteArray(filePath));
public static ServiceCallResult UploadFile(string fileName, byte[] data)
{
Stopwatch sw = Logger.StopwatchInit();
VsServiceClient vs = new VsServiceClient();
EndPointSelector(vs);
vs.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0);
try
{
bool result = vs.UploadMediaFile(fileName, data);;
sw.StopAndLog(fileName);
return new ServiceCallResult() { IsSuccessful = result };
}
catch (Exception ex)
{
sw.StopAndLog(fileName,ex);
return new ServiceCallResult() { IsSuccessful = false , Message = ex.Message };
}
finally
{
vs.Close();
}
}
<webHttpBinding>
<binding name="NewBinding0" maxBufferSize="160000000" maxBufferPoolSize="160000000"
maxReceivedMessageSize="160000000">
<readerQuotas maxDepth="160000000" maxStringContentLength="160000000"
maxArrayLength="160000000" maxBytesPerRead="160000000" maxNameTableCharCount="160000000" />
</binding>
</webHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="vsAjaxBehavior">
<enableWebScript/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="vsServiceBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
<services>
<service behaviorConfiguration="vsServiceBehavior" name="VsService">
<endpoint address="" behaviorConfiguration="vsAjaxBehavior" binding="webHttpBinding"
bindingConfiguration="NewBinding0" contract="VsService" />
</service>
Веб-сервис работает на EC2 небольшого сервера экземпляра с iis7, код внутри функции службы принимают менее 1 секунды, так что все впустую время на клиента к серверу перевод.
Другое дело, сервер не используется так большую часть времени только один единственный пользователь использует его ...
Есть идеи?
Благодаря