إنشاء معرفات لتجديد التفرد وعنوان URL

StackOverflow https://stackoverflow.com/questions/1494567

  •  18-09-2019
  •  | 
  •  

سؤال

أحتاج إلى إنشاء كائنات وجعلها متوفرة على الويب. وبالمثل إلى Stackoverflow، لدي شيء من هذا القبيل.

http://stackoverflow.com/users/78374

ومع ذلك، في حالتي، يجب أن تكون معرف الكائن الذي أنشئه فريدا، لذلك أفكر في UUID، مما يؤدي إلى عنوان URL

http://example.com/users/{8e931066-7d87-4f2b-a3b5-608c4c9a9083}

لأنه في وقت لاحق، سيتعين علي دمج قواعد البيانات المختلفة معا، ولا أريد الحصول على مشاكل دمجها.

هل هذه ممارسة مقبولة؟ ما هي البدائل؟

هل كانت مفيدة؟

المحلول

إذا كانت مجرد مسألة دمج قواعد البيانات، وإعطاء كل dB معرف فريد ومن ثم الجمع بين ذلك مع الزيادة التلقائية PK سيعطي معرفات فريدة لكل كائن يمكنك استخدامه ولا تقلق بشأن دمج المشكلات.

نصائح أخرى

لا توجد مشكلة في ذلك. هوتميل يفعل ذلك.

إذا كان الاندماج يجب أن يكون 100٪ سلس، فمن المحتمل أن يكون UUID أفضل رهان. إذا كنت تتطلع إلى إنشاء عنوان URL سهل الإنسان، فقد تفكر في استخدام "اسم حساب" فريد من نوعه يمكن للمستخدم تحديده. من شأنه أن يخلق الصراعات إذا دمج قواعد البيانات، ولكن يمكن التغلب عليها.

أوافق على أن هذه ممارسة مقبولة لأنه يحتفظ معرف المستخدم فريد عند استخدامه على قواعد بيانات وتطبيقات متعددة.

يمكنني استخدام نفس الممارسة في كتلة تطبيق التخزين المؤقت الخاصة بي. تقوم كتلة تطبيق التخزين المؤقت بإنشاء GUID عند التخزين المؤقت عنصرا مؤقتا ويستخدم التطبيق هذا GUID لاسترداد العنصر من ذاكرة التخزين المؤقت.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top