BlondeTechie & Zeyna
Zeyna Zeyna
ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΡΠ»ΡƒΡˆΠ°ΠΉ, я Ρ‚ΡƒΡ‚ ΠΏΠΎΠ΄ΡƒΠΌΠ°Π»Π°, ΠΌΠΎΠΆΠ΅Ρ‚, стоит ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ малСнький, супСр-скоростной in-memory key-value store, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ мСньшС миллисСкунды. КакиС Ρƒ тСбя мысли, ΠΊΠ°ΠΊ это ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
BlondeTechie BlondeTechie
Π’Π΅Π±Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ стоит Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всё Π² ΠΎΠ΄Π½ΠΎΠΌ сплошном Π±Π»ΠΎΠΊΠ΅ памяти, Ρ‡Ρ‚ΠΎΠ±Ρ‹ кэш Π½Π΅ ΠΏΡ€Ρ‹Π³Π°Π» Ρ‚ΡƒΠ΄Π°-сюда. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ Ρ…Π΅Ρˆ-Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ, ΠΊΡ€Π°Ρ‚Π½Ρ‹ΠΌ стСпСни Π΄Π²ΠΎΠΉΠΊΠΈ, ΠΈ быстрый, простой Ρ…Π΅Ρˆ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Murmur ΠΈΠ»ΠΈ FNV. Π‘Π΄Π΅Π»Π°ΠΉ ΠΊΠ»ΡŽΡ‡ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ фиксированного Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ сразу ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ массив. Π’Ρ‹Π΄Π΅Π»ΠΈ всю Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ сразу ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ пСрСраспрСдСляй ΠΈ Π½Π΅ ΠΏΠ΅Ρ€Π΅Ρ…Π΅ΡˆΠΈΡ€ΡƒΠΉ β€” это ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŽ Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠΉ. Π₯Ρ€Π°Π½ΠΈ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ значСния Π² ΠΏΠ»ΠΎΡ‚Π½ΠΎ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½Ρ‹Ρ… структурах, ΠΈΠ·Π±Π΅Π³Π°ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½ΠΈΡ…; Ρ‚Π°ΠΊ Ρ‚Ρ‹ смоТСшь ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ простым Ρ†ΠΈΠΊΠ»ΠΎΠΌ, Π° процСссор автоматичСски Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ слот. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ нСбольшой, фиксированный Ρ€Π°Π·ΠΌΠ΅Ρ€ ячСйки ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΠΉ Π½ΠΈΠ·ΠΊΠΈΠΉ коэффициСнт заполнСния, скаТСм, 0.5 – Ρ‚ΠΎΠ³Π΄Π° ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΠ΅ Π² ячСйку Π±ΡƒΠ΄Π΅Ρ‚ быстрым. И Π½Π°ΠΊΠΎΠ½Π΅Ρ†, помСсти всё состояниС Π² ΠΎΠ΄Π½Ρƒ структуру ΠΈ Π΄Π΅Ρ€ΠΆΠΈ Π΅Π΅ Π² кэшС L1. Π‘ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ Ρ‚Ρ‹ смоТСшь ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ поиска ΠΌΠ΅Π½Π΅Π΅ миллисСкунды.
Zeyna Zeyna
ΠžΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½, Π½ΠΎ Ссли придётся ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, придётся ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ Π΅Ρ‘ Π·Π°Π½ΠΎΠ²ΠΎ, Π° это ΠΎΡ‡Π΅Π½ΡŒ Π΄ΠΎΡ€ΠΎΠ³ΠΎ. И Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒ ΠΏΡ€ΠΎ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π³Ρ€Π°Π½ΠΈΡ†Π΅ кСш-Π»ΠΈΠ½ΠΈΠΈ – Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚ΠΎΠΈΡ‚ΡŒ Ρ†Π΅Π»ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ кСша Π·Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ просмотр. ΠœΠΎΠΆΠ΅Ρ‚, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ вмСсто простого Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ зондирования, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΠΊΠ»Π°ΡΡ‚Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ.