Obsługa strumieniowego przesyłania żądań WebAPI

Piszę aplikację ASP.NET Web API, która wymaga zaakceptowania przesłania pliku i przekazania tego pliku do innego punktu końcowego HTTP.

Obawiam się, że jeśli wielu użytkowników spróbuje przesłać każdy plik o rozmiarze 100 MB (co jest prawidłowym przypadkiem użycia), moja aplikacja będzie miała duży ślad pamięci i w zależności od ilości dużych żądań ten ślad może wzrosnąć do dużego, a moja aplikacja będzie chybiała koniec i umrzeć.

Idealnie chciałbym rozpocząć przesyłanie pliku do innego punktu końcowego HTTP, gdy tylko serwer WWW zacznie odbierać plik, aby znacznie zmniejszyć obciążenie serwera.

Jestem pewien, że ten proces ma nazwę, ale nie wiem, co sprawia, że ​​szukanie go jest trudne.

Zrobiłem sporo pracy z Response Streaming w Web API, ale nigdy wcześniej nie musiałem brać pod uwagę przesyłania strumieniowego.

Najlepiej mogę powiedzieć, że muszę się zastanowić, jak:

Rozpocznij przetwarzanie strumienia przed zakończeniem przesyłania.Użyj HttpClient, aby przesyłać strumieniowo to samo żądanie, aby przesyłać te same dane do innego punktu końcowego HTTP.

Czy ktoś może mi zaoferować jakieś wskazówki?

questionAnswers(1)

yourAnswerToTheQuestion