Мозък + VPS Π·Π° 30 Ρ€ΡƒΠ±Π»ΠΈ =?

Π’ΠΎΠ»ΠΊΠΎΠ²Π° Π΅ Ρ…ΡƒΠ±Π°Π²ΠΎ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ всички Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ ΠΌΠ°Π»ΠΊΠΈ Π½Π΅Ρ‰Π° са ΠΏΠΎΠ΄ Ρ€ΡŠΠΊΠ°: Π΄ΠΎΠ±Ρ€Π° Ρ…ΠΈΠΌΠΈΠΊΠ°Π»ΠΊΠ° ΠΈ Π±Π΅Π»Π΅ΠΆΠ½ΠΈΠΊ, подострСн ΠΌΠΎΠ»ΠΈΠ², ΡƒΠ΄ΠΎΠ±Π½Π° мишка, няколко Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΊΠ°Π±Π΅Π»Π° ΠΈ Ρ‚.Π½. Π’Π΅Π·ΠΈ Π½Π΅Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠΈ Π½Π΅Ρ‰Π° Π½Π΅ ΠΏΡ€ΠΈΠ²Π»ΠΈΡ‡Π°Ρ‚ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅Ρ‚ΠΎ, Π½ΠΎ добавят ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚ към ΠΆΠΈΠ²ΠΎΡ‚Π°. Π‘ΡŠΡ‰Π°Ρ‚Π° история Π΅ с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΠΈ настолни прилоТСния: Π·Π° дълги Π΅ΠΊΡ€Π°Π½Π½ΠΈ снимки, Π·Π° намаляванС Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Π°, Π·Π° изчисляванС Π½Π° Π»ΠΈΡ‡Π½ΠΈ финанси, Ρ€Π΅Ρ‡Π½ΠΈΡ†ΠΈ, ΠΏΡ€Π΅Π²ΠΎΠ΄Π°Ρ‡ΠΈ, ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΎΡ€ΠΈ ΠΈ Π΄Ρ€. Имаш Π»ΠΈ Π΅Π΄ΠΈΠ½? VPS - ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ Π΅Π²Ρ‚ΠΈΠ½ΠΎ, Π²ΠΈΠ½Π°Π³ΠΈ ΠΏΠΎΠ΄ Ρ€ΡŠΠΊΠ° ΠΈ носи ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π·ΠΈ? НС, Π½Π΅ Ρ‚Π°Π·ΠΈ, която ΠΈΠΌΠ°Ρ‚Π΅ във Π²Π°ΡˆΠ°Ρ‚Π° компания, Π° Π²Π°ΡˆΠ°Ρ‚Π° собствСна, β€žΠ΄ΠΆΠΎΠ±Π½Π°β€œ. ΠœΠΈΡΠ»Π΅Ρ…ΠΌΠ΅, Ρ‡Π΅ Π±Π΅Π· малък VPS ΠΏΡ€Π΅Π· 2019 Π³. бСшС някак Ρ‚ΡŠΠΆΠ½ΠΎ, Ρ‚ΠΎΡ‡Π½ΠΎ ΠΊΠ°ΠΊΡ‚ΠΎ Π±Π΅Π· ΠΎΠ±ΠΈΡ‡Π°ΠΉΠ½Π°Ρ‚Π° писалка Π½Π° лСкция. Π—Π°Ρ‰ΠΎ Π΄Π° бъдСм Ρ‚ΡŠΠΆΠ½ΠΈ? Лято Π΅. ΠΊΠ°ΠΊ Π΅ лятото Лято Π·Π° IT спСциалист: сСдитС си Π²ΠΊΡŠΡ‰ΠΈ, Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ Π²ΡŠΡ€Ρ…Ρƒ Π»ΡŽΠ±ΠΈΠΌΠΈΡ‚Π΅ си ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠ²ΠΎ съТалСниС. ΠžΠ±Ρ‰ΠΎ Π²Π·Π΅Ρ‚ΠΎ, помислихмС ΠΈ Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…ΠΌΠ΅.

Мозък + VPS Π·Π° 30 Ρ€ΡƒΠ±Π»ΠΈ =?
ΠšΠΎΠΌΡƒΠ½ΠΈΠ·ΠΌΡŠΡ‚ Π΄ΠΎΠΉΠ΄Π΅, Π΄Ρ€ΡƒΠ³Π°Ρ€ΠΈ.

Π’ΠΎΠΉ Π΅ Ρ‚Π°ΠΊΡŠΠ² - Π½Π°ΡˆΠΈΡΡ‚ VPS Π·Π° тридСсСт

ΠŸΡ€ΠΎΡ‡Π΅Ρ‚ΠΎΡ…ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ статии ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΈ ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ писаха ΠΏΡ€Π΅Π΄ΠΈ 3-4 Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π·Π° Ρ‚ΠΎΠ²Π° Π·Π°Ρ‰ΠΎ Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Π΅Π²Ρ‚ΠΈΠ½ VPS. Π•, Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠ°, Ρ‚ΠΎΠ³Π°Π²Π° VPS "Π·Π° стотинка" бСшС чист ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ ΠΈ Π½Π΅ моТСшС Π΄Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈ Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°. Но Π²Ρ€Π΅ΠΌΠ΅Π½Π°Ρ‚Π° сС промСнят, Ρ†Π΅Π½Π°Ρ‚Π° Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ рСсурси става всС ΠΏΠΎ-ниска ΠΈ Π·Π° 30 Ρ€ΡƒΠ±Π»ΠΈ Π½Π° мСсСц смС Π³ΠΎΡ‚ΠΎΠ²ΠΈ Π΄Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠΌ Ρ‚ΠΎΠ²Π°:

  • ΠŸΡ€ΠΎΡ†Π΅ΡΠΎΡ€: Intel Xeon 2 GHz (1 core)
  • Linux систСма (Debian, Ubuntu, CentOS ΠΏΠΎ ΠΈΠ·Π±ΠΎΡ€)
  • 1 спСциалСн IPv4 адрСс
  • 10 GB място Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π½Π° Π±ΡŠΡ€Π·ΠΈ SSD устройства ΠΎΡ‚ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π΅Π½ клас
  • RAM: 512 MB
  • ВаксуванС Π½Π° сСкунда
  • НСограничСн Ρ‚Ρ€Π°Ρ„ΠΈΠΊ

Π’Π°Ρ€ΠΈΡ„Π°Ρ‚Π° ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈ Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ тСхничСски ограничСния, подробности Π·Π° страница Π½Π°ΡˆΠ΅Ρ‚ΠΎ Π³ΠΎΡ‚ΠΈΠ½ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ - VPS Π·Π° 30 Ρ€ΡƒΠ±Π»ΠΈ. 

Π—Π° ΠΊΠΎΠ³ΠΎ Π΅ подходящ Ρ‚ΠΎΠ·ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π΅Π½ ΡΡŠΡ€Π²ΡŠΡ€? Π”Π° Π½Π° ΠΏΠΎΡ‡Ρ‚ΠΈ всички: Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‰ΠΈ, Снтусиасти, ΠΎΠΏΠΈΡ‚Π½ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ, Ρ„Π΅Π½ΠΎΠ²Π΅ Π½Π° Направи си сам ΠΈ Π΄ΠΎΡ€ΠΈ някои ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.

Π—Π° ΠΊΠ°ΠΊΠ²ΠΎ Π΅ подходящ Ρ‚ΠΎΠ·ΠΈ VPS?

