Z czasem każda aplikacja, no prawie każda – przynajmniej ta zauważona, zetknie się z problemem wydajności.
Od kilku tygodni walczę z poprawą wydajności pewnej aplikacji, zbudowanej w oparciu o Springframework, Hibernate i MySQL. Oto kilka pomysłów co możesz zrobić:
Włącz logowanie długich zapytań (long query log). Maksymalny czas wykonania zapytania ustaw dość agresywnie. Przynajmniej 3-4 sekundy – wszystko powyżej tego czasu będzie logowane. Zgromadzi to dość dużą ilość informacji – ale z pewnością przydadzą się one.
Do analizy logu możesz użyć narzędzia mysqlsla – po prostu rewelacja, wyciągnie te zapytania, które zajmują naprawdę …
Z czasem każda aplikacja, no prawie każda – przynajmniej ta zauważona, zetknie się z problemem wydajności.
Od kilku tygodni walczę z poprawą wydajności pewnej aplikacji, zbudowanej w oparciu o Springframework, Hibernate i MySQL. Oto kilka pomysłów co możesz zrobić:
Włącz logowanie długich zapytań (long query log). Maksymalny czas wykonania zapytania ustaw dość agresywnie. Przynajmniej 3-4 sekundy – wszystko powyżej tego czasu będzie logowane. Zgromadzi to dość dużą ilość informacji – ale z pewnością przydadzą się one.
Do analizy logu możesz użyć narzędzia mysqlsla – po prostu rewelacja, wyciągnie te zapytania, które zajmują naprawdę …
W pewnym momencie rozwoju aplikacji najpoważniejszym wyzwaniem staje się zapewnienie wydajności. Przy wzroście ilości użytkowników wzrasta obciążenie systemu. Wzrasta również ilość przechowywanych danych i operacje na tych samych tabelach zajmują znacznie więcej czasu niż dotychczas.
Często trudno jest ocenić w którym miejscu aplikacji tracimy najwięcej, dodatkowo takich miejsc jest wiele i trudno wybrać, które fragmenty kodu optymalizować najpierw, aby uzyskać jak najwięcej.
Od jakiegoś czasu zastanawiam się, jak obecnie podejść do tworzenia oprogramowania dla urządzeń mobilnych. Częstym, jeżeli nie wyborem jest tworzenie aplikacji natywnych – czyli budowanych w oparciu o SDK danego producenta (w przypadku Androida grupy producentów/urządzeń).
Wybór taki przypomina decyzje, jakie podejmowane były, i w sumie nadal są, w przypadku aplikacji na zwykłe komputery. Inaczej tworzymy aplikację na Windows & inaczej na Mac OS X, jeszcze inaczej na Linux’a (oczywiście to uproszczony pogląd).
Sytuację to ogromnie zmienił trend jakim stał się SaaS, czyli aplikacje dostępne 24h na dobę, w przeglądarce, dla dowolnej …
Witam!
Jakiś czas temu znajomy strasznie męczył mnie, by mu pomóc zareklamować się w Google. Gość ma konto AdWords, pokazał mi jak to funkcjonuje, i przyznam się, że z jako takim obyciem wśród aplikacji internetowych – przestraszyłem się! Chodziło mu o jedną prostą reklamę, no – może ambitniejszym zadaniem było to, że znajomy prowadzi firmę w Bielsku – i tylko tam chciał się reklamować.
Często pisząc krótkie “spike’i” (dla nie wtajemniczonych mianem spike określa się testowe/demonstracyjne aplikacje, lub ich zmodyfikowane fragmenty) potrzebujemy gdzieś zapisać lub przesłać obiekt Javy w formacie XML’a. Znajdziemy całą masę rozwiązań wspomagających to zadanie, jednak gdy zależy nam na czasie, niekiedy najprostsze rozwiązania są najlepsze.