Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

ΠŸΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ – GUID ΠΈΠ»ΠΈ Π°Π²Ρ‚ΠΎΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚?

Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с созданиСм ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΈΠΏ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° выбираСтся Β«ΠΏΠΎ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡ΠΊΠ΅Β», ΠΈ Ρ‡Π°Ρ‰Π΅ всСго это Π°Π²Ρ‚ΠΎΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π½ΠΎΠ΅ цСлочислСнноС ΠΏΠΎΠ»Π΅. Но Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ это Π½Π΅ всСгда являСтся ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ситуаций Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ GUID. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅, Π±ΠΎΠ»Π΅Π΅ Ρ€Π΅Π΄ΠΊΠΈΠ΅, Ρ‚ΠΈΠΏΡ‹ ΠΊΠ»ΡŽΡ‡Π°, Π½ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΈΡ… Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ прСимущСства ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ².

GUID ΠΌΠΎΠΆΠ½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Ρ‚Π°ΠΊ ΠΈ самой Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… β€” ΡƒΠΆΠ΅ Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅, Π² MS SQL Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для получСния ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° β€” NEWID ΠΈ NEWSEQUENTIALID. Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, Π² Ρ‡Π΅ΠΌ ΠΈΡ… ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΎΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ сущСствСнным Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.

Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Entity Framework Code First, ΠΈ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ

Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ создана Ρ‚Π°Π±Π»ΠΈΡ†Π° с ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΌ кластСрным ΠΊΠ»ΡŽΡ‡ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ NEWSEQUENTIALID(). Π‘Π΄Π΅Π»Π°Π½ΠΎ это ΠΈΠ· сообраТСний ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅, Π² Ρ‚Π΅ΠΎΡ€ΠΈΠΈ, Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² сСрСдину списка Π±ΠΎΠ»Π΅Π΅ Π½Π°ΠΊΠ»Π°Π΄Π½ΠΎ, Ρ‡Π΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½Π΅Ρ†. Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π½Π΅ массив Π² памяти, ΠΈ вставка Π½ΠΎΠ²ΠΎΠΉ записи Π² сСрСдину списка строк Π½Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ физичСскому сдвигу всСх ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ…. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы Π±ΡƒΠ΄ΡƒΡ‚ β€” Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ страниц (page split). По ΠΈΡ‚ΠΎΠ³Ρƒ Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ сильная фрагмСнтация индСксов, которая ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Ρ€Π°Π·ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. НСплохоС объяснСниС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ происходит вставка Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠ»Π°ΡΡ‚Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΎΡ‚Π²Π΅Ρ‚Π°Ρ… Ρ„ΠΎΡ€ΡƒΠΌΠ° ΠΏΠΎ этой ссылкС.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±Π΅Π· ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ пСрСстановки Π±Π°ΠΉΡ‚, GUID нСльзя ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ получатся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅, Π½ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния SQL сСрвСра β€” Π½Π΅ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅, поэтому Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ° ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Β«ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΒ» GUID Π΄Π°ΠΆΠ΅ тСорСтичСски Π½Π΅ получится. К соТалСнию, ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… источниках.

К списку остаСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ пятый Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” Π°Π²Ρ‚ΠΎΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡. Π”Ρ€ΡƒΠ³ΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρƒ Π½Π΅Π³ΠΎ Π½Π΅Ρ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ Π΅Π³ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Π½Π΅ получится.

Π‘ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈΡΡŒ, Π½ΠΎ Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слСдуСт ΡƒΡ‡Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈ написании тСста β€” физичСский Ρ€Π°Π·ΠΌΠ΅Ρ€ строк Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π Π°Π·ΠΌΠ΅Ρ€ страницы Π΄Π°Π½Π½Ρ‹Ρ… Π² MS SQL β€” 8 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚. Записи Π±Π»ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ большСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΠ»ΡŒΠ½Ρ‹ΠΉ разброс ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΊΠ»ΡŽΡ‡Π°, Ρ‡Π΅ΠΌ Π½Π° порядок мСньшиС записи. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ записи, достаточно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΠ· тСстовых Ρ‚Π°Π±Π»ΠΈΡ† NVARCHAR ΠΏΠΎΠ»Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Ρ‚Π΅ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹ΠΌ количСством символов (ΠΎΠ΄ΠΈΠ½ символ Π² NVARCHAR ΠΏΠΎΠ»Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 2 Π±Π°ΠΉΡ‚Π°).

ВСстированиС

По этой ссылкС находится ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, которая Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π²Ρ‹ΡˆΠ΅ сообраТСний.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ GUID прСдприятия?

Π’ систСмС ΠœΠ΅Ρ€ΠΊΡƒΡ€ΠΈΠΉ сущСствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ завСсти ΠΎΠ΄Π½Ρƒ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΡƒ нСсколько Ρ€Π°Π·, поэтому Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Β«Π΄ΡƒΠ±Π»Π΅ΠΉΒ».