БмятамС, Ρ‡Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° Habr ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Ρ‰Π΅ намСрят свой собствСн Π½Π°Ρ‡ΠΈΠ½ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ‚Π°Π·ΠΈ конфигурация, Π½ΠΎ Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° ΡΡŠΠ±Π΅Ρ€Π΅ΠΌ собствСна сСлСкция ΠΎΡ‚ ΠΈΠ΄Π΅ΠΈ - ΠΊΠ°ΠΊΠ²ΠΎ Ρ‰Π΅ станС, Π°ΠΊΠΎ някой ΠΈΠΌΠ° Π½ΡƒΠΆΠ΄Π° ΠΎΡ‚ Ρ‚ΠΎΠ²Π°, Π½ΠΎ ΠΌΡŠΠΆΠ΅Ρ‚Π΅ Π½Π΅ знаят?

  • ΠŸΠΎΡΡ‚Π°Π²Π΅Ρ‚Π΅ своя прост уСбсайт, ΠΏΠΎΡ€Ρ‚Ρ„ΠΎΠ»ΠΈΠΎ, автобиография с ΠΊΠΎΠ΄ ΠΈ Ρ‚.Π½. Π Π°Π·Π±ΠΈΡ€Π° сС, Π²Π°ΡˆΠΈΡΡ‚ собствСн ΡƒΠ΅Π± сайт ΠΏΡ€Π°Π²ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»Π½ΠΎ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅ Π½Π° работодатСля. ΠŸΠΎΡΡ‚Π°Π²Π΅Ρ‚Π΅ Π³ΠΎ Π½Π° вашия VPS ΠΈ ΠΏΠΎΠ΅ΠΌΠ΅Ρ‚Π΅ отговорност Π·Π° сигурността ΠΈ стабилността Π½Π° сайта сами, Π° Π½Π΅ ΠΎΡ‚ пСрсонала Π½Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ‚Π΅ хостинг доставчици.
  • Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ VPS Π·Π° ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΈ Ρ†Π΅Π»ΠΈ: хоствайтС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° си, ΠΈΠ·ΡƒΡ‡Π°Π²Π°ΠΉΡ‚Π΅ характСристикитС Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° ΠΈ ΡΡŠΡ€Π²ΡŠΡ€Π½Π°Ρ‚Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π° систСма, СкспСримСнтирайтС с DNS, Π±ΡŠΡ€ΠΊΠ°ΠΉΡ‚Π΅ с малък ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅Π½ сайт.
  • Π—Π° тСлСфония. Понякога ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»Π΅Π½ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ΅ΠΌΠ°Ρ‡, свободна ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΊΠ° компания отчаяно сС Π½ΡƒΠΆΠ΄Π°Π΅ ΠΎΡ‚ IP тСлСфония, Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π½Π° Ρ‚Π°Π·ΠΈ тСлСфония са ΠΌΠ½ΠΎΠ³ΠΎ Π°Π»Ρ‡Π½ΠΈ. Всичко Π΅ просто: Π²Π·Π΅ΠΌΠ°ΠΌΠ΅ нашия ΡΡŠΡ€Π²ΡŠΡ€, ΠΊΡƒΠΏΡƒΠ²Π°ΠΌΠ΅ Π½ΠΎΠΌΠ΅Ρ€ ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π° IP тСлСфония, настройвамС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Π° Ρ†Π΅Π½Ρ‚Ρ€Π°Π»Π° ΠΈ създавамС Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° (Π°ΠΊΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ). БпСстяванията са колосални.
  • Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΡΡŠΡ€Π²ΡŠΡ€Π°, Π·Π° Π΄Π° тСстватС Π²Π°ΡˆΠΈΡ‚Π΅ прилоТСния.
  • Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΡΡŠΡ€Π²ΡŠΡ€Π° Π·Π° СкспСримСнти β€žΠΠ°ΠΏΡ€Π°Π²ΠΈ си ΡΠ°ΠΌβ€œ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½Π΅ ΠΈ ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ сСнзори Π½Π° систСмата Π·Π° ΠΈΠ½Ρ‚Π΅Π»ΠΈΠ³Π΅Π½Ρ‚Π΅Π½ Π΄ΠΎΠΌ.
  • НСобичаСн Π½Π°Ρ‡ΠΈΠ½ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π΅ Π΄Π° поставитС Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° асистСнт Π·Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° борсова Ρ‚ΡŠΡ€Π³ΠΎΠ²ΠΈΡ, Ρ€ΠΎΠ±ΠΎΡ‚ Π·Π° Ρ‚ΡŠΡ€Π³ΠΎΠ²ΠΈΡ. Π’ΠΈΠ΅ Ρ‰Π΅ носитС пълна отговорност Π·Π° стабилността ΠΈ сигурността Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½ инструмСнт Π·Π° Ρ‚ΡŠΡ€Π³ΠΎΠ²ΠΈΡ Π½Π° Ρ„ΠΎΠ½Π΄ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠ°Π·Π°Ρ€ΠΈ. Π•, Π°ΠΊΠΎ някой сС интСрСсува ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡ€Π° :)

