Π Π°Π±ΠΎΡ‚Π° с высоконагруТСнными конфигурациями систСмы 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8 Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ понимания инструмСнтов диагностики. Когда систСма Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ, ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ администраторы ΠΈ программисты ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ встроСнным ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π°ΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Однако сухиС Ρ†ΠΈΡ„Ρ€Ρ‹ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ… часто ставят Π² Ρ‚ΡƒΠΏΠΈΠΊ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… спСциалистов, особСнно ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΎ спСцифичСских ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ….

Одним ΠΈΠ· самых Π·Π°Π³Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² являСтся ΠΏΠΎΠ»Π΅ «ВрСмя чистоС». НСпониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ формируСтся этот ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΈ Π² Ρ‡Π΅ΠΌ ΠΎΠ½ измСряСтся, ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹ΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ ΠΏΡ€ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ запрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ являСтся ΡƒΠ·ΠΊΠΈΠΌ мСстом, игнорируя Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ ΠΈΠ»ΠΈ сСтСвых Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρƒ «чистого Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈΒ» Π² контСкстС Π·Π°ΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠœΡ‹ выясним, Ρ‡Π΅ΠΌ ΠΎΠ½ΠΎ отличаСтся ΠΎΡ‚ ΠΎΠ±Ρ‰Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния, ΠΊΠ°ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эти Π΄Π°Π½Π½Ρ‹Π΅ Π² тСхнологичСском ΠΆΡƒΡ€Π½Π°Π»Π΅ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ измСрСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° для отобраТСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ².

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ врСмя чистоС Π² контСкстС 1Π‘

ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ «ВрСмя чистоС» (Clean Time) Π² экосистСмС 1Π‘ относится ΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ процСсс ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΠ» нСпосрСдствСнно Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ врСмя оТидания Π²Π½Π΅ΡˆΠ½ΠΈΡ… рСсурсов. Π­Ρ‚ΠΎ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΆΠ΄Π°Π» Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°, ΠΈ Ρ‚Π΅ΠΌ, сколько процСссорных Ρ†ΠΈΠΊΠ»ΠΎΠ² Π±Ρ‹Π»ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ Π·Π°Ρ‚Ρ€Π°Ρ‡Π΅Π½ΠΎ Π½Π° вычислСния.

Когда Π²Ρ‹ запускаСтС Π·Π°ΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‡Π΅Ρ€Π΅Π· стандартный ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π—Π°ΠΌΠ΅Ρ€ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π»ΠΎΠ³ΠΈ тСхнологичСского ΠΆΡƒΡ€Π½Π°Π»Π°, Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄Π²Π° основных значСния. ΠŸΠ΅Ρ€Π²ΠΎΠ΅ β€” это ΠΎΠ±Ρ‰Π΅Π΅ elapsed time (ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠ΅Π΅ врСмя), Π° Π²Ρ‚ΠΎΡ€ΠΎΠ΅ β€” процСссорноС врСмя ΠΈΠ»ΠΈ «чистоС» врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ часто ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с диском, ΡΠ΅Ρ‚ΡŒΡŽ ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ Π‘Π£Π‘Π”.

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ, выполняСмая Π½Π° сторонС сСрвСра 1Π‘, ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ»Π³ΠΎ ΠΆΠ΄Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΎΡ‚ Π‘Π£Π‘Π” (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Microsoft SQL Server ΠΈΠ»ΠΈ PostgreSQL). Π’ этом случаС ΠΎΠ±Ρ‰Π΅Π΅ врСмя Π±ΡƒΠ΄Π΅Ρ‚ большим, Π° врСмя чистоС β€” малСньким, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ сСрвСр 1Π‘ просто простаивал Π² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΎΡ‚ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: НС ΠΏΡƒΡ‚Π°ΠΉΡ‚Π΅ «врСмя чистоС» с Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ выполнСния запроса ΠΊ Π‘Π£Π‘Π”. Π­Ρ‚ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ·ΠΌΠ΅Ρ€ΡΡŽΡ‚ΡΡ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… уровнях стСка Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ВрСмя чистоС относится ΠΊ исполнСнию ΠΊΠΎΠ΄Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘.

