java.util.UUID存在并发问题吗
PHP中文网
PHP中文网 2017-04-18 09:26:25
0
2
418

如题所述,有根据最好了,或者说在highly mutilthread env环境下,加synchronized wrapper下吗,怎么才能比较好的降低并发产生,又不大范围(如果使用这个生成随机串的次数很多,比如一天百万级别的,对于生成随机串怎么降低或者说保证唯一)影响性能.

http://stackoverflow.com/questions/7212635/is-java-util-uuid-thread-safe
http://bugs.java.com/view_bug.do?bug_id=6611830

PHP中文网
PHP中文网

认证0级讲师

répondre à tous(2)
Peter_Zhu
  1. Ce lien BUG indique également que le correctif dans JDK1.7 a été supprimé. Donc UUID actuellement, il semble qu'il n'y ait aucun problème de concurrence dans les versions JDK1.7 et supérieures

  2. .
  3. En fait, l'UUID est un moyen très gourmand en performances pour obtenir une clé unique. Dans un environnement distribué, il est recommandé d'utiliser directement l'IP locale et l'AtomicLong auto-incrémenté (vous pouvez bien sûr ajouter un). nombre aléatoire) pour terminer l'ensemble du processus. Génération de clé unique distribuée

  4. .
迷茫

Merci pour l'invitation.
Par exemple, lorsque les numéros de commande sont générés dans le commerce électronique, les numéros de commande pour un certain jour sont généralement pré-générés (quantité estimée, par exemple, il y a eu 1 million de commandes hier, et 1 million + une certaine redondance sera générée aujourd'hui), et placés dans des caches tels que memcache ou redis , peuvent également être placés dans MQ en tant que pool de numéros de commande. Si vous souhaitez l'utiliser, consommez simplement celui du pool de numéros de commande, qui est absolument unique.
Comment le générer dépend de votre logique métier. Généralement, si vous ne souhaitez aucune duplication, vous pouvez générer une séquence de 0 à 100 W, puis la mélanger.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!