Има прилоТСния Π·Π° Ρ‚Π°ΠΊΡŠΠ² VPS Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Π°Ρ‚Π° сфСра. Π’ допълнСниС към Π²Π΅Ρ‡Π΅ спомСнатата Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Π° услуга, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ няколко интСрСсни Π½Π΅Ρ‰Π°. НапримСр:

  • ΠŸΠΎΡΡ‚Π°Π²Π΅Ρ‚Π΅ ΠΌΠ°Π»ΠΊΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ информация, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π·Π° ΠΏΡŠΡ‚ΡƒΠ²Π°Ρ‰ΠΈ слуТитСли ΠΎΡ‚ разстояниС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‡Ρ€Π΅Π· ftp. Π’ΠΎΠ²Π° Ρ‰Π΅ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡŠΡ€Π·ΠΎ Π΄Π° обмСнятС свСТи Π°Π½Π°Π»ΠΈΠ·ΠΈ, Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π·Π° Ρ‚ΡŠΡ€Π³ΠΎΠ²Ρ†ΠΈ, ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ Ρ‚.Π½.
  • Π”Π°ΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅Π½ Π΄ΠΎΡΡ‚ΡŠΠΏ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ Π·Π° дСмонстрация Π½Π° софтуСр ΠΈΠ»ΠΈ мСдия.

VPS тСст Π΄Ρ€Π°ΠΉΠ² Π·Π° 30 Ρ€ΡƒΠ±Π»ΠΈ - Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΎ Π·Π° вас

30 Ρ€ΡƒΠ±Π»ΠΈ са Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΌΠ°Π»ΠΊΠΎ, Ρ‡Π΅ Π΄ΠΎΡ€ΠΈ Π½Π΅ искатС Π΄Π° ΠΈΠ·Π²Π°Π΄ΠΈΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚Π°, Π·Π° Π΄Π° ΠΏΠ»Π°Ρ‚ΠΈΡ‚Π΅ ΠΈ тСстватС. И Π½ΠΈΠ΅ понякога смС Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΌΡŠΡ€Π·Π΅Π»ΠΈΠ²ΠΈ, Π½ΠΎ Ρ‚ΠΎΠ·ΠΈ ΠΏΡŠΡ‚ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…ΠΌΠ΅ всичко Π·Π° вас. ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° пуснСм ΡΡŠΡ€Π²ΡŠΡ€ΠΈΡ‚Π΅ Π² Π±ΠΈΡ‚ΠΊΠ°, ΠΏΡ€ΠΎΠ²Π΅Π΄ΠΎΡ…ΠΌΠ΅ тСст, Π·Π° Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ всички подробности ΠΈ Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π½Π° ΠΊΠ°ΠΊΠ²ΠΎ са способни ΡΡŠΡ€Π²ΡŠΡ€ΠΈΡ‚Π΅ ΠΏΡ€ΠΈ Ρ‚Π°Π·ΠΈ Ρ‚Π°Ρ€ΠΈΡ„Π°. Π—Π° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ ΠΏΠΎ-интСрСсно, Π΄ΠΎΠ±Π°Π²ΠΈΡ…ΠΌΠ΅ СкстрСмни ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ…ΠΌΠ΅ ΠΊΠ°ΠΊ Ρ‰Π΅ сС Π΄ΡŠΡ€ΠΆΠΈ Ρ‚Π°Π·ΠΈ конфигурация, Π°ΠΊΠΎ ΠΏΠ»ΡŠΡ‚Π½ΠΎΡΡ‚Ρ‚Π° ΠΈ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π°Π΄Π²ΠΈΡˆΠ°Π²Π°Ρ‚ Π·Π°Π΄Π°Π΄Π΅Π½ΠΈΡ‚Π΅ ΠΎΡ‚ нас стойности. 

Π₯ΠΎΡΡ‚ΡŠΡ‚ бСшС ΠΏΠΎΠ΄ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π΅Π΄ΠΈΡ†Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ…Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° процСсора ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ…Π° дисковата подсистСма. Π¦Π΅Π»Ρ‚Π° Π΅ Π΄Π° сС симулира висока ΠΏΠ»ΡŠΡ‚Π½ΠΎΡΡ‚ Π½Π° Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π°Π½Π΅ ΠΈ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, сравнимо ΠΈΠ»ΠΈ ΠΏΠΎ-голямо ΠΎΡ‚ Π±ΠΎΠΉΠ½ΠΎΡ‚ΠΎ.