РаспространСнным проявлСниСм этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ являСтся ситуация ΠΊΠΎΠ³Π΄Π° поставщик отправляСт Π’Π‘Π” Π½Π° ΠΎΠ΄Π½Ρƒ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΡƒ, Π° ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ ΠΆΠ΄Π΅Ρ‚ входящий Π’Π‘Π” Π½Π° прСдприятии-Π΄ΡƒΠ±Π»Π΅Ρ€Π΅ ΠΈ Π’Π‘Π” Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚. Π Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ послС ΠΎΠ±ΠΌΠ΅Π½Π° GUID ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΎΠΊ. GUID β€” ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ прСдприятия. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅Π³ΠΎ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΡƒ Π² систСмС ΠœΠ΅Ρ€ΠΊΡƒΡ€ΠΈΠΉ.

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ GUID своСй ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠΈ

Π’ Π²Π΅Π±-сСрвисС ΠΎΡ‚ Π‘ΠšΠ‘ ΠšΠΎΠ½Ρ‚ΡƒΡ€ Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΡ‚ΠΈ, Π³Π΄Π΅ располоТСн GUID.

Π¨Π°Π³ 1. Π—Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² систСму ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«ΠœΠ΅Ρ€ΠΊΡƒΡ€ΠΈΠΉ/Настройки»: Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… прСдприятий.

Π¨Π°Π³ 2. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ»: откроСтся экран со списком ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΎΠΊ, рядом с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠΎΠΉ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π΅Π΅ GUID-ΠΊΠΎΠ΄.

Π¨Π°Π³ 3. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ GUID ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Π΅Π³ΠΎ поставщикам, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»ΡΡ‚ΡŒ Π’Π‘Π”.

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ государствСнный Β«ΠœΠ΅Ρ€ΠΊΡƒΡ€ΠΈΠΉΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ GUID прСдприятия, Π²Π°ΠΌ Π½Π°Π΄ΠΎ:

Π¨Π°Π³ 1. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π‘ΠΌΠ΅Π½ΠΈΡ‚ΡŒ прСдприятиС», Π³Π΄Π΅ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ всС зарСгистрированныС ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠΈ.

Π¨Π°Π³ 2. ΠΠ°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒΒ» рядом с Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ Β«Π’Ρ‹Π±ΠΎΡ€ обслуТиваСмого прСдприятия».

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

Π¨Π°Π³ 3. ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ скачанный тСкстовый Ρ„Π°ΠΉΠ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π²Π°ΡˆΠΈΡ… ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΎΠΊ с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ GUID для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ….

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли Π² ΠœΠ΅Ρ€ΠΊΡƒΡ€ΠΈΠΈ Π½Π΅Ρ‚ Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠΈ

БущСствуСт Π΄Π²Π° способа Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΡƒ:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ВрСбования ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΠ΅ΠΌΡ‹Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ЭА Π•Π˜Π‘

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΈΠ· WIKI

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ° Β«Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π•Π˜Π‘Β»

ΠŸΡ€ΠΈ рСгистрации ΠΈΠ»ΠΈ внСсСнии ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² свСдСния ΠΎΠ± ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρƒ Π˜ΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Ρ ΠΈ Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π±Π»ΠΎΠΊ Β«Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π•Π˜Π‘Β» с полями Β«Π•Π Π£Π—Β», Β«Π‘ΠŸΠ—Β» ΠΈ Β«Π‘Π’Π Β». Поля Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ для заполнСния, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для формирования ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Β«Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΎΠ΅ Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π•Π˜Π‘Β».

Если организация выполняСт Ρ€ΠΎΠ»ΡŒ Π˜ΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Ρ, Ρ‚ΠΎ отобраТаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»Π΅ Β«Π•Π Π£Π—Β».

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

Π­Ρ‚ΠΎΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° Π•Π˜Π‘ Π² Π•Π΄ΠΈΠ½ΠΎΠΌ рССстрС участников Π·Π°ΠΊΡƒΠΏΠΎΠΊ. Достаточно Π½Π°ΠΉΡ‚ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΠΎ ИНН ΠΈ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Β«ΠžΠ±Ρ‰Π°Ρ информация» ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ НомСр рССстровой записи Π² Π•Π Π£Π—.

Если организация выполняСт Ρ€ΠΎΠ»ΡŒ Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°, Ρ‚ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ поля «РССстровый Π½ΠΎΠΌΠ΅Ρ€ Π‘ΠŸΠ—Β» ΠΈ Β«Π‘Π²Π  ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°Β».

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

Π­Ρ‚ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° Π•Π˜Π‘ Π² ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°Ρ…, Ссли ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΏΠΎ наимСнованию Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° (ссылка).

Π’ΠΊΠ»Π°Π΄ΠΊΠ° «УчСтная ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠ° ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈΒ».

Π’ΠΊΠ»Π°Π΄ΠΊΠ° Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ информация».

