Troba l'assassí del rendiment
L'optimització del rendiment dels serveis en línia és gairebé supersticiosa. Un grup de programadors es van enfrontar a una gran quantitat de codi incomprensible i van endevinar si l'altra part utilitzava tota la CPU. Dediqueu molt de temps a gravar registres, fullejant els registres massius dia i nit, intentant trobar l’assassí del rendiment.
Tanmateix, amb fibjs, tot això serà més senzill. Com que fibjs té una potent compatibilitat amb el perfilador de memòria i CPU, i és molt convenient d’utilitzar.
Registre
El perfilador de cpu fibjs start és extremadament senzill, augmenta l' --prof
opció d' inici . L'interval de registre predeterminat és de 1000 ms, amb una optimització profunda, necessitareu una anàlisi més precisa del registre i, a continuació, podeu utilitzar l' --prof-interval
interval establert. L'exemple següent registra el registre de treball de fibjs cada 10 ms.
1fibjs --prof --prof-interval=10 main.js
Registre de processament
Després del final de l'operació normal, o bé utilitzeu ctrl_c al final del procés, el directori actual generarà un fitxer de registre, el nom del fitxer és que fibjs-xxxx.log
, en aquest moment, podeu utilitzar el --prof-process
processament de registre generat:
1fibjs --prof-process fibjs-xxxx.log prof.svg
Després d'executar, utilitzeu el navegador per obrir prof.svg, podeu veure el mapa de flames d'aquest registre:
podeu fer clic per veure la imatge a mida completa, a la imatge a mida completa, podeu utilitzar el ratolí per veure informació més detallada : prof. svg .
Interpretació del mapa de flames
Al gràfic de flama generat, cada bloc de color representa un punt d'enregistrament. Com més llarg sigui el bloc de colors, més vegades s'ha enregistrat; cada línia representa una capa de pila de trucades i, com més capes, més capes es diuen; es posa cap per avall, com més baix sigui el bloc de colors, més serà la funció original.
Hi ha dos tipus de blocs de colors, un és vermell i l’altre blau. Al perfilador de fibjs, el vermell representa les operacions JavaScript i el blau les operacions io o les operacions natives. Depenent del problema que hàgiu de resoldre, l'àrea en què us heu de centrar serà diferent. Per exemple, si heu de resoldre el problema de l’alta ocupació de la CPU, heu de prestar atenció al bloc de color vermell en aquest moment; i si la vostra aplicació, l’ocupació de la CPU no és alta, però la resposta és lenta, parar atenció al bloc de color blau. Com més gran sigui el bloc de colors prop de la part superior, més important haurà de preocupar-se i optimitzar-se.