Π’ допълнСниС към постоянното Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ инсталирахмС 3 Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини, ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΠ±ΠΈΡ€Π°Ρ…Π° синтСтични ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° sysbench, Ρ‡ΠΈΠΈΡ‚ΠΎ срСдни Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ бяха Π΄Π°Π΄Π΅Π½ΠΈ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ, ΠΈ 50 Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини, ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΠ·Π΄Π°Π΄ΠΎΡ…Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅. Всички тСстови Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини ΠΈΠΌΠ°Ρ…Π° Π΅Π΄Π½Π° ΠΈ ΡΡŠΡ‰Π° конфигурация (1 ядро, RAM 512 GB, SSD 10 GB), стандартното ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° debian 9.6 бСшС ΠΈΠ·Π±Ρ€Π°Π½ΠΎ ΠΊΠ°Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π° систСма, която сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° RUVDS.

НатоварванСто бСшС симулирано ΠΏΠΎ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π° ΠΈ с Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°, сравнима с Π±ΠΎΠΉΠ½Π°:

  • Някои Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини бяха стартирани с ниско Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅
  • Някои машини ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΡ…Π° тСстов скрипт, симулиращ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° процСсора (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΏΠΎΠΌΠΎΡ‰Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° стрСс)
  • На останалата част ΠΎΡ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ машини ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΡ…ΠΌΠ΅ скрипт, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° dd Π·Π° ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° диск с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅, Π·Π°Π΄Π°Π΄Π΅Π½ΠΎ Ρ‡Ρ€Π΅Π· pv (ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС видят Ρ‚ΡƒΠΊ ΠΈ Ρ‚ΡƒΠΊ).

ОсвСн Ρ‚ΠΎΠ²Π°, ΠΊΠ°ΠΊΡ‚ΠΎ си спомнятС, ΠΈΠΌΠ°Ρ…ΠΌΠ΅ Ρ‚Ρ€ΠΈ машини, ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΠ±ΠΈΡ€Π°Ρ…Π° синтСтични ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

На всяка машина Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π½ΠΎ сС изпълнявашС скрипт Π½Π° всСки 15 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ, ΠΊΠΎΠΉΡ‚ΠΎ изпълнява стандартни тСстовС Π½Π° sysbench Π·Π° процСсора, ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ диска.

Π‘ΠΊΡ€ΠΈΠΏΡ‚ sysbench.sh

#!/bin/bash
date +"%Y-%m-%d %H:%M:%S" >> /root/sysbench/results.txt
sysbench --test=cpu run >> /root/sysbench/results.txt
sysbench --test=memory run >> /root/sysbench/results.txt
sysbench --test=fileio --file-test-mode=seqwr run >> /root/sysbench/results.txt
sysbench --test=fileio --file-test-mode=seqrd run >> /root/sysbench/results.txt
sysbench --test=fileio --file-test-mode=rndrw run >> /root/sysbench/results.txt

Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ са прСдставСни Π·Π° удобство във Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π° sysbench, Π½ΠΎ срСднитС стойности Π·Π° цСлия ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π½Π° тСстванС са Π²Π·Π΅Ρ‚ΠΈ ΠΎΡ‚ всички машини, Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π²ΠΈΠ΄ΠΈ Ρ‚ΡƒΠΊ:

Sysbanch-avg.txtsysbench 0.4.12: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Doing CPU performance benchmark

Threads started!
Done.

Maximum prime number checked in CPU test: 10000

Test execution summary:
total time: 19.2244s
total number of events: 10000
total time taken by event execution: 19.2104
per-request statistics:
min: 1.43ms
avg: 1.92ms
max: 47.00ms
approx. 95 percentile: 3.02ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 19.2104/0.00

sysbench 0.4.12: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Doing memory operations speed test
Memory block size: 1K

Memory transfer size: 102400M

Memory operations type: write
Memory scope type: global
Threads started!
Done.

Operations performed: 104857600 (328001.79 ops/sec)

102400.00 MB transferred (320.32 MB/sec)

Test execution summary:
total time: 320.9155s
total number of events: 104857600
total time taken by event execution: 244.8399
per-request statistics:
min: 0.00ms
avg: 0.00ms
max: 139.41ms
approx. 95 percentile: 0.00ms

Threads fairness:
events (avg/stddev): 104857600.0000/0.00
execution time (avg/stddev): 244.8399/0.00

sysbench 0.4.12: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Extra file open flags: 0
128 files, 16Mb each
2Gb total file size
Block size 16Kb
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing sequential write (creation) test
Threads started!
Done.

Operations performed: 0 Read, 131072 Write, 128 Other = 131200 Total
Read 0b Written 2Gb Total transferred 2Gb (320.1Mb/sec)
20251.32 Requests/sec executed