πŸ’‘

Если Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‰ΠΈΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈ чистым Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ огромная, ΠΈΡ‰ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π½Π΅ Π² ΠΊΠΎΠ΄Π΅ 1Π‘, Π° Π² индСксах Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ сСтСвой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСром ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ сСрвСром Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ….

Π•Π΄ΠΈΠ½ΠΈΡ†Ρ‹ измСрСния ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…

Вопрос ΠΎ Ρ‚ΠΎΠΌ, Π² Ρ‡Π΅ΠΌ измСряСтся врСмя чистоС, часто Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ споры ΠΈΠ·-Π·Π° Ρ€Π°Π·Π½ΠΎΠΉ точности отобраТСния Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… интСрфСйсах ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ Π² свойствах ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π·Π°ΠΌΠ΅Ρ€Π°, врСмя указываСтся Π² миллисСкундах.

Однако внутрСнняя Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ² 1Π‘ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΡˆΠ΅. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ свойств Π·Π°ΠΌΠ΅Ρ€Π° Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π—Π°ΠΌΠ΅Ρ€ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния с большСй Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, зависящСй ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π·Π°Π΄Π°Ρ‡ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ достаточно миллисСкунд, Π½ΠΎ ΠΏΡ€ΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ микросСкундных Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ Π² Ρ†ΠΈΠΊΠ»Π°Ρ… это становится ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹ΠΌ.

Рассмотрим основныС Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ:

  • πŸ•’ ΠœΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡƒΠ½Π΄Ρ‹ (мс) β€” стандартная Π΅Π΄ΠΈΠ½ΠΈΡ†Π° отобраТСния Π² интСрфСйсС Β«ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈΒ» ΠΈ Π² ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ².
  • ⏱️ Π‘Π΅ΠΊΡƒΠ½Π΄Ρ‹ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² сводных ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ… для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ Π΄ΠΎΠ»Π³ΠΎ (Π±ΠΎΠ»Π΅Π΅ 1000 мс).
  • ⚑ ΠœΠΈΠΊΡ€ΠΎΡΠ΅ΠΊΡƒΠ½Π΄Ρ‹ β€” доступны ΠΏΡ€ΠΈ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ Π°Π½Π°Π»ΠΈΠ·Π΅ Ρ‡Π΅Ρ€Π΅Π· API Π·Π°ΠΌΠ΅Ρ€Π°, Π½ΠΎ Ρ€Π΅Π΄ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Ρ€ΡƒΡ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

ΠŸΡ€ΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ Π»ΠΎΠ³Π° тСхнологичСского ΠΆΡƒΡ€Π½Π°Π»Π° (Π’Π–) Π²Π°ΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° контСкст события. Если событиС относится ΠΊ Π²Ρ‹Π·ΠΎΠ²Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° встроСнного языка, врСмя Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² мс. Если ΠΆΠ΅ это событиС оТидания (Wait), Ρ‚ΠΎ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½ΠΎΠΉ, ΠΈ Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ сравнСния с Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ чистым.

πŸ“Š Π’ ΠΊΠ°ΠΊΠΈΡ… Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ… Π²Ρ‹ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ врСмя выполнСния Π² 1Π‘?
ΠœΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡƒΠ½Π΄Ρ‹
Π‘Π΅ΠΊΡƒΠ½Π΄Ρ‹
Π’Π°ΠΊΡ‚Ρ‹ процСссора
НС ΡΠΌΠΎΡ‚Ρ€ΡŽ, ΠΌΠ½Π΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‰ΠΈΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈ чистым Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ

ΠšΠ»ΡŽΡ‡ ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π»Π΅ΠΆΠΈΡ‚ Π² ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹: ΠžΠ±Ρ‰Π΅Π΅ врСмя = ВрСмя чистоС + ВрСмя оТидания. Если вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚, Π½ΠΎ «врСмя чистоС» ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ составляСт всСго 50 мс, Π° ΠΎΠ±Ρ‰Π΅Π΅ β€” 5000 мс, Ρ‚ΠΎ оптимизация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° 1Π‘ Π½Π΅ даст Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