Если организация выполняСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°, ΠΈ Π˜ΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Ρ, Ρ‚ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ всС Ρ‚Ρ€ΠΈ поля.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «Моя учСтная запись» Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ поля: ‘Β«Π•Π˜Π‘ ЭА Π­Π”Πž Ρ‚ΠΎΠΊΠ΅Π½ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°Β», ‘Β«Π•Π˜Π‘ ЭА Π­Π”Πž Ρ‚ΠΎΠΊΠ΅Π½ исполнитСля».

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ»ΡŽΡ‡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ guid Π΅Ρ€ΡƒΠ· Ρ‡Ρ‚ΠΎ это

Π•Π˜Π‘ ЭА Π­Π”Πž Ρ‚ΠΎΠΊΠ΅Π½ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°

Π•Π˜Π‘ ЭА Π­Π”Πž Ρ‚ΠΎΠΊΠ΅Π½ исполнитСля

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎΠ± ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² Π•Π˜Π‘ ΠΈ ПИК

Π£ сторон ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ информация Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎΠΉ (символ Π² символ):

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π§Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ являСтся ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ GUID? ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈ Π³Π΄Π΅ я Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ GUID? ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈ Π³Π΄Π΅ я Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
Π― Π²ΠΈΠ΄Π΅Π» ссылки Π½Π° GUID Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… мСстах, ΠΈ Π² Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ, Π½ΠΎ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ясно, Π³Π΄Π΅ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. Если Π±Ρ‹ ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΌΠΎΠ³ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° этот вопрос, Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π·Π΄ΠΎΡ€ΠΎΠ²ΠΎ. Бпасибо

15 ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ²

GUID тСхничСски ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. На самом Π΄Π΅Π»Π΅ это 128-битная структура, которая являСтся вряд Π»ΠΈ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ столкновСниС. Если Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΡƒ, Π΄ΠΎΠΌΠ΅Π½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² undecillions.

ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ GUID, ΠΊΠΎΠ³Π΄Π° Ρƒ вас Π΅ΡΡ‚ΡŒ нСсколько нСзависимых систСм ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ID, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ.

Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли Ρƒ мСня Π΅ΡΡ‚ΡŒ 5 клиСнтских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΡ… ΠΈ Π²ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ это ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° ID, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ GUID. Π­Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ запроса ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ Π²Ρ‹Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° с сСрвСра.

Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ„Π°Π±Ρ€ΠΈΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ систСм, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ мноТСство Ρ‚ΠΈΠΏΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², хранящихся Π² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ…, Π³Π΄Π΅ Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΡŽΠ±Ρ‹Π΅ 2 ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠΌΠ΅Π»ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. Π­Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ схСм ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ очистки.

GUID-это комбинация Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π² ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ°Π»Ρ‹Ρ… долях сСкунды) (поэтому ΠΎΠ½Π° Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ отличаСтся ΠΎΡ‚ любой GUID, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π΄ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·ΠΆΠ΅), ΠΈ Π½ΠΎΠΌΠ΅Ρ€, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ вашС мСстополоТСниС (ΠΈΠ½ΠΎΠ³Π΄Π° бСрСтся ΠΈΠ· MAC-адрСса вашСй сСтСвой ΠΊΠ°Ρ€Ρ‚Ρ‹) (Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΎΠ½ навСрняка Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ любого Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ GUID, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ прямо сСйчас ΠΊΠ΅ΠΌ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ).

Они Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° извСстны ΠΊΠ°ΠΊ UUID (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€).

Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎ всСм Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΡ‚Π²Π΅Ρ‚Π°ΠΌ, Π²ΠΎΡ‚ ΠΎΠ½Π»Π°ΠΉΠ½ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ GUID:

GUID (ΠΈΠ»ΠΈ UUID) являСтся Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ «Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€» (ΠΈΠ»ΠΈ «Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€»). Он это 128-разрядноС Ρ†Π΅Π»ΠΎΠ΅ число, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ для ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅ рСсурсы. Π’Π΅Ρ€ΠΌΠΈΠ½ GUID-это ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ с тСхнологиями Microsoft, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ UUID ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²Π΅Π·Π΄Π΅.

насколько ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ GUID?

128-Π±ΠΈΡ‚ достаточно большой ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ достаточно ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ Ρ‡Ρ‚ΠΎ Ссли 1,0000,000,000 GUIDs Π² Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Ρ‹ для 1 Π³ΠΎΠ΄Π° Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 50%. Или Ссли ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ Π½Π° Π—Π΅ΠΌΠ»Π΅ создаСтся 600,000,000 Ρ‚Π°ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 50% вСроятности Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚.

Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ GUID?

GUID ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΊΠ°ΠΊ ΠΊΠ»ΡŽΡ‡ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, ΠΈΠ»ΠΈ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ else поистинС ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ. GUID Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ всС интСрфСйсы ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ COM.

это Π² основном 128-Π±ΠΈΡ‚Π½ΠΎΠ΅ число, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ гСнСрируСтся Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (см. RFC 4112 http://www.ietf.org/rfc/rfc4122.txt), Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ практичСски Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ созданиС Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ². Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, я ΠΌΠΎΠ³Ρƒ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ GUID Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ стороннСй ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, которая Π΄ΠΎΠ»ΠΆΠ½Π° Π΄Π°Ρ‚ΡŒ ΠΈΡ… ΠΌΠ½Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹.

ΠΎΠ΄Π½ΠΎ ΡˆΠΈΡ€ΠΎΠΊΠΎ распространСнноС использованиС GUID Π² качСствС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² для COM-сущностСй Π² Windows (классы, typelibs, интСрфСйсы ΠΈ Ρ‚. Π΄.). Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ GUID, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои com-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ Π² Microsoft Π·Π° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ идСнтификация com-сущностСй являСтся основным использованиСм GUID, ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°Ρ…. НСкоторыС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ GUID для записСй Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠΌ ID, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π΄Π°ΠΆΠ΅ Ссли ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ GUID ΠΊΠ°ΠΊ сСрийный Π½ΠΎΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создан ΠΊΠ΅ΠΌ ΡƒΠ³ΠΎΠ΄Π½ΠΎ Π² любоС врСмя, ΠΈ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ сСрийный Π½ΠΎΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ.

Π΄Ρ€ΡƒΠ³ΠΈΠ΅ способы получСния ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π½, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΎΡ‚ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ (Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ счСтС, управляСмой ICANN).

ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ GUID ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌΠΈ (с Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой строку ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Ρ… чисСл, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сгруппированных ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: aaaaaaaa-bbbb-cccc-dddd-ffffffffffff), Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пространства ΠΈΠΌΠ΅Π½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½Ρ‹ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Π² Ρ€Π°Π·Π½Ρ‹Ρ… организациях, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΡƒΡŽ схСму (часто ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π½Π° Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π½Π°Ρ… Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°).

Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, пространство ΠΈΠΌΠ΅Π½ для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Java ΠΏΠΎ соглашСнию начинаСтся с Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ orgnaization (reversed), Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ ΠΈΠΌΠ΅Π½Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ specfic. НапримСр, ΠΏΠ°ΠΊΠ΅Ρ‚ Java ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π·Π²Π°Π½:

это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π° с коллизиями ΠΈΠΌΠ΅Π½ становится ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ.

пространства ΠΈΠΌΠ΅Π½ XML Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ-ΠΏΠΎ соглашСнию, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΠΉ пространство ΠΈΠΌΠ΅Π½ XML, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ » ΠΏΠΎΠ΄ » зарСгистрированным Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ΄ ΠΈΡ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ. НапримСр:

GUID ΠΈΠ»ΠΈ UUID (глобально ΠΏΡ€ΠΎΡ‚ΠΈΠ² ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎ) ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π½Ρƒ, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€:) ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ сгСнСрированноС машиной, Π΅ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ.

ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ GUID Π² Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ для свСдСния.

Π§Ρ‚ΠΎ касаСтся Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ΅Π½ GUID, это ΠΊΠΎΠ³Π΄Π° счСтчик, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ (Ρ‚Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅, ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΈΠΏ SQL ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ), увСличиваСтся. Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅» тСкстового » значСния (GUID Π² тСкстовой Ρ„ΠΎΡ€ΠΌΠ΅) ΠΈΠ»ΠΈ 128-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ значСния (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ GUID) Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡ€ΠΎΠΆΠ΅, Ρ‡Π΅ΠΌ Ρ†Π΅Π»ΠΎΠ΅ число.

ΠΊΡ‚ΠΎ-Ρ‚ΠΎ сказал, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ 128-Π±ΠΈΡ‚Π½Ρ‹Π΅ случайныС значСния, ΠΈ это ΠΏΠΎ сущСству Π²Π΅Ρ€Π½ΠΎ, Π½ΠΎ сдСлав нСбольшоС Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π½Π° UUID (GUID ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ относится ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Microsoft UUID), я Π²ΠΈΠΆΡƒ, Ρ‡Ρ‚ΠΎ сущСствуСт нСсколько Ρ€Π°Π·Π½Ρ‹Ρ… вСрсий UUID, ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ случайными. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ UUID для ΠΌΠ°ΡˆΠΈΠ½Ρ‹ (ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΅Ρ‰Π΅) ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ этот процСсс, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΆΠ΅ UUID ΠΏΠΎ Π΄ΠΎΡ€ΠΎΠ³Π΅, Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… прилоТСния.

для мСня Π»Π΅Π³Ρ‡Π΅ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ Π½ΠΈΡ… ΠΊΠ°ΠΊ просто «128-Π±ΠΈΡ‚Π½Ρ‹Π΅ случайныС значСния». По сути, Ρ‚Π°ΠΊ ΠΎΠ½ΠΎ ΠΈ Π΅ΡΡ‚ΡŒ. Π•ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² нСсколько Ρ†ΠΈΡ„Ρ€ вашСго GUID (Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, случайная Ρ‡Π°ΡΡ‚ΡŒ становится Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ мСньшС), Π½ΠΎ всС ΠΆΠ΅ ΠΎΠ½ΠΈ довольно большиС ΠΏΠΎΡ‡Ρ‚ΠΈ случайныС значСния.

Π― ΠΎΡΡ‚Π°Π²Π»ΡŽ это Π²Π°ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, Π³Π΄Π΅ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π½ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΡ‚Π²Π΅Ρ‚Π°Ρ… ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹. ΠŸΡƒΡΡ‚ΡŒ вашС Π²ΠΎΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄ΠΈΡ‡Π°Π». πŸ™‚

