ASP.NET MVC-Seiten werden nicht über 3G oder bestimmte Proxy-Server bereitgestellt

8

Wir haben gerade eine neue ASP.NET MVC-basierte Web-App veröffentlicht, die auf allen Desktop-Verbindungen und allen mobilen Geräten wie dem iPhone usw. funktioniert. Wenn jedoch bestimmte Seiten über eine 3G-Verbindung angezeigt werden (entweder über einen 3G-Dongle auf einem Laptop oder direkt auf einem mobilen Gerät), wird eine leere, weiße Seite ohne Inhalt jeglicher Art geliefert. Es scheint, als hätten wir eine leere Anfrage zurückgegeben.

In bestimmten Proxy-Netzwerken bekommen wir ein ähnliches Problem, indem sie sagen, dass unsere Anfrage zu groß ist. Diese Art von Sinn macht Sinn, da sie nur bestimmte Seiten betrifft, und ich würde annehmen, dass die Mobilfunkanbieter alle möglichen Proxy-Server auf ihrer Seite betreiben.

Ich konnte jedoch keine Informationen darüber finden, was eine Anfrage darstellen würde, die zu groß war. Ich habe eine der fraglichen Seiten beschrieben, hier sind einige der Statistiken, die ich für relevant hielt:

  

HTML-Inhaltsgröße: 33.04KB komprimiert, 50.65KB unkomprimiert
Gesamtgröße aller Stylesheets (4 Dateien): 32.39KB komprimiert, 181.65KB unkomprimiert
Gesamtgröße aller externen JS (24 Dateien): 227.82KB komprimiert, 851.46KB unkomprimiert

Für mich ist die komprimierte Größe des Inhalts nicht übertrieben, aber vielleicht liege ich falsch. Kann mir jemand sagen, was ich tun kann, um dieses Problem zu lösen, da es mir wirklich schwer gefallen ist, eine definitive Information dazu zu finden.

    
pauldunlop 10.05.2012, 09:27
quelle

2 Antworten

0

Wir haben dieses Problem tatsächlich gelöst und es war auf die Größe und Anzahl der Set-Cookie-Elemente im Antwortheader zurückzuführen. Wir haben festgestellt, dass wir einen Fehler hatten, bei dem es fast 100 Set-Cookie-Elemente in der Kopfzeile gab. Durch Beheben dieses Fehlers und Reduzieren der Größe der Werte wurde das Problem behoben

    
pauldunlop 10.07.2014, 16:14
quelle
2

Was die MVC betrifft, sind 3G-Netze nicht anders als WLAN. Es gibt jedoch eine Beschränkung für die Größe der Dateien, die Mobilgeräte zwischenspeichern können. In diesem Fall werden diese Dateien vom Server bei jedem Postback angefordert.

Da einige der Seiten funktionieren, denke ich, dass es eine gute Idee ist, das Problem auf einen bestimmten Punkt des Fehlers zu beschränken, als in wild zu suchen.

Sie können Probleme debuggen, die mit einem 3G-Dongle und Firebug in den Firefox- oder Chrome-Entwicklertools möglich sind

  • Stellen Sie sicher, dass an erster Stelle keine Java Script-Fehler auftreten, die das Problem verursachen
  • Bestätigen Sie, dass die Javascript / CSS / HTML-Dateien tatsächlich an den Client geliefert werden. (Firebug auf dem Client). Überprüfen Sie auf dem Server die IIS-Protokolle oder MS Network Monitor, oder erstellen Sie einen HTTP-Proxy, mit dem Sie den Datenverkehr überwachen können. Versuchen Sie, mit wem Sie sich auch immer wohl fühlen.
  • Sie haben fast 30 Anfragen nur für css / java script / html und die Anzahl kann höher sein, wenn Sie Bilder haben. Das Ausfüllen all dieser Anfragen kann für 3G ewig dauern. Versuchen Sie, die Java Script-Dateien zu bündeln und die Anzahl der Anfragen zu reduzieren. Browser haben eine Begrenzung der Anzahl der gleichzeitigen Anfragen, die sie machen können, und fügen sie zu allen hinzu (Firefox, glaube ich, kann ungefähr 10 gleichzeitige Anfragen machen).
Syam 16.05.2012 03:28
quelle