ВрСмя оТидания ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΈΠ· мноТСства Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ². Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° записи Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ SQL, ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ освобоТдСния сСмафора Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠΉ срСдС ΠΈΠ»ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с внСшними Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°ΠΌΠΈ. ВрСмя чистоС Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ сам ΠΊΠΎΠ΄ 1Π‘ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ.

Частая ошибка Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ видят ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий, хотя ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π² отсутствии индСксов Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Анализ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ этих Π΄Π²ΡƒΡ… Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠΊ позволяСт ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ ΠΎΡ‚ΡΠ΅Ρ‡ΡŒ Π»ΠΎΠΆΠ½Ρ‹Π΅ направлСния ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ ΠžΠ±Ρ‰Π΅Π΅ врСмя (мс) ВрСмя чистоС (мс) Π”ΠΈΠ°Π³Π½ΠΎΠ·
Π‘Π»ΠΎΠΆΠ½Ρ‹ΠΉ расчСт Π² Ρ†ΠΈΠΊΠ»Π΅ 1200 1150 ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ 1Π‘
Π’Ρ‹Π±ΠΎΡ€ΠΊΠ° ΠΈΠ· большой Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ 3500 200 ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Π‘Π£Π‘Π” ΠΈΠ»ΠΈ сСти
Π—Π°ΠΏΠΈΡΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° с Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ 5000 100 Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ (Locks) Π² Π±Π°Π·Π΅
Π’Ρ‹Π·ΠΎΠ² внСшнСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ 800 50 МСдлСнная внСшняя систСма

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС низкая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° нСпосрСдствСнно вычислСниями Π½Π° сторонС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях врСмя чистоС Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ½ΠΎ ΠΌΠ°Π»ΠΎ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΎΠ±Ρ‰ΠΈΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ выполнСния, Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° внСшниС Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ для Π·Π°ΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Для получСния достовСрных Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ чистом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ инструмСнтарий. ВстроСнный язык 1Π‘ прСдоставляСт класс Π—Π°ΠΌΠ΅Ρ€ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ† участка ΠΊΠΎΠ΄Π°.

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π·Π°ΠΌΠ΅Ρ€, достаточно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ экзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ—Π°ΠΌΠ΅Ρ€(). ПослС выполнСния Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° вызываСтся Π—Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒΠ—Π°ΠΌΠ΅Ρ€(), ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ становятся доступными для чтСния. Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ способ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΊΠΎΠ΄Π° 1Π‘, ΠΎΡ‡ΠΈΡ‰Π΅Π½Π½ΠΎΠΌ ΠΎΡ‚ случайных Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ интСрфСйса.

Π—Π°ΠΌΠ΅Ρ€ = Новый Π—Π°ΠΌΠ΅Ρ€ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ;

Π—Π°ΠΌΠ΅Ρ€.ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ—Π°ΠΌΠ΅Ρ€();

// ... Π’Π°Ρˆ ΠΊΠΎΠ΄ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ...

Для Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ = 1 По 100000 Π¦ΠΈΠΊΠ»

Π‘ΡƒΠΌΠΌΠ° = Π‘ΡƒΠΌΠΌΠ° + Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Π—Π°ΠΌΠ΅Ρ€.Π—Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒΠ—Π°ΠΌΠ΅Ρ€();

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("ЧистоС врСмя: " + Π—Π°ΠΌΠ΅Ρ€.ВрСмяВыполнСния);

Помимо ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Π·Π°ΠΌΠ΅Ρ€Π°, сущСствуСт Β«ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈΒ» (Performance Monitor), доступный Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ прСдприятия для администраторов. Он позволяСт ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ статистику Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎ всСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ сСансам. Π—Π΄Π΅ΡΡŒ Ρ‚Π°ΠΊΠΆΠ΅ отобраТаСтся ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° с чистым Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

