windows平台的分布式微服务解决方案(1)--UUID全球通用唯一识别码
UUID全球通用唯一识别码,顾名思义,是指在全世界任何一台计算机上都不会重复的唯一Id。
在单机/单服务器/单数据库的小型应用中,不需要用到这类东西。但在高并发、海量数据、大型分布式应用中,UUID/GUID这类却是构建整个系统的最核心一环。
设想一下如下场景:
在某个大型电商系统A中,“订单”这类大数据(比如,每天产生1500万条订单)必定不会存储在1台数据库服务器中,而是分布式的存储在多台数据库服务器组成的一个集群中(比如,1000台数据库服务器组成一个集群)。由于海量数据+高并发等特性时常会伴随“订单”发生,所以,如何确保“订单Id”在整个系统中唯一不重复,已经有些设计难度了。
若此时,另外一家公司的电商系统B,要与你家的电商系统A合并(甚至还有更多公司的C、D、E、等等),那么这些系统合并时“订单Id”出现重复的概率是很大的。要把这些重复修改成唯一,又会要费一番不小的改造功夫,十分麻烦…
但是,若我们一开始就使用UUID来实现“订单Id”,则不会有这些麻烦,一切迎刃而解,且十分轻松…
DeveloperSharp.dll中,提供了十分完善的UUID生成工具,使用示例代码如下:
protected void Page_Load(object sender, EventArgs e) { DeveloperSharp.Framework.CoreUtility.IUtility IU = new DeveloperSharp.Framework.CoreUtility.Utility(); this.TextBox1.Text = IU.GenerateId("Order"); //产生UUID }
IUtility.GenerateId方法详细说明如下:
GenerateId 声明:string GenerateId(string Prefix) 用途:生成主键Id (此处生成的是一种UUID) 参数:(1)string Prefix -- 前缀词 返回:String -- 主键Id
【本文采用.NET/C#语言撰写,如需其它语言版本,请联系作者索取。】
相关下载:
如果文章对您有帮助,请点赞、收藏、关注、分享(原创内容,欢迎转载,转载请注明出处) 扫描左侧二维码可以联系作者,收获更多精华知识。 出处:https://www.cnblogs.com/DeveloperSharp/ 本文采用「CC BY 4.0」知识共享协议进行许可,转载请注明作者及出处。 |
文章来源:https://www.cnblogs.com/DeveloperSharp/p/15631516.html
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
CSharp 管理员