128-Π±ΠΈΡ‚Π½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ GUID ΠΎΡ‚Π½Ρ‹Π½Π΅ Π΄ΠΎ Π·Π°ΠΊΠ°Ρ‚Π°, ΠΈ Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ GUID Π΄Π²Π°ΠΆΠ΄Ρ‹, ΠΈ Π½ΠΈΠΊΡ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Они ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ с COM.

ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ Π²Ρ‹ использовали Π±Ρ‹ ΠΈΡ… для, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΈΡ… Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π½Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ². Наши ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ΠΈ ΠΊΠ°Ρ€Ρ‚Ρ‹ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… устройствах. ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΏΡƒΡ‚Π°Π΅ΠΌ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ, ΡΠ΄Π΅Π»Π°Π½Π½ΡƒΡŽ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ устройствС, с ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ΅ΠΉ, созданной Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ, поэтому Π²Π°ΠΆΠ½ΠΎ эти ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΡ‚ΠΎ ΠΈΡ… Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚, Π³Π΄Π΅ ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ GUID (Π½Π° самом Π΄Π΅Π»Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π½Π°ΡˆΡƒ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ схСму, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ числа, Π½ΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° GUID).

нСсколько Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ я Ρ€Π°Π±ΠΎΡ‚Π°Π» Π½Π°Π΄ систСмой ACD call center, Π³Π΄Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ записи Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… процСссоров Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Π² ΠΎΠ΄Π½Ρƒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…. Π― Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽ столбСц Π² MS SQL для создания GUID для ΠΊΠ»ΡŽΡ‡Π° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π½Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ систСмного ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° (столбСц ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ²). Π’ΠΎΠ³Π΄Π° это Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎ установки значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² NewID (ΠΈΠ»ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Π΅Π³ΠΎ Π² ΠΊΠΎΠ΄Π΅, Π½ΠΎ функция NewID () Π±Ρ‹Π»Π° Π±ΠΎΠ»Π΅Π΅ бСзопасной). ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ большого значСния для ΠΊΠ»ΡŽΡ‡Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ нСсколько Π±Ρ€ΠΎΠ²Π΅ΠΉ, Π½ΠΎ я ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Π΅Π» Π±Ρ‹ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ пространства, Ρ‡Π΅ΠΌ Ρ€ΠΈΡΠΊΠΎΠ²Π°Ρ‚ΡŒ столкновСниСм.

Π― Π½Π΅ Π²ΠΈΠ΄Π΅Π» Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ адрСса, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ GUID Π² качСствС ΠΊΠ»ΡŽΡ‡Π° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, поэтому я ΠΏΠΎΠ΄ΡƒΠΌΠ°Π», Ρ‡Ρ‚ΠΎ это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΡƒΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π’Ρ‹ Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ GUID-Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.

ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π΅Π³ΠΎ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π² глобальном контСкстС.

GUID ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ «Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€», ΠΈ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΅Π³ΠΎ, ΠΊΠΎΠ³Π΄Π° Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.

Π² RSS-ΠΊΠ°Π½Π°Π»Π°Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ GUID для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π² Π»Π΅Π½Ρ‚Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° чтСния Π»Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ Π»ΠΈ Π²Ρ‹ этот элСмСнт ΠΈΠ»ΠΈ Π½Π΅Ρ‚. Π‘Π΅Π· GUID Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ.

Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ UUID, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ » ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.- Π’ сущности, ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹. UUID-Π±ΠΎΠ»Π΅Π΅ подходящий Ρ‚Π΅Ρ€ΠΌΠΈΠ½. GUID-это Ρ‚Π΅Ρ€ΠΌΠΈΠ½, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Microsoft.

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ всСго срока слуТбы вашСго прилоТСния, Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ GUID.

ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρƒ вас Π΅ΡΡ‚ΡŒ сСрвСр с сСансами, Ссли Π²Ρ‹ Π΄Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ сСансу ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ GUID, Π²Ρ‹ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сСанса, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ созданного вашим сСрвСром. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для отслСТивания ошибок.

ΠΎΠ΄Π½ΠΎ особСнно ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ GUID, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ я нашСл, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΈΡ… для отслСТивания ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… посСтитСлСй Π² webapps, Π³Π΄Π΅ посСтитСли Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹ (Ρ‚. Π΅. Π½Π΅ вошли Π² систСму ΠΈΠ»ΠΈ зарСгистрированы).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π•Π²Π°Π½Π³Π΅Π»ΠΈΠ΅ ΠΎΡ‚ GUID

Π Π°Π·Π±ΠΈΡ€Π°ΡΡΡŒ с Π½ΠΎΠ²Ρ‹ΠΌ Visual C# 2008 (ΠΎΠ½ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ бСсплатный для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Ρ‡Ρ‚ΠΎ я Π½Π΅ удСрТался), нашСл Π½ΠΎΠ²ΠΎΠ΅ для сСбя слово Π² Π½Π°ΡƒΠΊΠ΅ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ΅ β€” GUID.

