Projektowanie wysokowydajnych aplikacji

Głównym celem szkolenia jest prezentacja podstawowych pojęć, zasad i podejść wykorzystywanych podczas projektowania wysokowydajnych systemów.
Kod: ARC-008
Czas trwania: 24 godzin

Opis szkolenia

Już przed rozpoczęciem projektowania jakiegokolwiek systemu oprogramowania trzeba wziąć pod uwagę, że ze względu na pewne ograniczenia może on w dowolnym momencie okazać się wysokowydajnym systemem. Już w trakcie tworzenia wysokowydajnej aplikacji należy ustalić, jakie parametry będą określać wysoką wydajność systemu.

Niniejsze szkolenie określa różnice między systemami o wysokim obciążeniu, wysokiej dostępności i wysokiej wydajności. Głównym celem szkolenia jest prezentacja podstawowych pojęć, zasad i podejść wykorzystywanych podczas projektowania wysokowydajnych systemów.

Często słyszana fraza: "To powinno pracować szybko!" nie jest wymogiem. Uczestnicy szkolenia dowiedzą się, jak prawidłowo pracować z wymogami wydajności i rozpoznawać je.

Podczas szkolenia rozpatrywane są przykłady i ćwiczenia dotyczące utraty wydajności w systemie aplikacji oraz główne metody w walce o przywrócenie wymaganej wydajności systemu. Tematy poruszane podczas szkolenia dotyczą praktycznych przykładów użycia szablonów używanych w projektowaniu systemu aplikacji z wysokimi wymogami wydajności oraz wiadomości na temat głównych szablonów, które mogą negatywnie wpłynąć na wydajność systemu.

Szkolenie ze szczególną uwagą omawia przygotowanie systemu do testowania i analizę wyników testowych. Uczestnicy zostaną zapoznani z procesem tworzenia programu oraz różnymi metodami testowania systemów z wysokim obciążeniem i modelem obciążenia systemu. Omówiony zostanie także przegląd metodyk, pozwalających na przeprowadzenie oceny ilościowej wydajności systemu.

Jako że programiści systemów często muszą radzić sobie z problemami, związanymi z tworzeniem systemów o wysokim obciążeniu, które zapewniają przetwarzanie dużej ilości danych z określonymi wymogami co do czasu odpowiedzi oraz ilości danych, szkolenie to może okazać się pomocne nie tylko dla architektów, lecz także dla menedżerów projektów i starszych programistów.

Cele

Pojęcie systemu o wysokiej wydajności
  • High-Performance application, High-Load application, High-Availability application.
  • Zarządzanie wydajnością aplikacji
  • Zależność kosztu naprawy błędów od etapu identyfikacji i etapu wystąpienia błędu
Główne parametry wydajności
  • Główne parametry opisujące wydajność systemu
  • Model wydajności systemu
Analiza wymagań dla wysokowydajnych systemów
  • Określenie niefunkcjonalnych wymagań dla wysokowydajnych systemów
  • Praca z nieścisłościami podczas określania wymagań dla wydajności
  • Kompletność wymagań
  • Ćwiczenia praktyczne
  • Analiza wymagań dla nieścisłości i kompletności
Projektowanie wysokowydajnych systemów
  • Atrybuty jakości systemu
  • Główne przyczyny obniżenia wydajności systemu
  • Główne metody stosowane dla podwyższenia wydajności systemu
  • Ćwiczenia praktyczne
  • Część 1: Budowanie algorytmu sortowania obiektów z użyciem równoległego sortowania. Omówienie zbudowanego algorytmu
  • Część 2: Ilościowa ocena dostępu do bazy danych przy użyciu indeksów. Analiza zależności czasu dostępu od długości klucza i ilości wejść do bazy danych
Szablony dla realizacji wysokowydajnych systemów
  • Główne klasy szablonów stosowane do budowania wysokowydajnych systemów (GRASP, Architecture patterns, Application Integration patterns)
  • Przykłady praktycznego zastosowania szablonów we współczesnych standardach
  • Przykłady praktycznego zastosowania szablonów we współczesnych systemach integracji podczas budowy frameworków
  • Ćwiczenia praktyczne
  • Optymizacja wydajności aplikacji sekwencyjnie przetwarzającej dużą ilość danych
Kodowanie wysokowydajnych systemów
  • Główne zagadnienia dotyczące kodowania wysokowydajnych systemów
  • Metody optymizacji współczesnych kompilatorów i środowisk wykonania
Testowanie wysokowydajnych systemów
  • Rodzaje testów używanych przy dokazaniu wydajności systemu
  • Przygotowanie do testowania (tworzenie scenariuszy i budowanie modelu obciążenia)
  • Analiza wyników testowania
Optymizacja wydajności dla aplikacji
  • Optymizacja wydajności systemu
  • Sposoby optymizacji wydajności złożonych systemów rozprowadzonych
  • Optymizacja wydajności i poprawa stabilności aplikacji Java
  • Poprawa wydajności baz danych
Metodologia SPE
  • Wprowadzenie do metodologii SPE: historia, granice użytkowania
  • Zastosowanie modelu wydajności systemu w analizie współczesnych systemów
  • Zastosowanie SPE podczas projektowania systemu
  • Metodyka analizy systemów przy użyciu SPE
  • Tworzenie modelu wydajności systemu testowego

Plan szkolenia

  • Określenie parametrów systemu o wysokiej wydajności
  • Jak analizować wymagania systemowe, związane z obciążeniem systemu
  • Planowanie procesu rozwoju systemu z wysoką wydajnością
  • Projektowanie systemów przy użyciu optymalnych metod w celu zapewnienia wymaganej wydajności
  • Jak współpracować z zespołem testowym podczas przeprowadzania testów obciążeniowych
  • Jak optymizować systemy z wysokimi wymogami wydajności
  • Użycie metodyki SPE w celu zapewnienia wysokiej wydajności systemu na etapie projektowania

Grupa docelowa

  • Architekci
  • Projektanci
  • Analitycy
  • Menedżerowie projektów
  • Team leaderzy
  • Starsi programiści

Zapisz sie na nastepny kurs
+
Wczesniejsza rejestracja gwarantuje priorytet. Powiadomimy panstwa o nastepnym zaplanowanym szkoleniu na ten temat.
Bucharest 1980 zł
Kraków 1980 zł
Wroclaw 1980 zł

Uprzejmie informujemy, że płatność za każde szkolenie będzie realizowana w lokalnie obowiązującej walucie, tj. w przypadku Polski w polskich złotych. Do podanej ceny jednostkowej, zgodnie z obowiązującymi przepisami podatkowymi należy doliczyć 23% podatek VAT. Jednocześnie informujemy, że podane ceny mogą ulec zmianie w zależności od lokalizacji szkolenia oraz trybu jego realizacji.

Szkolenia, które mogą Cię zainteresować:
ARC-00874680

Zapisz się

Imię*
Nazwisko*
Firma
Email*
Preferred Location
Telefon
Twój komentarz
   Zapisz się na nasz miesięczny newsletter
Success
Thank you!
Your request has been recieved.