β˜‘οΈ ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ Π·Π°ΠΌΠ΅Ρ€Ρƒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ИспользованиС тСхнологичСского ΠΆΡƒΡ€Π½Π°Π»Π° (Π’Π–) Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½Π°Π²Ρ‹ΠΊΠ° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ. Π’ Π»ΠΎΠ³Π°Ρ… Π’Π– события ΠΏΠΎΠΌΠ΅Ρ‡Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ, ΠΈ Π½Π΅ всС ΠΈΠ· Π½ΠΈΡ… содСрТат ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ чистом. НСобходимо ΠΈΡΠΊΠ°Ρ‚ΡŒ события с Ρ‚ΠΈΠΏΠΎΠΌ CALL ΠΈΠ»ΠΈ спСцифичСскиС события выполнСния запросов, Π³Π΄Π΅ Ρ€Π°Π·Π±ΠΈΠ²ΠΊΠ° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ прСдставлСна Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎ.

Анализ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΈ поиск ΡƒΠ·ΠΊΠΈΡ… мСст

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² Ρ†ΠΈΡ„Ρ€Ρ‹, Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΌΠ΅Ρ‚ΡŒ ΠΈΡ… ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. ВысокоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ чистого Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ. Π­Ρ‚ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ†ΠΈΠΊΠ»Ρ‹, Π²Ρ‹Π±ΠΎΡ€ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Β«Π² Π»ΠΎΠ±Β» Π±Π΅Π· использования запросов ΠΈΠ»ΠΈ inefficient использованиС ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Если Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ конкрСтная функция ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ Π»ΡŒΠ²ΠΈΠ½ΡƒΡŽ долю чистого Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, это прямой сигнал ΠΊ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, стоит Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ массива Π½Π° поиск ΠΏΠΎ индСксу ΠΈΠ»ΠΈ вынСсти тяТСлыС вычислСния Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ процСсс.

Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ контСкст выполнСния. Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ быстро Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² тСстовой Π±Π°Π·Π΅ с 100 Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ катастрофичСскоС врСмя чистоС Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π±Π°Π·Π΅ с ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ записСй. ВсСгда ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ Π·Π°ΠΌΠ΅Ρ€Ρ‹ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘. Π’ старых вСрсиях (Π΄ΠΎ 8.3.10) ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π·Π°ΠΌΠ΅Ρ€Π° Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½ΠΎΡΡ‚ΠΈ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Ρ… сцСнариях.

Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹ влияния Π½Π° чистоС врСмя

На врСмя чистоС ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π»ΠΈΡΡ‚ΡŒ сборщик мусора (.NET ΠΈΠ»ΠΈ встроСнный Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ). Если Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π·Π°ΠΌΠ΅Ρ€Π° происходила ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ очистка памяти, врСмя выполнСния ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ искусствСнно Π·Π°Π²Ρ‹ΡˆΠ΅Π½ΠΎ, хотя это Π½Π΅ относится ΠΊ Π»ΠΎΠ³ΠΈΠΊΠ΅ вашСго ΠΊΠΎΠ΄Π°.

ЧастыС ошибки ΠΏΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ Π·Π°ΠΌΠ΅Ρ€ΠΎΠ²

Одна ΠΈΠ· самых распространСнных ошибок β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСтся Ρ€Π΅Π΄ΠΊΠΎ. Если опСрация с высоким Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ чистым вызываСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² сутки ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ мСсяца, Π΅Π΅ оптимизация с 5 сСкунд Π΄ΠΎ 1 сСкунды Π½Π΅ даст ΠΎΡ‰ΡƒΡ‚ΠΈΠΌΠΎΠ³ΠΎ прироста для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ врСмя.

Другая ΠΊΡ€Π°ΠΉΠ½ΠΎΡΡ‚ΡŒ β€” ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Ρ… расходов самого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π°ΠΌΠ΅Ρ€Π°. ΠŸΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΈ ΠΎΡ‡Π΅Π½ΡŒ быстрых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ (ΠΌΠ΅Π½Π΅Π΅ 1 мс) ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½ΠΎΡΡ‚ΡŒ инструмСнта ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ само Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π· ΠΈ Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠ΅ врСмя Π½Π° количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ.

НС стоит Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ влиянии ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°. Запуск ΠΊΠΎΠ΄Π° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ (F5) Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ замСдляСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ искаТаСт ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ чистого. ВсС Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Π·Π°ΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ запуска Π±Π΅Π· ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°.