ПБ: Если Π±ΡƒΠ΄Π΅Ρ‚ интСрСсно, Ρ‚ΠΎ Π²Ρ‹Π»ΠΎΠΆΡƒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части, Π³Π΄Π΅ Π°Π²Ρ‚ΠΎΡ€ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π•Π²Π°Π½Π³Π΅Π»ΠΈΠ΅ ΠΎΡ‚ GUID

Π’ Π•Π²Π°Π½Π³Π΅Π»ΠΈΠ΅ ΠΎΡ‚ GUID Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° заповСдь:

I. ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ GUID для ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ΅ Π½ΠΎΠ²Ρ‹Ρ… сотрудников Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ это β€” ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΠΏΡ€Π°Π²ΠΈΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ я ΠΈΡ… ΠΎΠ±ΡƒΡ‡Π°ΡŽ. ΠŸΠΎΡ‡Ρ‚ΠΈ всСгда ΠΏΠΎΠ½Π°Ρ‡Π°Π»Ρƒ ΠΎΠ½ΠΈ смотрят Π½Π° мСня с Π²ΠΈΠ΄ΠΎΠΌ Ρ‰Π΅Π½ΠΊΠ° с Ρ‚ΠΎΡ€Ρ‡Π°Ρ‰ΠΈΠΌΠΈ ΡƒΡˆΠ°ΠΌΠΈ ΠΈ склонСнной Π½Π°Π±ΠΎΠΊ Π³ΠΎΠ»ΠΎΠ²ΠΎΠΉ, ΠΊΠ°ΠΊ Π±Ρ‹ говоря Β«ΠΊΠ°ΠΊ это?Β»

1) МнС Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ, Π° это β€” ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ!

БущСствуСт мноТСство ΠΏΡ€ΠΈΡ‡ΠΈΠ½ для использования GUID Π² качСствС ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°. Главная для мСня Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ связана с Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ я ΡΡ‚Ρ€ΠΎΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π― ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Β«newΒ» экзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π±Π΅Π· ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ. Π’Π°ΠΊ, создавая ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Order (Π·Π°ΠΊΠ°Π·) я Π½Π΅ Π±ΡƒΠ΄Ρƒ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… для получСния OrderID (OrderGUID Π² ΠΌΠΎΠ΅ΠΌ ΠΌΠΈΡ€Π΅), ΠΊΠ°ΠΊ я Π±Ρ‹ Π΄Π΅Π»Π°Π» Π² случаС с int OrderID. На этом ΡƒΡ€ΠΎΠ²Π½Π΅ Π΅Ρ‰Π΅ Π½Π΅ слишком впСчатляСт, Π΄Π°? ΠŸΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅ Π²ΠΎΡ‚ ΠΎ Ρ‡Π΅ΠΌ: я создаю ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Order с OrderGUID, ΠΏΠΎΡ‚ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ OrderLineItem (строки Π·Π°ΠΊΠ°Π·Π°) с OrderLineItemGUID Π±Π΅Π· Π•Π”Π˜ΠΠžΠ“Πž Ρ€Π°Π·Ρ€Ρ‹Π²Π° обращСния ΠΊ Π‘Π”. Π’ случаС с int я Π±Ρ‹ сдСлал 11 ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ GUID β€” объСдинСниС Π΄Π°Π½Π½Ρ‹Ρ… (merging), ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π²ΡˆΠ΅Π΅ΡΡ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ бСссчСтноС количСство Ρ€Π°Π·. Π”ΠΎ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ я ΡƒΠ²ΠΈΠ΄Π΅Π» свСт, я Ρ‚ΠΎΠΆΠ΅ использовал int ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΅Ρ‰Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ строку ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΌΠ½Π΅ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΡΠ»ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ€Π°Π½Ρ‹Ρ… источников, я Π΄Π΅Π»Π΅Π» ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ прСобразования.

DB1 (ΠšΠ»ΠΈΠ΅Π½Ρ‚ 1):
Order (Ρ‚Π°Π±Π»ΠΈΡ†Π° Π·Π°ΠΊΠ°Π·ΠΎΠ²)
OrderID = 1
CustomerID = 1

DB2 (ΠšΠ»ΠΈΠ΅Π½Ρ‚ 2):
Order
OrderID = 1
CustomerID = 1

