我有一个Web API,负责将文件保存到网络路径(NFS), 我甚至尝试验证位置时,每50-60个电话即可获得"未找到网络路径"
Directory.CreateDirectory(path);
以及尝试写文件时。
通常2-3个跟踪请求将收到此错误,然后恢复正常。
路径是网络位置\\ 10.169.10.148 \ storage \
该位置存在,并且它不是权限问题,因为我设法为大多数呼叫写入此位置。
错误发生在多个端点上,每个端点都试图以不同的方式保存文件。
一个是接收网址并尝试将远程文件下载到磁盘
using (WebClient webClient = new WebClient())
{
await webClient.DownloadFileTaskAsync(new Uri(video.FullPath), fullFilePath);
}
一个人正在接收文件:
using (Bitmap bmp1 = new Bitmap(fileContent.ReadAsStreamAsync().Result))
{
Directory.CreateDirectory(path);
ImageCodecInfo jpgEncoder = GetEncoder(ImageFormat.Jpeg);
System.Drawing.Imaging.Encoder myEncoder =
System.Drawing.Imaging.Encoder.Quality;
EncoderParameters myEncoderParameters = new EncoderParameters(1);
EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 50L);
myEncoderParameters.Param[0] = myEncoderParameter;
bmp1.Save(filePath, jpgEncoder, myEncoderParameters);
}
一个人正在接收一个JSON字符串并将其写入文件:
public IHttpActionResult Post([FromBody] CreationJSON settings)
{
var location = Path.Combine(path, fileName);
File.WriteAllText(location, settings.JSON);
return Created(new Uri(location), fileName);
}
为清楚起见,删除了所有try / catch和日志记录代码。
我每天收到大约20k个请求,而不是重负荷,并且在没有请求几分钟后就会发生错误。
此Web API是在Windows Server 2012 R2计算机上的IIS 8.5上运行的C#,.NET 4.6中编写的。
我知道这个类似的问题: C# The network path was not found
但它没有得到解决。
非常感谢任何帮助。