go技术
猿职场
这个作者很懒,什么都没留下…
展开
-
golang 生成二维码名片 海报
根据用户自定生成个人名片,海报。可以指定海报宽,高。原创 2022-10-12 16:01:24 · 639 阅读 · 0 评论 -
golang查询指定集合中的一个元素的所有子集
查找集合 set :=[]int{1,2,3,4}中所有包含3的子集原创 2022-03-30 11:25:43 · 1973 阅读 · 0 评论 -
go 使用二进制位记录数据状态值
使用二进制位存储状态,类型数据信息原创 2022-03-29 14:37:01 · 1091 阅读 · 0 评论 -
golang识别身份证号
使用go语言 简单获取身份证号码原创 2022-03-29 10:04:15 · 1242 阅读 · 2 评论 -
使用golang实现任务池
使用golang实现任务池为了减少服务请求过于频繁,使用打包的方式进行数据处理. 并约束服务的时效在规定的范围中,避免数据失效一.思路分析1.为了不降低三方请求响应, 设计一个专门接受请求的缓冲池,将用户请求的数据直接放入缓冲池中2.启用单独的任务分发进程,负责时刻监听请求数据以及定时维护过期请求数据3.启用单独的过期数据处理进程,对过期数据单独进行处理4.启用打包处理进程,将数据按照设定打包二.程序实现程序使用golang进行开发设计使用毫秒的处理时间package pool原创 2022-03-15 18:09:18 · 592 阅读 · 0 评论 -
golang的交叉编译环境设置
golang的交叉编译环境设置一.编译系统GOOS:目标可执行程序运行操作系统,支持 darwin,freebsd,linux,windows1.修改为windowsgo env -w GOOS = windows2.修改为linuxgo env -w GOOS = linux二.编译内核GOARCH:目标可执行程序操作系统构架,包括 386,amd64,armgo env -w GOARCH=amd64三.文件库设置当CGO_ENABLED=1, 进行编译时, 会将文原创 2022-03-14 10:44:33 · 3685 阅读 · 1 评论 -
golang 实现交集、差集、并集
求两个int切片的差集func SliceDifferenceInt(A, B []int) []int { if len(A) < 1 || len(B) < 1 { return A } result := make([]int, 0) for _, a := range A { flag := true for _, b := range B { if b == a { flag = false break } } if flag原创 2022-03-03 18:04:49 · 1541 阅读 · 0 评论 -
go文件分片上传实现
文件分片上传文件分片上传,解决大文件上传缓慢问题实现思路:1.使用js将文件按照指定的分片文件大小进行拆分2.构建form表单数据i:file 分片文件ii: chunkindex 当前切片数据iii: chunktotal 分片总数iv: filesize 文件总大小3.使用ajax逐渐上传文件4.后台保存每一个上传文件5.生成新文件,计算上传的每个分片文件总大小是否于前端传的文件总大小是否相等,相等则合并分片文件6.删除分片文件完整文件代码https://github.c原创 2021-02-22 18:26:28 · 2422 阅读 · 0 评论 -
go文件上传断点续传功能
go断点续传功能断点续传功能,减少服务器文件重复存储. 提升上传响应速度使用两种思路进行续传功能注意: 文件使用文件名称进行唯一文件进行判断, 不具有文件唯一性.如果使用于生产环境. 需要处理文件上传文件名称问题思路1:思路1: 使用零时文件记录中断位置.1.文件上传时,先创建上传一个新的文件2.创建记录中断位置的临时文件3.设置文件读写偏移量4.上传完成后,删除临时文件func upload1(r *http.Request) (int,error) { // 获取上传文件原创 2021-02-20 17:59:57 · 1246 阅读 · 0 评论 -
go使用redis位运算做用户点赞统计
go使用redis位运算做用户点赞统计使用redis的位运算,统计点赞数.使用"0"字符作为初始化的二进制字符, 二进制为: 00110000使用redis的命令:set: set key valuesetbit: setbit key offset value(0或1)getbit: getbit key offset(下标)bitcount: bitcount key [start, end](start:为开始字符下标, end:为字符的最大长度减1)名称原创 2021-02-08 18:15:52 · 497 阅读 · 0 评论 -
检测结构体、map中,指定的key的值是否为空
// 检测结构体/map中指定参数不能为空func CheckValueNotEmpty(obj interface{}, fields []string) (bool, error) { objValue := reflect.ValueOf(obj) switch reflect.ValueOf(obj).Kind() { case reflect.Struct: for _, field := range fields { value := objValue.FieldByNam..原创 2021-02-08 12:39:33 · 555 阅读 · 0 评论