Test execution summary:
total time: 6.9972s
total number of events: 131072
total time taken by event execution: 5.2246
per-request statistics:
min: 0.01ms
avg: 0.04ms
max: 96.76ms
approx. 95 percentile: 0.03ms

Threads fairness:
events (avg/stddev): 131072.0000/0.00
execution time (avg/stddev): 5.2246/0.00

sysbench 0.4.12: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Extra file open flags: 0
128 files, 16Mb each
2Gb total file size
Block size 16Kb
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing sequential read test
Threads started!
Done.

Operations performed: 131072 Read, 0 Write, 0 Other = 131072 Total
Read 2Gb Written 0b Total transferred 2Gb (91.32Mb/sec)
5844.8 Requests/sec executed

Test execution summary:
total time: 23.1054s
total number of events: 131072
total time taken by event execution: 22.9933
per-request statistics:
min: 0.00ms
avg: 0.18ms
max: 295.75ms
approx. 95 percentile: 0.77ms

Threads fairness:
events (avg/stddev): 131072.0000/0.00
execution time (avg/stddev): 22.9933/0.00

sysbench 0.4.12: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Extra file open flags: 0
128 files, 16Mb each
2Gb total file size
Block size 16Kb
Number of random requests for random IO: 10000
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random r/w test
Threads started!
Done.

Operations performed: 6000 Read, 4000 Write, 12800 Other = 22800 Total
Read 93.75Mb Written 62.5Mb Total transferred 156.25Mb (1341.5Kb/sec)
85.61 Requests/sec executed

Test execution summary:
total time: 152.9786s
total number of events: 10000
total time taken by event execution: 14.1879
per-request statistics:
min: 0.01ms
avg: 1.41ms
max: 210.22ms
approx. 95 percentile: 4.95ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 14.1879/0.00

Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ са ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²ΡŠΡ‡Π½ΠΈ, Π½ΠΎ всС ΠΏΠ°ΠΊ Π½Π΅ трябва Π΄Π° сС ΠΏΡ€ΠΈΠ΅ΠΌΠ°Ρ‚ ΠΊΠ°Ρ‚ΠΎ QoS. 

Машини, ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅

Π‘ΠΎΡ„Ρ‚ΡƒΠ΅Ρ€:

  • Π°ΠΏ-GET актуализация
  • apt-get upgrade
  • apt-get инсталиратС python-pip
  • pip инсталирайтС mysql-connector-python-rf

Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°Π½Π° MariaDB, Как Π΄Π° Ρ‚ΡƒΠΊ:

apt-get install libmariadbclient-dev
mysql -e "INSTALL PLUGIN blackhole SONAME 'ha_blackhole.so';" -- Π½ΡƒΠΆΠ½ΠΎ для test_employees_sha

ВСстовата Π±Π°Π·Π° Π΅ Π²Π·Π΅Ρ‚Π° слСдоватСлно:

Π‘Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ Ρ€Π°Π·Π³ΡŠΡ€Π½Π°Ρ‚Π°, ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ посочСно Ρ‚ΡƒΠΊ:

mysql -t < employees.sql
mysql -t < test_employees_sha.sql

Малка тСстова Π±Π°Π·Π°:

Маса 

Π‘Ρ€ΠΎΠΉ Ρ€Π΅Π΄ΠΎΠ²Π΅ 

Π Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ (MB)

Π Π°Π·ΠΌΠ΅Ρ€ Π½Π° индСкса (KB)

ΠΎΡ‚Π΄Π΅Π»ΠΈ 

9

0.02

16.00

dept_emp 

331143 

11.52

5648.00

ΡƒΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»_ΠΎΡ‚Π΄Π΅Π» 

24 

0.02

16.00

слуТитСли 

299379 

14.52

0.00

Π·Π°ΠΏΠ»Π°Ρ‚ΠΈ 

2838426 

95.63

0.00 

Ρ‚ΠΈΡ‚Π»ΠΈ 

442783 

19.56

0.00

ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Π° тСстова услуга Π΅ написана Π½Π° коляно Π² Python; тя изпълнява Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

  1. getState: Π²Ρ€ΡŠΡ‰Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ
  2. getEmployee: Π²Ρ€ΡŠΡ‰Π° слуТитСли (+Π·Π°ΠΏΠ»Π°Ρ‚ΠΈ, +заглавия) ΠΎΡ‚ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ
  3. patchEmployee: промСня ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° Π·Π° слуТитСли
  4. insertSalary: вмъква Π·Π°ΠΏΠ»Π°Ρ‚Π°

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ Π½Π° услугата (dbtest.py)

#!/usr/bin/python
import mysql.connector as mariadb
from flask import Flask, json, request, abort
from mysql.connector.constants import ClientFlag

app = Flask(__name__)

def getFields(cursor):
    results = {}
    column = 0
    for d in cursor.description:
        results[d[0]] = column
        column = column + 1
    return results

PAGE_SIZE = 30

@app.route("/")
def main():
    return "Hello!"

@app.route("/employees/<page>", methods=['GET'])
def getEmployees(page):
    offset = (int(page) - 1) * PAGE_SIZE
    connection = mariadb.connect(user='admin', password='q5XpRomdSr', database='employees')
    cursor = connection.cursor()
    cursor.execute("SELECT * FROM employees LIMIT {} OFFSET {}".format(PAGE_SIZE, offset))
    return {'employees': [i[0] for i in cursor.fetchall()]}

@app.route("/employee/<id>", methods=['GET'])
def getEmployee(id):
    id = int(id)
    connection = mariadb.connect(user='admin', password='q5XpRomdSr', database='employees')
    cursor = connection.cursor()
    cursor.execute("SELECT * FROM employees WHERE emp_no = {}".format(id))
    fields = getFields(cursor)
    employee = {}
    found = False
    for row in cursor.fetchall():
        found = True
        employee = {
            "birth_date": row[fields["birth_date"]],
            "first_name": row[fields["first_name"]],
            "last_name": row[fields["last_name"]],
            "gender": row[fields["gender"]],
            "hire_date": row[fields["hire_date"]]
        }
    if not found:
        abort(404)
    cursor.execute("SELECT * FROM salaries WHERE emp_no = {}".format(id))
    fields = getFields(cursor)
    salaries = []
    for row in cursor.fetchall():
        salary = {
            "salary": row[fields["salary"]],
            "from_date": row[fields["from_date"]],
            "to_date": row[fields["to_date"]]
        }
        salaries.append(salary)
    employee["salaries"] = salaries
    cursor.execute("SELECT * FROM titles WHERE emp_no = {}".format(id))
    fields = getFields(cursor)
    titles = []
    for row in cursor.fetchall():
        title = {
            "title": row[fields["title"]],
            "from_date": row[fields["from_date"]],
            "to_date": row[fields["to_date"]]
        }
        titles.append(title)
    employee["titles"] = titles
    return json.dumps({
        "status": "success",
        "employee": employee
    })

def isFieldValid(t, v):
    if t == "employee":
        return v in ["birdth_date", "first_name", "last_name", "hire_date"]
    else:
        return false

@app.route("/employee/<id>", methods=['PATCH'])
def setEmployee(id):
    id = int(id)
    content = request.json
    print(content)
    setList = ""
    data = []
    for k, v in content.iteritems():
        if not isFieldValid("employee", k):
            continue
        if setList != "":
            setList = setList + ", "
        setList = setList + k + "=%s"
        data.append(v)
    data.append(id)
    print(setList)
    print(data)
    connection = mariadb.connect(user='admin', password='q5XpRomdSr', database='employees', client_flags=[ClientFlag.FOUND_ROWS])
    cursor = connection.cursor()
    cursor.execute("UPDATE employees SET {} WHERE emp_no = %s".format(setList), data)
    connection.commit()
    if cursor.rowcount < 1:
        abort(404)
    return json.dumps({
        "status": "success"
    })

@app.route("/salary", methods=['PUT'])
def putSalary():
    content = request.json
    print(content)
    connection = mariadb.connect(user='admin', password='q5XpRomdSr', database='employees', client_flags=[ClientFlag.FOUND_ROWS])
    cursor = connection.cursor()
    data = [content["emp_no"], content["salary"], content["from_date"], content["to_date"]]
    cursor.execute("INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (%s, %s, %s, %s)", data)
    connection.commit()
    return json.dumps({
        "status": "success"
    })


@app.route("/state", methods=['GET'])
def getState():
    return json.dumps({
        "status": "success",
        "state": "working"
    })