Если ΠšΠ»ΠΈΠ΅Π½Ρ‚ 1 ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°Π΅Ρ‚ ΠšΠ»ΠΈΠ΅Π½Ρ‚Π° 2 ΠΈ ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠ»ΠΈΡ‚ΡŒ ΠΈΡ… Π΄Π°Π½Π½Ρ‹Π΅ Π² Π΅Π΄ΠΈΠ½ΡƒΡŽ Π‘Π”, ΠΌΠ½Π΅ придСтся ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‡ΡŒΠΈ-Ρ‚ΠΎ OrderID ΠΈ CustomerID Π½Π° ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ int значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡ, послС Ρ‡Π΅Π³ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ update Π±ΠΎΠ»ΡŒΡˆΠΎΠΌΡƒ количСству записСй, Π°, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΠΎΠΏΠ»ΡΡΠ°Ρ‚ΡŒ с Π±ΡƒΠ±Π½ΠΎΠΌ ΠΈ с ΠΎΠΏΠΎΡ€Π½Ρ‹ΠΌΠΈ значСниями (seed values). Π£ΠΌΠ½ΠΎΠΆΡŒΡ‚Π΅ это Π½Π° дСсятки Ρ‚Π°Π±Π»ΠΈΡ†, ΡƒΡ‡Ρ‚ΠΈΡ‚Π΅ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ строк Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ Ρƒ Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ΠΎ ΠΌΠ½ΠΎΠΉ стоит Π”Π•Π™Π‘Π’Π’Π˜Π’Π•Π›Π¬ΠΠž слоТная Π·Π°Π΄Π°Ρ‡Π°, которая ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΄ΠΎΡ„ΠΈΠ³Π° тСстирования послС написания SQL ΠΈ/ΠΈΠ»ΠΈ ΠΊΠΎΠ΄Π°.

Однако, Ссли я ΡΠ»Π΅Π΄ΡƒΡŽ Π•Π²Π°Π½Π³Π΅Π»ΠΈΡŽ ΠΎΡ‚ GUID:

Π’ этом случаС, всС, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ сводится ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ вставкС всСх строк ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π‘Π” Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ. Никаких ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ, Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π·Π°ΠΌΠΎΡ€ΠΎΡ‡Π΅Π½Π½Ρ‹Ρ… тСстов, просто, ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ дСйствСнно. НСдавно ΠΌΠ½Π΅ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Ρ‚ΡŒ эту ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ с Π‘Π” Π΄Π²ΡƒΡ… ΠΌΠΎΠΈΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² AT&T ΠΈ Cingular. ВсС Β«ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅Β» заняло 45 ΠΌΠΈΠ½ΡƒΡ‚.

Π”Ρ€ΡƒΠ³ΠΎΠΉ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€: ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ваши ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ часто Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎ Π² ΠΎΡ„Ρ„Π»Π°ΠΉΠ½Π΅, ΠΈ Π²Π°ΠΌ приходится Π·Π°ΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΎΠ±Ρ‰ΡƒΡŽ Π‘Π” ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ это ΠΏΡ€ΠΎΡ‰Π΅, Ρ‡Π΅ΠΌ Ρƒ Ρ€Π΅Π±Π΅Π½ΠΊΠ° ΠΊΠΎΠ½Ρ„Π΅Ρ‚Ρƒ ΠΎΡ‚Π½ΡΡ‚ΡŒβ€¦ Β© Если Π²Ρ‹ Π²Π΅Ρ€ΠΈΡ‚Π΅ Π² GUID. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ Ρ‚Π°ΡΠΊΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π°Π·Π°ΠΌΠΈ.

3) Π’ΠΈΠΏΠΎ-Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ всС Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΏΠΎ поставщику, достаточно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ связь (join) Note.ParentGUID ΠΊ Vendor.VendorGUId. НС Π½ΡƒΠΆΠ½Ρ‹ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Ρ‚ΠΈΠΏΠΎΠ², Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π΄ΡƒΠΌΡ‹Π²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΡΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒ, Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΊΡƒΡ‡ΠΈ ссылочных Ρ‚Π°Π±Π»ΠΈΡ†, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ с ΠΊΠ°ΠΊΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° связана строка.

Π’Ρ‹ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅ΡΡŒ, ΡƒΠ·Π½Π°Π² насколько часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ этот нСбольшой ΠΏΡ€ΠΈΠ΅ΠΌ. НСдавно ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Β«Π°ΡƒΠ΄ΠΈΡ‚Β» ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· Π½Π°ΡˆΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ ΠΊΡ‚ΠΎ Ρ‡Ρ‚ΠΎ удалял, добавлял ΠΈΠ»ΠΈ измСнял Π² Π‘Π”. ΠœΡ‹ просто Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ нСсколько строчСк ΠΊΠΎΠ΄Π° ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ DataContext SubmitChanges() (ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ LINQ Π² этом ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ) для создания ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ записи Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π°ΡƒΠ΄ΠΈΡ‚Π°. ΠŸΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ° Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ запись Π² эту Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ происходит автоматичСски, Ρ‡Ρ‚ΠΎ позволяСт Π½Π°ΠΌ Π½Π΅ ΠΏΠ°Ρ€ΠΈΡ‚ΡŒΡΡ написаниСм ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ «аудиторского» ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

БущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Ρ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ для использования GUID, Π½ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Π½Π΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π» Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΈ Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€ΡŽ GUID, ΠΈΠ±ΠΎ ΠΎΠ½ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½ спас ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² ΠΌΠΎΠ΅ΠΌΡƒ клиСнту… Π΄Π°, я сказал ΠœΠ˜Π›Π›Π˜ΠžΠΠ«!

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

