范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

阿里新规换掉UUID,NanoID更快更安全

  文章来源:https://c1n.cn/WcAl0
  目录 前言  了解 NanoID 及其用法  局限性和未来的重点  在将来……
  前言
  UUID 是软件开发中最常用的通用标识符之一。然而,在过去的几年里,其他的竞品挑战了它的存在。
  其中,NanoID 是 UUID 的主要竞争对手之一。
  因此,在本文中,我们将展开讨论 NanoID 的功能、它的亮点以及它的局限性,以便让我们更好地了解何时使用它。
  了解 NanoID 及其用法
  对于 JavaScript,生成 UUID 或 NanoID 都非常简单。它们都有对应的 NPM 包来帮助我们实现生成。
  我们所需要做的就是运行 npm i nanoid 命令安装 NanoID NPM 库 并在我们的项目中使用它:
  import   { nanoid } from   "nanoid"  ;
  model.id = nanoid();
  你是否知道 NanoID 每周的 NPM 下载量超过 1175.4 万,并且运行起来比 UUID 快 60%?
  此外,NanoID 比 UUID 年轻了将近 7 年,而且它的 GitHub 星数已经比 UUID 多。
  下图显示了这两个之间的关系 npm 趋势比较,我们可以看到 NanoID 的上升趋势与 UUID 的平坦进展有强烈的对比。
  https://www.npmtrends.com/nanoid-vs-uuid
  我希望这些数字已经说服你去尝试 NanoID。但是,这两者之间的主要区别很简单。它归结为键使用的字母表。
  由于 NanoID 使用比 UUID 更大的字母表,因此较短的 ID 可以用于与较长的 UUID 相同的目的。
  | NanoID 只有 108 个字节那么大
  与 UUID 不同,NanoID 的大小要小 4.5 倍,并且没有任何依赖关系。此外,大小限制已用于将大小从另外 35% 减小。
  大小直接影响数据的大小。例如,使用 NanoID 的对象小而紧凑,能够用于数据传输和存储。随着应用程序的增长,这些数字变得明显起来。
  | 更安全
  在大多数随机生成器中,它们使用不安全的 Math.random()。但是,NanoID 使用 crypto module 和 Web Crypto API,意味着 NanoID 更安全。
  此外,NanoID 在 ID 生成器的实现过程中使用了自己的算法,称为统一算法,而不是使用"随机 % 字母表" random % alphabet。
  我们创建了一个高质量的技术交流群,与优秀的人在一起,自己也会优秀起来,赶紧点击加群,享受一起成长的快乐。
  | 它既快速又紧凑
  NanoID 比 UUID 快 60%。与 UUID 字母表中的 36 个字符不同,NanoID 只有 21 个字符。
  0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz-
  此外,NanoID 支持 14 种不同的编程语言,它们分别是: C#、C++、Clojure 和 ClojureScript、Crystal、Dart & Flutter、Deno、Go、Elixir、Haskell、Janet、Java、Nim、Perl、PHP、带字典的 Python、Ruby、Rust、Swift。
  | 兼容性
  它还支持 PouchDB、CouchDB WebWorkers、Rollup 以及 React 和 Reach-Native 等库。
  我们可以使用 npx nanoid 在终端中获得唯一 ID。在 JavaScript 中使用 NanoID 唯一的要求是要先安装 NodeJS。
  此外,我们还可以在 Redux toolkit 中找到 NanoID,并将其用于其他用例,如下所示:
  import   { nanoid } from   ‘@reduxjs/toolkit’
  console  .log(nanoid()) //‘dgPXxUz_6fWIQBD8XmiSy’
  | 自定义字母
  NanoID 的另一个现有功能是它允许开发人员使用自定义字母表,我们可以更改文字或 id 的大小。
  如下所示:
  import   { customAlphabet } from   "nanoid"  ;
  const   nanoid = customAlphabet("ABCDEF1234567890"  , 12  );
  model.id = nanoid();
  在上面的示例中,我将自定义字母表定义为 ABCDEF1234567890,并将 Id 的大小定义为 12。
  | 没有第三方依赖
  由于 NanoID 不依赖任何第三方依赖,随着时间的推移,它能够变得更加稳定自治。
  从长远来看,这有利于优化包的大小,并使其不太容易出现依赖项带来的问题。
  局限性和未来重点
  根据 StackOverflow 中的许多专家意见,使用 NanoID 没有明显的缺点或限制。
  非人类可读是许多开发人员在 NanoID 中看到的主要缺点,因为它使调试变得更加困难。但是,与 UUID 相比,NanoID 更短且可读。
  另外,如果你使用 NanoID 作为表的主键,如果你使用相同的列作为聚集索引也会出现问题。这是因为 NanoID 不是连续的。
  在将来……
  NanoID 正逐渐成为 JavaScript 最受欢迎的唯一 id 生成器,大多数开发人员更喜欢选择它而不是更喜欢 UUID。
  https://www.npmjs.com/package/nanoid
  上述基准测试显示了 NanoID 与其他主要 id 生成器相比的性能:使用默认字母表每秒可生成超过 220 万个唯一 ID,使用自定义字母表每秒可生成超过 180 万个唯一 ID。
  根据我使用 UUID 和 NanoID 的经验,考虑到它的小尺寸、URL 友好性、安全性和速度,我建议在任何未来的项目中使用 NanoID 而不是 UUID。
  因此,我邀请您在下一个项目中试用 NanoID,并在评论部分与其他人分享您的想法。

孩子天天叫不醒,家长怎么办?现在关于小学生睡眠不足的现象讨论很多,许至家长反映孩子作业太多了,作业做到很晚,睡眠时间不足早上起不来。早晨总是上班族最忙碌的时候,家长们忙着起床准备早餐,然后把孩子叫起来,督促孩孩子犯错不批评反奖励,这样做正确吗?2022年2月的一天,我接待完区文明创建检查后回到办公室,发现我办公桌上有两封信,一看是五年级两名小学生写给我的道歉信。信中是这样写的尊敬的董校长您好!由于我损害了公物,特向您道歉王旭烽(茅盾文学奖获奖作家浙江农林大学教授)冰雪上的感动喝彩中的尊重郭红松绘名家看冬残奥北京2022年冬残奥会开幕式上的两首歌,让王旭烽印象深刻一首歌是开幕式迎接五星红旗入场时,视障表演者唱响的我和我的祖国。这首歌是完全由人声演唱的,没有其他的音乐张柏芝死心要给孩子改姓,谢霆锋的回应太无情,而谢贤回应显暖心文娱圈里边每天都邑产生非常多故意思的小段子和小八卦,一路走遍天下每天带你明白不同样的文娱八卦海洋,共享出故意思的文娱圈八卦段子,给朋友们带来少许小充分!王菲,张柏芝,谢霆锋,这三片陪伴孩子学习成长的好伙伴联想天骄一体机为啥火了?CNMO新闻望子成龙望女成凤是每一个家长的期望。但正所谓没有金刚钻就揽不了瓷器活,除了孩子本身的学习积极性以外,一台好的学习设备也是不可或缺的。优秀的学习设备就是孩子学习的好伙伴,孩子不听话总对着干?那是因为你根本不会跟他聊天1hr傍晚吃过饭,老公和两个娃在客厅里看新闻,我在厨房忙活。无意间听到老公和10岁大女儿小琳的对话,哭笑不得。小琳先开口(焦虑地)爸爸,我不喜欢数学,每次一考试,我就感到我的智商要父母一句你很棒对孩子的影响力有多大?我不禁想起一个问题父母说过的话对你影响有多大?一位网友曾这样倾诉心声我知道我的自卑和怯懦,想改变却无能为力,因为从小我父母的那一句句没出息丢脸已經在我的人生烙下印记我本来可以不是这非暴力沟通这样沟通,孩子才愿意听家长是一份不容易胜任的工作,在陪伴孩子成长的过程中,家长费尽了心血,却常常只换来孩子的沉默或对抗。当孩子渐渐长大,家长似乎越来越难以和他们沟通。其实孩子作为一个独立的个体,采用非暴怼巩汉林你行你上后,冯潇霆发长文皆是归错于外,鲜见自我反省最近,巩汉林因谈到了国脚拿着上千万年薪,却球都踢不进,这给国人丢了脸,因此引发热议。其中足球圈中人也有跳脚的,像玩青训的董路称不懂球,你批评个屁啊,以及前国足队长冯潇霆也称我退了,孩子好胜心强,好还是不好?别让你的认知毁了孩子朋友家的孩子小铭今年8岁,上二年级。他性格开朗,头脑非常聪明,学习成绩在班上也是数一数二的。可是,因为一些习惯上的问题,老师却总是找我朋友投诉。大部分的时候都是因为和同学发生矛盾甚抓住冬季的尾巴,迷人的雪村,阿尔山的冰雪童话世界阿尔山雪村就在阿尔山市区的西南边,在阿尔山的三天两夜里,光是雪村我都二刷了,原本有个晚上还想继续来看夜景来着,最后实在是雪下太大了放弃了。刚一踏入阿尔山雪村的第一反应,还去什么雪乡
南方网评志在科技创新,民营企业也能飞向星辰大海中国航天所迈出的每一步,时间都将予以清晰的记录。12月7日中午12时12分,由星河动力航天公司研发的谷神星一号(遥二)运载火箭在酒泉卫星发射中心成功发射升空,顺利将五颗商业卫星精确Leonard彗星欢迎圣诞彗星Leonard彗星(伦纳德彗星)于2021年初被发现。它将于今年12月离地球最近,因此被称为圣诞彗星。请继续阅读以了解何时以及如何看到一年中最亮的彗星。什么是Leonard彗星?2嫦娥四号在月球背面发现天外来客中国科学院国家空间科学中心空间天气学国家重点实验室研究员刘洋团队基于嫦娥四号巡视器获取的具有超高空间分辨率的影像与光谱数据,首次在月表原位识别出年龄在1个百万年以内的碳质球粒陨石撞汽车充电宝,充个啥玩意儿?深途(shentucar)原创作者周继凤编辑黎明新能源汽车的世界很魔幻特斯拉已经成为全球市值第一的车企,造车新势力蔚小理月销破万,我国新能源汽车保有量达到678万辆,但普通电动车车育碧在幽灵行动中添加区块链可在游戏外交易育碧今天(12月8日)宣布在旗下的游戏幽灵行动断点中首次添加了区块链NFT技术。本月晚些时候,育碧将对全新的UbisoftQuartz进行Beta测试,这是公司用于获取NFT的新平暗夜猫娘优化!7位英雄调整已上线!后羿增强,闪现吕布大增强12月7日全国各地进入大雪节气你的城市下雪了吗?猫娘和元歌都要穿新衣服了7位英雄调整已上线正式服PS昭君都随着这天气增强了哦!一起来看看吧源梦设计大赛元歌如果你不了解元歌的故事,可歌手李雪妍12月7日发行全新自创单曲战魂歌手李雪妍12月7日发行全新自创单曲战魂2021年12月08日174408来源凤凰网音乐0人参与0评论李雪妍全新词曲自创单曲战魂于12月7日由广州艺扬文化传播有限公司及元淦音乐共同转会期正式进入倒计时,结局会迎来反转吗?今天是工作日,没想到却迎来了一波转会期新瓜的集中爆发。因为离下周的转会期关闭期已经不到1周了,就算是极其不明朗的转会结局,也不得不明朗起来。因为再不官宣,转会期就结束了,要再等下次大爆冷!夺冠热门止步斯诺克正赛首轮,中国军团六人出战三人晋级2021年斯诺克苏格兰公开赛正赛首轮继续进行,中国军团六人出战三人被淘汰三人成功晋级第二轮。名将肖国栋42战胜杜安琼斯,雷佩凡42战胜罗比威廉姆斯,庞俊旭发挥出色他以42将博伊科淘消息称苹果CEO库克与中国达成2750亿美元交易,奠定成功事业IT之家12月8日消息,今天,TheInformation发布了一份冗长的报告,介绍了苹果首席执行官蒂姆库克为在苹果在中国发展所做的努力,从而为苹果在中国亮眼的成绩铺平了道路。该报大雪时节!为了健康,做好这十件事,可防心脑血管疾病12月7日,迎来二十四节气中的大雪节气。俗话说小雪封地,大雪封河。大雪时节,意味着已经正式进入冬季,雪花纷飞,落在地上渐成积雪,因此称之为大雪。由于天气寒冷,大雪会引发的很多季节性