Для систСматизации процСсса поиска ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ:

  • πŸ” Локализация β€” Π½Π°ΠΉΡ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ с наибольшим ΠΎΠ±Ρ‰ΠΈΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ.
  • βš–οΈ Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ β€” ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ врСмя ΠΈ врСмя чистоС.
  • πŸ› οΈ ДСйствиС β€” Ссли чистоС врСмя Π²Π΅Π»ΠΈΠΊΠΎ, ΠΏΡ€Π°Π²ΠΈΠΌ ΠΊΠΎΠ΄ 1Π‘; Ссли ΠΌΠ°Π»ΠΎ, смотрим SQL ΠΈ ΡΠ΅Ρ‚ΡŒ.
πŸ’‘

Π“Π»Π°Π²Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄: ВысокоС «врСмя чистоС» = ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ 1Π‘. НизкоС «врСмя чистоС» ΠΏΡ€ΠΈ высоком ΠΎΠ±Ρ‰Π΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ = ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, сСти ΠΈΠ»ΠΈ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ.

Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ ΠΏΠΎ Π·Π°ΠΌΠ΅Ρ€Π°ΠΌ 1Π‘

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΡ‚ΡŒ врСмя чистоС для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ запроса ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…?

Π”Π°, Π½ΠΎ это дСлаСтся Π½Π΅ Ρ‡Π΅Ρ€Π΅Π· стандартный Π·Π°ΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠ΄Π° 1Π‘, Π° Ρ‡Π΅Ρ€Π΅Π· Π°Π½Π°Π»ΠΈΠ· выполнСния запроса Π² Π‘Π£Π‘Π” (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, SQL Profiler для MS SQL) ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ свойства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Запрос Π² 1Π‘, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ВрСмяВыполнСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±Π»ΠΈΠΆΠ΅ ΠΊ чистому Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ запроса Π΄Π²ΠΈΠΆΠΊΠΎΠΌ Π±Π°Π·Ρ‹.

ВлияСт Π»ΠΈ количСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ чистого?

КосвСнно Π΄Π°. ΠŸΡ€ΠΈ высокой ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΠΈ Π·Π° рСсурсы процСссора сСрвСра 1Π‘, ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ ОБ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‡Π°Ρ‰Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ контСкст, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ процСссорноС врСмя (чистоС врСмя) ΠΈΠ·-Π·Π° Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Ρ… расходов Π½Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², хотя основная Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ляТСт Π½Π° врСмя оТидания.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ… врСмя чистоС отличаСтся?

Π Π°Π·Π½Ρ‹Π΅ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ усрСдняСт Π΄Π°Π½Π½Ρ‹Π΅ Π·Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π», Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ Π·Π°ΠΌΠ΅Ρ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π°. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² «чистоС» врСмя Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ β€” Π½Π΅Ρ‚.

Как ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π·Π°ΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ссли ΠΎΠ½ замСдляСт Ρ€Π°Π±ΠΎΡ‚Ρƒ?

Π—Π°ΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‡Π΅Ρ€Π΅Π· панСль администрирования, ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы. Однако, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ класс Π—Π°ΠΌΠ΅Ρ€ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Π±ΠΎΠ΅Π²ΠΎΠΌ ΠΊΠΎΠ΄Π΅, Π΅Π³ΠΎ слСдуСт ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π² условия компиляции, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ созданиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ запись Π»ΠΎΠ³ΠΎΠ² ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡŽΡ‚ рСсурсы.

Π•ΡΡ‚ΡŒ Π»ΠΈ Ρ€Π°Π·Π½ΠΈΡ†Π° Π² ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° управляСмых ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ…?

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ Π² Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ… измСрСния Π½Π΅Ρ‚. Однако Π½Π° управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… большС слоСв абстракции (ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрноС взаимодСйствиС), поэтому Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‰ΠΈΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° интСрфСйса ΠΈ чистым Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ выполнСния сСрвСрного ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ сущСствСнной ΠΈΠ·-Π·Π° сСтСвых Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΠΈ сСриализации.