当前位置: 首页 > wzjs >正文

设计方案包括哪些方面北京seo优化方案

设计方案包括哪些方面,北京seo优化方案,在线ps网页版,焦作建设银行门户网站自增id 对于大多数系统来说,使用mysql的自增id当作主键再最合适不过了。在数据库层面就可以获取一个顺序的、唯一的、空间占用少的id。 自增id需要是 int、bigint这些整数类型,uint 支持 40 亿的数据量,bigint unsign(0 &#x…

自增id

对于大多数系统来说,使用mysql的自增id当作主键再最合适不过了。在数据库层面就可以获取一个顺序的、唯一的、空间占用少的id。

自增id需要是 int、bigint这些整数类型,uint 支持 40 亿的数据量,bigint unsign(0 ~18,446,744,073,709,551,615.), 40 亿的数据量对于一个频繁增加删除的表来说并不是一个很大的数字,有用完的风险。因此在建表时需要考虑,是否使用bigint。

优点

  • 简单、高效
  • 唯一、递增

缺点

  • 可拓展性差;所有的id生成都依赖于主库,难以拓展;当然,可以增加主库的数量,将数据水平切分保证每个库的Id不重复,但是会引入格外的复杂度。

每次id生成都会访问数据库,数据库压力大,所以很多系统想要自己生成id。

在这里插入图片描述

发号器服务

想要全局唯一的id,就只能访问一个单点服务。但是直接利用数据库,又会导致数据库压力大,而且每次生成id都会有一次远程访问;

我们可以写一个发号器的服务,专门用来生成唯一id;可以优化访问数据库的逻辑,比如 一次访问批量获取10条id到内存,并记录(持久化)最大的id=n+10,下次取号直接重内存中获取;

在这里插入图片描述

这样数据库的访问次数就减少了,并且还可以将 发号器服务和业务服务部署在一个pod里(sidecar),避免频繁的远程调用。

在这里插入图片描述

缺点

  • 增加开发、运维成本
  • 仍然存在远程调用,有一定延迟

接下来介绍两种常用的本地唯一id生成的方案

UUID

通过本地算法获取唯一字符串。

优点

  • 本地生成,简单、低延迟
  • 拓展性好,理论上无上限

缺点

  • uuid类型时字符串,一般长度12+,占用空间较大
  • uuid无序会导致页空间浪费以及频繁的页分裂,增加了系统开销

页分裂:如果是乱序的写入,每次在中间的某个叶子节点写入数据,后面的数据都需要往后挪。更糟糕的是,如果后挪时某一页记录已满,接着就会页分裂,部分的数据移动到新的页。

所以乱序的插入会导致频繁的页分裂,不仅耗时,还会导致空间利用率变低,后续不得不通过OPTIMIZE TABLE来重建表并优化填充页面。

图片来自 https://segmentfault.com/a/1190000039151324

snowflake

分布式ID生成算法

一个long型的ID,使用其中41bit作为毫秒数,10bit作为机器编号,12bit作为毫秒内序列号。这个算法单机每秒内理论上最多可以生成1000 * (2^12-1) 或 1000 * ((1 << 12)- 1),也就是4096000个ID。

借鉴snowflake的思想,结合各公司的业务逻辑和并发量,可以实现自己的分布式ID生成算法。

优点

  1. 本地生成id,延迟低
  2. id整体趋势有序
  3. 可以根据自己的业务灵活调整

缺点

  1. 不是全局有序

Reference

https://segmentfault.com/a/1190000039151324

https://blog.csdn.net/weixin_39710991/article/details/113128951

https://changkaixin.cn/2015/12/04/gen-id-way/

https://z.itpub.net/article/detail/F49F834DAD1FDEE011F56A7CD7DA65C6

https://chai2010.cn/advanced-go-programming-book/ch6-cloud/ch6-01-dist-id.htm

http://www.dtcms.com/wzjs/379506.html

相关文章:

  • 兰州做网站维护的公司云搜索网页版入口
  • php网站的客服窗口怎么做的百度推广销售
  • 网站开发人员篡改客户数据谷歌seo搜索
  • WordPress 陈星关键词排名优化江苏的团队
  • 东营区综合频道在线直播观看武汉网络推广优化
  • 赣州建网站西安网站制作工作室
  • 阿里云 一键wordpress厦门seo顾问
  • 做网站赚钱吗 怎么赚钱网站一年了百度不收录
  • 门户网站建设 总结网络营销和市场营销的区别
  • 浙江省建设网站首页深圳网站设计制作
  • 找人做网站安全吗比较好的搜索引擎
  • 上海网站建设设计一键搭建网站
  • web做网站实训目的我是新手如何做电商
  • 前端电视剧seo建站
  • 专业网站建设找哪家公司网页推广链接怎么做
  • 抚州市做棋牌网站十大软件培训机构
  • c 怎么做网站torrentkitty磁力官网
  • 淘宝客怎样做网站凡科建站登录入口
  • 网站改版意见搜索引擎推广的常见形式有
  • 有关学校网站建设策划书短视频营销常用平台有
  • 网络建设与运维技能大赛中职组衡阳网站优化公司
  • 自贡网页制作网站seo方案模板
  • 网站建设1選宙斯站长在线网站排名工具
  • 做基网站郑州专业的网站公司
  • 网站开发培训什么全国疫情最新情况最新消息今天
  • 如何将自己做的网站推广免费
  • 网站栏目标题如何制作一个网页网站
  • 阿里巴巴外贸平台一年多少钱重庆seo排名扣费
  • 网站建设 聊城口碑好网络营销电话
  • 微网站可以自己做吗电子商务网站建设规划方案