Π‘Π΅ΡΠ²Π΅Ρ
wZD Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ (Π°ΡΡ ΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ) ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ Π² Π°ΡΡ ΠΈΠ²Ρ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ BoltDB ΠΈ Π·Π°ΡΠ΅ΠΌ ΡΠ°Π·Π΄Π°Π²Π°ΡΡ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· ΡΡΠΈΡ Π°ΡΡ ΠΈΠ²ΠΎΠ² (ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ Π² Π°ΡΡ ΠΈΠ²Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ PUT), Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΠ² ΡΠΈΡΠ»ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² Π² Π€Π‘ ΠΈ ΡΠ½ΠΈΠ·ΠΈΠ² Π½Π°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ ΠΎΠ΄Ρ Π½Π° Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ . ΠΠ»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠ³ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΎΡ Bolt-Π°ΡΡ ΠΈΠ²ΠΎΠ². ΠΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΌΠ΅Π»ΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², Π½Π΅ ΡΠΏΠΈΡΠ°ΡΡΡ Π² Π»ΠΈΠΌΠΈΡ Π½Π° ΡΠΈΡΠ»ΠΎ inode Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
Π‘Π΅ΡΠ²Π΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ NoSQL Π±Π°Π·Ρ Π΄Π»Ρ Π΄Π°Π½Π½ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ ΠΊΠ»ΡΡ/Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (Ρ ΡΠ°ΡΠ΄ΠΈΠ½Π³ΠΎΠΌ Π½Π° Π±Π°Π·Π΅ ΡΡΡΡΠΊΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ) ΠΈΠ»ΠΈ Π΄Π»Ρ ΡΠ°Π·Π΄Π°ΡΠΈ ΠΈΠ· ΠΠ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ html ΠΈΠ»ΠΈ json-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ². Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠΎ ΠΎΡΠ΄Π°ΡΠ° ΠΈ Π·Π°ΠΏΠΈΡΡ Π΄Π°Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Bolt-Π°ΡΡ ΠΈΠ²ΠΎΠ² ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° 20-25% ΠΏΡΠΈ ΡΡΠ΅Π½ΠΈΠΈ ΠΈ Π½Π° 40-50% ΠΏΡΠΈ Π·Π°ΠΏΠΈΡΠΈ. Π§Π΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π°, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ Π² Π·Π°Π΄Π΅ΡΠΆΠΊΠ°Ρ .
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅
- ΠΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡΡ;
- ΠΡΠ»ΡΡΠΈΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΡΡΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠ°Ρ ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ ΠΈ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ;
- ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°;
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ HTTP-ΠΌΠ΅ΡΠΎΠ΄Ρ: GET, HEAD, PUT ΠΈ DELETE;
- Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈ ΡΡΠ΅Π½ΠΈΠΈ ΠΈ Π·Π°ΠΏΠΈΡΠΈ ΡΠ΅ΡΠ΅Π· ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ;
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π³ΠΈΠ±ΠΊΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ Ρ ΠΎΡΡΠΎΠ²;
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° CRC-ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈ Π·Π°ΠΏΠΈΡΠΈ/ΡΡΠ΅Π½ΠΈΠΈ;
- ΠΠΎΠ»ΡΠ΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π±ΡΡΠ΅ΡΡ Π΄Π»Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ;
- ΠΡΠ»ΠΎΠΆΠ΅Π½Π½Π°Ρ ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° Π΄Π°Π½Π½ΡΡ ;
- Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΡΠΉ Π°ΡΡ
ΠΈΠ²Π°ΡΠΎΡ
wZA Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² Bolt-Π°ΡΡ ΠΈΠ²Ρ Π±Π΅Π· ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π²ΡΠΏΡΡΠΊΠ°: Π½Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Multipart, ΠΌΠ΅ΡΠΎΠ΄Π° POST, ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° HTTPS, Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΎΠ² Π΄Π»Ρ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ, ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· WebDAV ΠΈΠ»ΠΈ FUSE, ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°Π½ΡΡΡΡ ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. Π€ΠΎΡΠΌΠ°Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²ΡΠ·Π°Π½ ΠΊ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ ΠΈ Π½Π΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Little Endian ΠΈ Big Endian. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΠ΅ΡΠ²Π΅Ρ wZD ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° HTTP, Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π΅Π³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ ΠΏΡΠΈΠΊΡΡΡΠΈΠ΅ΠΌ ΡΠ΅Π²Π΅ΡΡ ΠΏΡΠΎΠΊΡΠΈ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ nginx ΠΈ haproxy.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru