Ho sviluppato un sistema di punto vendita utilizzando MVC 4. I tempi di risposta e caricamento su Windows e Mac sono immediati ma su un iPad ci vogliono 8-13 secondi per caricare una pagina o eseguire un azione come aggiungere oggetti al carrello. Per migliorare la velocità dell'applicazione web ho attivato la compressione in IIS e minified tutti i miei file java script Ho anche usato raggruppamento per raggruppare i seguenti file .js insieme che presumibilmente migliora caricamento delle pagine così:Sito Web MVC 4 molto lento su iPad
- jquery-1.8 .2.min.js
- jquery.easing.1.3.js knockout-2.2.0.js
- b.popup.min.js (utilizzato per la visualizzazione di un popup modale solo 6KB)
Gli altri file javascript che uso sulle pagine a tra 5KB e 15KB. Dopo aver fatto tutto questo, l'applicazione sembra essere più veloce di alcuni secondi, ma richiede comunque un tempo inaccettabilmente lungo (8-10 secondi).
Qualcuno ha riscontrato problemi di prestazioni simili su un iPad e come è stato risolto? C'è qualcos'altro che posso fare per migliorare le prestazioni?
Sto utilizzando Windows Server 2003 e IIS 6.0
Ecco il mio fagotto codice di registrazione:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-1.8.2.min.js",
"~/Scripts/jquery.easing.1.3.js",
"~/Scripts/knockout-2.2.0.js",
"~/Scripts/common/common.min.js",
"~/Scripts/popup.min.js"
));
bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/site.css"));
BundleTable.EnableOptimizations = true;
}
E questo è dove io lo chiamo sulla pagina master:
@using System.Configuration
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<meta name="apple-mobile-web-app-capable" content="yes">
<title>Prestige SSC</title>
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
@Styles.Render("~/Content/css")
<script type="text/javascript">
var screenRefreshTime = '@ConfigurationManager.AppSettings["ScreenRefreshTime"].ToString()';
screenRefreshTime = parseInt(screenRefreshTime);
</script>
</head>
<body>
@RenderBody()
</body>
</html>
Potrebbe essere la connessione di rete. Tutti e tre i dispositivi utilizzano la stessa rete? Nel mio ufficio, il wireless è molto più lento, quindi confrontare il mio PC con il mio iPad non avrebbe senso. Hai provato Chrome su iPad? * Sembra * come ottenere prestazioni migliori con Chrome su Safari. –
Ho provato su un laptop Windows, mac book e tablet Samsung con Windows 8 utilizzando lo stesso Wi-Fi dell'iPad e tutti e tre sono molto veloci. Ho solo problemi di prestazioni con l'iPad per qualche motivo. Sì, anch'io ho provato ad accedere al sito sia su Chrome che su Safari e sono entrambi lenti. –
Specifica la versione di generazione iPad su cui hai verificato. Il tuo sito funziona lentamente su tutte le versioni di generazione iPad? Il motivo del problema può essere l'associazione dei dati lato client (come vedo che usi Knockout). Quindi, suppongo che dovresti guardare in questa direzione. –