Wpis z mikrobloga

Jakie są możliwości optymalizacji szybkości działania aplikacji?

Temat dotyczy kilku technologii, a ja chciałbym mieć pełen obraz względem tego jakie mam pole działania.

Dotychchczas skupiałem się na
1. Optymalizacji kodu wewnątrz Akcji (usunięcie zbędnego kodu, przesunięcie niekrytycznego kodu typu WRITE do side-threads)
2. Optymalizacji zapytań do bazy danych (re-think queries, correct order (where>orderby>sort>skip>limit), indexy)
3. Frontend - tu niestety nie mam dużego doświadczenia, ale chętnie posłucham lepszych
4. Upakowanie kodu HTML za pomocą WebMarkupMin

+. najnowsze stabilne wersje bibliotek używanych przez aplikację.

Jakie jeszcze mam możliwości polepszenia szybkości działania aplikacji? Od strony logiki biznesowej nie mogę nic odjąć aplikacji - jest minimum potrzebnej funkcjonalności (e.g. brak przesadnie rozbudowanej wyszukiwarki).

#csharp #programowanie #aspnet #aspnetmvc #mongodb #sql #html (dałbym jeszcze # javascript, ale myślę że przesadzam)
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@TurboTapir:
Jakieś generyczne rady typu używaj asynców wszędzie ;)

VS ma w sobie profiler, który w trakcie działania aplikacji pozbiera dane - i dowiesz się co zabiera ile czasu i wtedy będziesz wiedział nad czym warto się skupic.

Z frontu też nie pomogę za bardzo
  • Odpowiedz
@TamamShud: ja bym sugerowal zaczac od optymalizacji bazy - sprawdzenie struktury, analiza planow zapytan, optymalizacja. w wiekszosci przypadkow gdy aplikacja korzysta z bazy w sposob nietrywialny to wlasnie w tym miejscu mozna uzyskac najwieksze optymalizacje
  • Odpowiedz
@TamamShud: Do bazy danych to możesz jeszcze zobaczyć, czy możesz zrobić tabele cachujące żeby nie używać złączeń.

Możesz napisać jak rozkłada się czas na poszczególne działki, że pytasz nas o to co możesz zrobić? Jak mam problem w wydajnością to sprawdzam, co jest przyczyną HTM, JS, backend, baza danych. Wtedy jest jasne na czym trzeba się skupić.
W chromie masz narzędzie do profilowania JS i dość szybko można zorientować się
  • Odpowiedz
@TamamShud: Optymalizację zacznij od zmierzenia gdzie jest problem.

Jak poprawisz dorzucisz dobry indeks do bazki, żądanie może Ci się skrócić o połowę.

Jak będziesz zajmować się pierdołami typu WebMarkupMin, to więcej będzie straty na Twojej pracy niż zysku na pracy
  • Odpowiedz