Heute habe ich mit einigen Freunden in der MSN-Gruppe über die Leistungsoptimierung von ASP.net-Programmen gesprochen.
Fassen wir nun die Optimierungsmethoden zusammen:
1. Datenbankoptimierung, einschließlich Tabellenstrukturoptimierung, Indexoptimierung, SQL-Anweisungsoptimierung und Optimierung gespeicherter Prozeduren
2. Optimieren Sie ViewState
3. Verwenden Sie Caching
4. Generieren Sie statische Seiten (hauptsächlich für das Front-End von Informationsveröffentlichungssystemen, die nicht sehr interaktiv sind).
5. Verwenden Sie Front-End IIS/Apache, um Anforderungen für statische Seiten, Bilder und JS-Dateien zu verarbeiten
6. Optimierungsalgorithmus
7. Zum Thema Performance-Tuning kann jeder gerne hinzufügen
: Der Rat fast aller Experten lautet: Wenn es keine genaue Leistungsmessung gibt, führen Sie kein Performance-Tuning durch. Eine Optimierung ohne Benchmark-Leistungstests hat im Grunde keine weiteren Vorteile, außer dass der Systemcode durcheinander gebracht wird. Der Effekt, den Sie erzielen, wenn Sie hart daran arbeiten, einen Algorithmus von 0,1 Sekunden auf 0,01 Sekunden zu verbessern, geht häufig durch eine schlechte Select-Anweisung verloren.
Daher sind die vorherigen Methoden kein Allheilmittel. Um sie abzustimmen, müssen Sie zunächst verstehen, wo das System langsam ist. Suchen Sie niemals in Eile einen Arzt auf. Der folgende Inhalt stammt aus meiner persönlichen Berufserfahrung, nicht alle Systeme können angewendet werden, bitte denken Sie daran! ! ! !
Lassen Sie uns diese vier Optimierungsmethoden analysieren:
Bei Anwendungen vom Typ OA/Business-Management-System ist die Datenbankoptimierung aus mehreren Gründen oft ein wichtiger Punkt:
1. CRUD in der Datenbank ist der häufigste Vorgang in diesen Systemen.
2. Vorgänge im Datenbanksystem verursachen häufig Festplatten-E/A (da Datenbankdateien und Protokolle auf der Festplatte gespeichert werden).
3. Anwendungsoperationen auf dem Datenbanksystem erfolgen häufig prozess- oder sogar maschinenübergreifend. (Festplatten-E/A + Netzwerk-E/A, egal wie schnell die CPU ist oder wie viel Speicher vorhanden ist, es liegt außerhalb unserer Reichweite)
Daher stellen diese Vorgänge in der Datenbank häufig den Leistungsengpass des gesamten Systems dar.
Wenn man also diese allgemeine Richtung kennt, wie kann man dann herausfinden, welche SQL- oder gespeicherten Prozeduren langsam sind? Dies erfordert die Kombination des Profilers der Datenbank.
Für SQL Server können Sie diesen Artikel lesen.
http://www.microsoft.com/china/msdn/library/data/sqlserver/Profiler.mspx?mfr=true
Für Oracle können Sie diesen Artikel lesen
http://www.javaeye.com/post/117389
2. ViewState, dieser Dongdong ist relativ groß und wird einen gewissen Einfluss auf Internetanwendungen haben. Bezüglich der Optimierung hat der Garten bereits darüber gesprochen, sodass Sie selbst danach suchen können.
3. Meine Meinung zur Verwendung des Caches stimmt nicht sehr mit der einiger Freunde in der MSN-Gruppe überein. Ein Freund in der MSN-Gruppe glaubt, dass der Cache eine Reihe statischer Variablen oder einige Variablen sein kann, die von einem Cache-Controller gesteuert werden. Ich persönlich denke, dass ein solcher Cache in einer Umgebung mit einem Server möglicherweise eine gute Leistung erbringt. In einer Umgebung mit mehreren Servern wird ein solcher Cache zu einem Leistungsengpass, da die Anwendung oder der Cache-Controller den Cache-Inhalt mehrerer Prozesse sorgfältig sicherstellen muss . konsistent. Dieser Prozess verringert die Skalierbarkeit des Programms erheblich. Stellen Sie sich eine Webfarm mit 100 Servern vor. Eine Cache-Änderung in einem Prozess erfordert eine Benachrichtigung und Bestätigung, dass die verbleibenden 99 Server korrekt geändert wurden.
Dafür ist Memcache eine relativ gute Lösung. Das bekannte Wiki-Produkt mediawiki nutzt es als Cache-Server. Memcache verfügt auch über eine .net-Client-API.
4. Ich verstehe es nicht sehr gut. Bitte geben Sie einige Ratschläge von Experten
. 5. Es gibt viele Einführungen im Internet, insbesondere zu Java. Es gibt viele Einführungen zu Apache mit Tomcat. Googelt es selbst.
6. Diese Optimierung ist am kompliziertesten und der Effekt ist möglicherweise am wenigsten offensichtlich. Wenn Sie es tun müssen, lassen Sie die acht Unsterblichen das Meer überqueren und ihre magischen Kräfte zeigen.
http://www.cnblogs.com/ncindy/archive/2006/11/07/553533.html