Frage

Ich brauche Objekte zu erstellen und sie im Web zur Verfügung zu stellen. Ähnlich wie Stackoverflow, ich habe so etwas wie.

http://stackoverflow.com/users/78374

Doch in meinem Fall die ID des Objekts, ich schaffen muß eindeutig sein, so etwa ein UUID Ich denke, was zu einer URL wie

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

, weil später werde ich zusammen verschiedene Datenbanken zusammenführen muß, und ich will nicht Probleme Zusammenführung haben.

Ist das eine akzeptierte Praxis? Was sind die Alternativen?

War es hilfreich?

Lösung

Wenn es nur eine Frage Datenbanken der Zusammenführung, so dass sich jeder DB eine eindeutige Kennung und dann kombiniert, dass mit der Autoinkrement-PK eindeutige IDs geben würde für jedes Objekt kann man nutzen und sich keine Sorgen über Probleme zu verschmelzen.

Andere Tipps

Es gibt kein Problem darin. Hotmail tut das.

Wenn Verschmelzung muss 100% nahtlos sein, dann ein UUID ist wahrscheinlich die beste Wahl. Wenn Sie mehr menschenfreundlichen URLs zu erzeugen suchen, können Sie mit einem einzigartigen „Account-Namen“ der Ansicht, dass der Benutzer definieren kann. Dies würde möglicherweise Konflikte verursachen, wenn Datenbanken Zusammenführung, aber sie können überwunden werden.

Ich würde zustimmen, dass dies eine akzeptable Praxis ist, weil es die Benutzer-ID einzigartig hält, wenn es über mehrere Datenbanken und Anwendungen.

Ich benutze die gleiche Praxis in meinem Caching Application-Block. Der Caching-Anwendungsblock erzeugt eine GUID, wenn ein Element zwischengespeichert wird und die Anwendung verwendet die GUID das Element aus dem Cache abgerufen werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top