[Erp5-poland] testowanie wydajności, szukanie wąskich gardeł - UI i odczucia userów
bartek
bartek w erp5.pl
Pon, 26 Lis 2007, 10:30:30 CET
Łukasz Nowak wrote:
> Witam,
>
> Wstępem - czy wydaje mi się, czy Zope-2 jest szybkościowo-wydajnościowy
> słaby? I wcale się nie skaluje - bez użycia ZEO czy clusteringu?
> Zakładam, że tak.
Nie wiem czy to jest akurat zope-2 (tj nie wiem czy zope-1 i zope-3 są
jakoś znacząco szybsze), ale generalnie rzeczywiście rakieta to nie jest.
>
> Mamy coraz więcej różnorodnie powiązanych ze sobą danych w systemie. Od
> pewnego czasu zaczynają być problemy z wydajnością. Np. wyświetlanie
> accounting_module listboxa trwa...8 sekund. Niektóre raporty generują
> się po 20 sekund, a sposób ich używania czy potrzeby firmy zakładają,
> że powinny być dostępne w 1-2 sekundy.
>
Można by spróbować przechowywać wartości które są często wyliczane. Np
wyliczenie stanu magazynowego dla produktu to jest sporo pracy dla
systemu, a prawdopodobnie robisz to bez przerwy do prawie każdego
raportu. Można by więc wyliczać stan przy pomocy interaction workflow i
przechować go gdzieś - GuidelinesForCodingCrimes podają dwa rozwiązania,
poza tym być może można by wykorzystać cache (jeżeli tylko da się
odświeżyć cache dla konkretnej wartości a nie od razu cały, trzeba by
zajrzeć do API).
Bartek
> Mam ogólne pytanie - w jaki sposób - nie uciekając się do technologii
> testowania UI w stylu mechanize, etc - wytestować wydajność formatek?
> Byłbym wdzięczny za URI na sieci do analizy problemu. Na razie moje
> profilery są dość proste:
>
> ==SNIP==
> ## Script (Python) "profik"
> ##bind container=container
> ##bind context=context
> ##bind namespace=
> ##bind script=script
> ##bind subpath=traverse_subpath
> ##parameters=
> ##title=
> ##
> for i in range(1,6):
> b = DateTime().timeTime()
> context.accounting_module.view()
> e = DateTime().timeTime()
>
> print i,e-b
>
> request=context.REQUEST
> request.RESPONSE.setHeader('Content-type', 'text/plain')
> return printed
> ==SNIP==
>
> Mam zamiar potworzyć sobie klasy, które wyliczą średnie czasy generacji
> różnych formatek na portal type'ach, z ewentualnym testowaniem wywołań
> okrojonych (np. listbox z mniejszą ilością kolumn, aby stwierdzić, czy
> jakaś konkretna nie kładzie systemu na kolana).
>
> Jeśli jesteście zainteresowani współpracą, macie propozycje, uwagi czy
> znacie już temat byłbym wdzięczny za sugestie.
>
> Miłego weekendu,
> Łukasz
>
--
"feelings affect productivity. (...) unhappy people write worse
software, and less of it."
Karl Fogel, "Producing Open Source Software"
More information about the Erp5-poland
mailing list