エンジニアがパフォーマンスに時間を浪費する理由

こんにちは、ミハイルユディンです。AvitoのAndroidエンジニアです。パフォーマンスの用途とは何か、それを製品に実装する方法を教えてください。2018年の秋に、パフォーマンスチームができました。私たちを助けてくれたステップとツールがあるので、今こそ私たちの経験を共有する時です。





パフォーマンスとは



 Perceived performance.   -  — , . . , , .



,   , - . , — , . ,  100—300  . -   —   ,  80 . .



  . ,   - ,   .   , . , , .  —  .



, .   , ,   .     — , . , , - .



, .   , - .





  SEO-.  . , . , . , , , .



,   .  - , , . , .  ,  ,  , .





 —   -?   ,  ?   . , ,   .



. , -. , ,  — .     — . : , ,   - ?   .



,  . ,   ,  — .    .   , . .





. ,    ,   . ,   :



  • Opentracing (Jaeger). , request ID , .
  • The Four Golden Signals: Latency, traffic, error, saturation. , .  , , , . , .


, :



  •   . :   ,   . - , , , ,   . , . . ,   .
  •    .    . ,  .
  • . , . , . . ,  PHP  .
  • . .   .
  • . , . ,   , .   .   ,   .
  • Time to content. , ,  -.  -  , .
  • . . , , . ,   .


  .   « »   .  . ,   .





,



 , .     ,   -  .  , . , :



  • Google Lighthouse. , .  CI/CD.
  • Overlooker. , Lighthouse,   . , . , -  . .


  :



  • . -   .
  • CSS. , . .
  • . , .   .


-,  —  ,  . ,   Service Level Agreement. , , .  — , .  —   , .  . SLA.   , . , .





-. , . , . ,  — - , , . , ? ,  ?



 — . , . - — .   ,  . , . , — , , . - .



-.  — .



,  .   . ,  — . ,   .



— , , . ,   , . , .  — .



«» . . 30    , .



,  . ,    . ,     , 150      .   1736 . ,   73,7 ,   23,5  . ,     1,6  , . ,    .



. , , . ,   product owner. ,   .   , .  .



.   -.  ,  .  .



 . , .    —  .  -, .   , , .




All Articles