На нашСм сайтС Π±Ρ‹Π»Π° Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚Π° рабочая Π‘Π” ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ тСстовая Π‘Π”, слСгка ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ°Ρ копия Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ (Π½Π° ΠΏΠ°Ρ€Ρƒ мСсяцСв). Π’ процСссС тСстирования ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π½Π° ΠΈΡ… сторонС ΡƒΠ²ΠΈΠ΄Π΅Π» ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΡˆΠΈΡ… тСстовых Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒΡŽ ΠΎΠΏΠ»Π°Ρ‚ ΠΈ, Π½Π΅ Π΄ΠΎΠ»Π³ΠΎ думая, скормил ΠΈΡ… ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½ΠΎΠΌΡƒ сСрвСру. Ну, дальшС Π²Ρ‹ поняли… ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°ΠΏΠ»Π°Ρ‚ΠΈΠ» ΠΊΡƒΡ‡Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… поставщиков ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π΄Π²Π°ΠΆΠ΄Ρ‹ (ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΏΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌΡƒ запросу, Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π· β€” ΠΏΠΎ тСстовому), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΅Ρ‰Π΅ ΠΈ Π½Π΅ совсСм Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ поставщикам (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ Π½Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π»ΠΈ Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ, вСдь тСстовая Π‘Π” устарСла Π½Π° ΠΏΠ°Ρ€Ρƒ мСсяцСв). Π’ΠΎΡ‚ Ρ‚Π°ΠΊ, Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ косяков с ΠΌΠΎΠ΅ΠΉ стороны, я ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΡƒΠΆΠ°ΡΠ½ΡƒΡŽ ΠΏΠΎΠΌΠΎΠΉΠΊΡƒ Π² данных… Π½Ρƒ ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Ρ‚Π°ΠΊ Π΄ΡƒΠΌΠ°Π» ΠΌΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚. Однако, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС ΠΌΠΎΠΈ записи ΠΎ Π²Ρ‹ΠΏΠ»Π°Ρ‚Π°Ρ… ΠΈΠΌΠ΅Π»ΠΈ GUID, я ΠΌΠΎΠ³ Π»Π΅Π³ΠΊΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚Π΅ записи, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡˆΠ»ΠΈ ΠΈΠ· тСстовой Π±Π°Π·Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠΈ ΠΏΠΎ Π½ΠΈΠΌ. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ссли Π±Ρ‹ я использовал INT, Ρƒ мСня Π½Π΅ Π±Ρ‹Π»ΠΎ Π±Ρ‹ способа ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΈΠ· ΠΊΠ°ΠΊΠΎΠΉ Π±Π°Π·Ρ‹ ΠΏΡ€ΠΈΡˆΠ΅Π» запрос PaymentID = 1000, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

Ну Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΆΠ΅ это ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ спасти ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹? ΠŸΡ€ΠΎΡΡ‚ΠΎβ€¦ ΡƒΠΌΠ½ΠΎΠΆΡŒΡ‚Π΅ тысячи запросов Π½Π° ΡˆΡ‚Ρ€Π°Ρ„ Π·Π° ΠΎΡ‚ΠΌΠ΅Π½Ρƒ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ° ($20-30). И Π΅Ρ‰Π΅ Π½Π° Ρ‚Ρ€ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ такая ошибка ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΠ»Π°ΡΡŒ Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π°!

Ну Π° Π΅ΡΡ‚ΡŒ Π»ΠΈ нСдостатки Ρƒ GUID?

Если ΠΊΡ€Π°Ρ‚ΠΊΠΎ, Ρ‚ΠΎ Π΄Π°, Π΅ΡΡ‚ΡŒ. Однако ΠΎΠ½ΠΈ, Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹, Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠΎΠ΅Π³ΠΎ мнСния. НаиболСС ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… β€” это написаниС SQL запросов Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ (ΠΊΠ³Π΄Π° Π½Π°Π΄ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π°ΠΉΡ‚ΠΈ).

SELECT * FROM ORDER WHERE ORDERID = 12

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ нСдостаток β€” нСбольшоС сниТСниС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρƒ связСй, построСнных Π½Π° Π±Π°Π·Π΅ gUID, ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с INT. Но ΠΏΠΎ ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ использовании Ρ‚Π°Π±Π»ΠΈΡ† с ΠΌΠ½ΠΎΠ³ΠΎΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π½Ρ‹ΠΌ количСством строк, это Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. НСсколько миллисикунд Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ β€” нСбольшая Ρ†Π΅Π½Π° Π·Π° всС прСлСсти GUIDΠ°.

ΠžΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ эту Ρ‚Π΅Ρ…Π½ΠΈΠΊΡƒ Π² ΠΊΠ°ΠΊΠΎΠΌ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ нСбольшом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, особСнно Ссли всС Π΅Ρ‰Π΅ настроСны скСптично. Π”ΡƒΠΌΠ°ΡŽ, ΠΎΠ½Π° окаТСтся Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Ρ‡Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΌΠ΅Ρ‡Ρ‚Π°Ρ‚ΡŒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *