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

响应式网站开发需要的条件免费刷粉网站推广

响应式网站开发需要的条件,免费刷粉网站推广,一二三四在线观看免费中文吗,设计网站得多少钱场景介绍 需求场景: 总部采集分支的数据,由于分支的 id 是子增的主键 id,所以会出现重复的 id,但是这个 id 需要作为标识,没有实际作用,这里选择的是分布式 id 雪花算法生成 id 存储用来标识,这…

场景介绍

需求场景: 总部采集分支的数据,由于分支的 id 是子增的主键 id,所以会出现重复的 id,但是这个 id 需要作为标识,没有实际作用,这里选择的是分布式 id 雪花算法生成 id 存储用来标识,这个项目基于 gva 进行开发的,可以使用 sonyflake snowflake 两个实现方式都可以解决这个问题,这里选择 snowflake 进行设计

什么是雪花算法

雪花算法,由Twitter开源,是一种分布式唯一ID生成算法。这种算法的主要特点是简单、高效,生成的64位整数ID全局唯一,且趋势递增。在单机上,雪花算法生成的ID也能保持递增特性,但在不同的机器上,由于各自有不同的时间戳,因此生成的ID不会冲突。

这种算法的性能相当高,每秒中能生成数百万的自增ID。因此,雪花算法被广泛应用于分布式系统中需要唯一ID的场景。例如,美团开源的分布式ID生成器Leaf也采用了雪花算法来保证全局唯一和趋势递增。
在这里插入图片描述

代码实现

我这边演示是通过插件注入的方式进行对 gva 进行二开,在 gva 后端模块的 server/plugin 中创建一个新的业务目录,里面创建一个 utils 工具文件夹,然后创建一个名字为 snowflake.go 文件,并且在 server 的全局 config.yaml文件配置一个 snowflake,在 main.go 主函数进行初始化以后就可以生成对应的雪花 id 了

拉取 snowflake

go get github.com/bwmarrin/snowflake

config.yaml 添加下面内容

snowflake:start-time: "2024-01-01" # stringmachineID: 1 # int64

plugin/工程目录添加config
在这里插入图片描述

// Snowflake 雪花机器结构体
type Snowflake struct {StartTime string `mapstructure:"start-time" json:"start-time" yaml:"start-time"`MachineID int64  `mapstructure:"machineID" json:"machineID" yaml:"machineID"`
}

全局config/config.go 中绑定注入这个 Snowflake 结构体

type Server struct {..........// 雪花Snowflake config.Snowflake `mapstructure:"snowflake" json:"snowflake" yaml:"snowflake"`
}

plugin/项目目录 创建 utils/snowflake.go

package utilsimport ("errors"sf "github.com/bwmarrin/snowflake""time"
)var node *sf.Node// SnowflakeInit 初始化
func SnowflakeInit(startTime string, machineID int64) (err error) {var start_time time.Timestart_time, err = time.Parse("2006-01-02", startTime)if err != nil {return errors.New("生成 id 失败")}sf.Epoch = start_time.UnixNano() / 1000000node, err = sf.NewNode(machineID)return
}// GenID 生成雪花 id
func GenID() int64 {return node.Generate().Int64()
}

主函数 main.go 初始化这个值

func main() {.....// 初始化雪花算法方法 SnowflakeInitif err := utils.SnowflakeInit(global.GVA_CONFIG.Snowflake.StartTime, global.GVA_CONFIG.Snowflake.MachineID); err != nil {fmt.Println("初始化雪花算法失败", err)return}fmt.Println("测试 id", utils.GenID())
}

结果
在这里插入图片描述

http://www.mmbaike.com/news/21873.html

相关文章:

  • 免费网站后台管理系统html小红书关键词排名
  • 网站后台风格市场监督管理局官网入口
  • 企业商城网站建设小红书seo是什么
  • 网站维护 英语seo顾问服务公司站长
  • 写小说赚钱的网站如何优化关键词的方法
  • 模板网站开发定制安卓系统优化app
  • jsp网站开发实例sem是做什么的
  • 网站建设设计外包公司手机google官网注册账号入口
  • 100个农村电商平台手机一键优化
  • 郑州公司网站制作口碑营销案例2021
  • 简述网站开发具体流程图今日头条10大新闻
  • 网站怎么做内链中国国家培训网是真的吗
  • 备案网站名称有什么用长沙网站优化体验
  • 网站域名如何查询2023年5月份病毒感染情况
  • 重庆明建网络科技有限公司干啥的手机游戏性能优化软件
  • wordpress屏蔽谷歌蜘蛛简述什么是seo及seo的作用
  • 谷歌seo 外贸建站白酒营销策划方案
  • 批量网站建设建站工具
  • 有个新网站能提供it培训机构
  • laravel微信公众号开发推推蛙seo顾问
  • 什么是b2b和b2c英文seo推广
  • 开花店做网站长沙网站推广有哪些啊
  • wordpress手册百度整站优化
  • 红色网站建设石家庄新闻
  • 免费做明信片的网站免费发布推广信息的软件
  • 高端模板网站建设价格云搜索app官网
  • 大邑做网站网络营销主要学什么
  • 网站点击弹出下载框 怎么做的企业推广公司
  • 杭州建设网 工程信息网站seo搜索引擎优化期末考试
  • 区块链技术和网站开发结合传统营销与网络营销的整合方法