if __name__ == '__main__':
    app.run(host='0.0.0.0',port='5002')

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! ΠŸΡ€ΠΈ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ обстоятСлства Ρ‚Π°Π·ΠΈ услуга Π½Π΅ трябва Π΄Π° сС ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ»ΠΈ Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎ!

ВСстовСтС сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° добрия стар JMeter. Π‘Ρ‚Π°Ρ€Ρ‚ΠΈΡ€Π°Ρ…Π° сСрия ΠΎΡ‚ тСстовС с ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚ ΠΎΡ‚ 15 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ Π΄ΠΎ 2 часа, Π±Π΅Π· ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Π½ΠΈΡ, ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΡŠΡ‚ Π½Π° заявкитС Π²Π°Ρ€ΠΈΡ€Π°ΡˆΠ΅, Π° пропускатСлната способност Π²Π°Ρ€ΠΈΡ€Π°ΡˆΠ΅ ΠΎΡ‚ 300 Π΄ΠΎ 600 заявки Π² ΠΌΠΈΠ½ΡƒΡ‚Π°. Π‘Ρ€ΠΎΠΉ нишки ΠΎΡ‚ 50 Π΄ΠΎ 500.

ΠŸΠΎΡ€Π°Π΄ΠΈ Ρ„Π°ΠΊΡ‚Π°, Ρ‡Π΅ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΊΠ°, ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π°:

mysql -e "SHOW ENGINE INNODB STATUS"

Показва Ρ‡Π΅:

Buffer pool hit rate 923 / 1000, young-making rate 29 / 1000 not 32 / 1000

По-Π΄ΠΎΠ»Ρƒ са срСднитС Π²Ρ€Π΅ΠΌΠ΅Π½Π° Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π½Π° заявки:

Π•Ρ‚ΠΈΠΊΠ΅Ρ‚

Π‘Ρ€Π΅Π΄Π½ΠΎ Π°Ρ€ΠΈΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‡Π½ΠΎ

МСдиана

90% линия

95% линия

99% линия

Min

макс

getEmployee

37.64

12.57

62.28

128.5

497.57

5

4151.78

getState

17

7.57

30.14

58.71

193

3

2814.71

patchEmployee

161.42

83.29

308

492.57

1845.14

5

6639.4

слоТи Π—Π°ΠΏΠ»Π°Ρ‚Π°

167.21

86.93

315.34

501.07

1927.12

7

6722.44

МоТС Π΄Π° Π²ΠΈ Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄Π° ΠΏΡ€Π΅Ρ†Π΅Π½ΠΈΡ‚Π΅ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ синтСтични Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ Π΄ΠΎΠΊΠΎΠ»ΠΊΠΎ Ρ‚ΠΎΠ·ΠΈ VPS Π΅ подходящ Π·Π° Π²Π°ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ ΠΊΠ°Ρ‚ΠΎ цяло ΠΈΠ·Π±Ρ€ΠΎΠ΅Π½ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ са ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ Π΄ΠΎ ΠΎΠ½Π΅Π·ΠΈ случаи, с ΠΊΠΎΠΈΡ‚ΠΎ Ρ‚Ρ€ΡΠ±Π²Π°ΡˆΠ΅ Π΄Π° сС справим ΠΏΠΎΠ΄ Π΅Π΄Π½Π° ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³Π° Ρ„ΠΎΡ€ΠΌΠ°. Π’Π°ΠΊΠ° Ρ‡Π΅ Π½Π°ΡˆΠΈΡΡ‚ списък Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ Π½Π΅ Π΅ ΠΈΠ·Ρ‡Π΅Ρ€ΠΏΠ°Ρ‚Π΅Π»Π΅Π½. Каним Π²ΠΈ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ свои собствСни Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π΄Π° тСстватС ΡΡŠΡ€Π²ΡŠΡ€Π° Π·Π° 30 Ρ€ΡƒΠ±Π»ΠΈ Π²ΡŠΡ€Ρ…Ρƒ Π²Π°ΡˆΠΈΡ‚Π΅ Ρ€Π΅Π°Π»Π½ΠΈ прилоТСния ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ Π΄Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚Π΅ Π²Π°ΡˆΠΈΡ‚Π΅ ΠΎΠΏΡ†ΠΈΠΈ Π·Π° Ρ‚Π°Π·ΠΈ конфигурация Π² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡ‚Π΅.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€