华说
Blog
Categories
Tags
About
  • Grpc Int64的坑

    Dec 27, 2021 · 1 分钟前 阅读  ·
    分享:

    在使用grpc的时候,proto的类型定义成int64,但结果展示却显示成string类型。刚开始还纳闷客户端说文档上定义int类型,为啥不和文档统一呢? 自信的我坚定的回答我定义的就是int类型的,统一的很。然后模拟完接口请求,打脸来得真快。 问题复现 定义proto文件 1// 音乐搜索项 2message PartyMusicSearchItem {3 string name = 1;4 int32 fileSize = 2;5 string author = 3;6 string musicId = 4;7 int32 type = 6;8 int64 createdAt = 7;9 int64 lastTime = …

    更多
  • Golang Defer

    Dec 12, 2021 · 0 分钟前 阅读  ·
    分享:

    更多
  • redis lua 脚本运行工具

    Dec 6, 2021 · 1 分钟前 阅读  ·
    分享:

    测试环境中,redis使用的是阿里云的rds,目前是没有权限运行redis-cli这种命令。如果对于lua长脚本,官方是推荐使用redis-cli去加载script然后运行的。 针对这样的环境,如果我们需要调试复杂或有不少逻辑的lua脚本,怎么调试? 一是直接用代码,调用端改代码调试,因为现在改代码不太方便,每次都要部署测试环境。 因此在想有没有更容易的方式,我们是有权限登录redis的,只是没有redis-cli的执行命令而已,因此我们还可以选择eval script ...的命令去执行。 但是script脚本很长,这时候我们可以借助压缩工具去处理。 其实说来说去,就是得找个lua脚本的压缩工具。 工具1:Lua 压缩器 …

    更多
  • Golang 多条件下的switch

    Nov 25, 2021 · 1 分钟前 阅读  ·
    分享:

    在业务场景下,如果有多条件,怎么处理? 比如条件isModifyName是否修改姓名,条件isModifyAge是否修改姓名。 我们可以使用if else来拼凑出4个条件,那么怎么使用switch case呢,switch case是比if else效率高的,可读性也更好,所以在条件多于2个的时候,会优先选择switch case。 方式一: case相当于一个if 1isModifyName := 1 2isModifyAge := 1 3 4switch { 5case isModifyName == 0 && isModifyAge == 0: 6 fmt.Println("all not …

    更多
  • Golang 将int转换成bool类型

    Nov 24, 2021 · 1 分钟前 阅读  ·
    分享:

    没有三目运算符的golang,有时候怎么处理才优雅简洁。最简单的方法就是if...else...判断 1testValue := 1 2testBool := test-1 == 0 3fmt.Println(testBool)

    更多
  • Golang Duration类型转换成int64

    Nov 17, 2021 · 1 分钟前 阅读  ·
    分享:

    我有个习惯,就是把一些比较固定的东西会写在常量里,比如一些key的过期时间,就会定义constant keyExpireDuration = 10*time.Second, 有一天,需要将这个过期时间戳返回给前端,然后我就没脑的使用了time.now.unix() + int64(xxx),然后就爆了 Duration类型是time包里定义的一个类型,实际上的类型是int64。 我们从time包定义的常量来分析 1const ( 2 Nanosecond Duration = 1 3 Microsecond = 1000 * Nanosecond 4 Millisecond = 1000 * Microsecond 5 …

    更多
  • Redis 使用 lua

    Nov 17, 2021 · 1 分钟前 阅读  ·
    分享:

    最近,业务代码上大量使用redis,每一次操作会对多个key进行操作,而有些key可能在别的操作中也会同一时刻被改动,所以为了保证中途不被别的修改,采用了lua脚本的方式 为什么不用redis事务 众所周知,redis自己也有一套事务机制,但redis的原子性实现是类似乐观锁的机制,如果在事务中的命令修改的key被其他事务或命令修改,则会执行失败回滚。 再加上redis本身事务并未很好的实现ACID,也导致redis的事务使用的场景一直不是很多。以后会有专门的文章书写redis的事务 与pipeline的区别 一般管道的使用场景是多个命令无依赖,或者批量操作一批key。使用pipeline就可以节省指令来回需要的rrt redis …

    更多
  • Go 语言开发设计指北

    Nov 1, 2021 · 4 分钟前 阅读  ·
    分享:

    本文转载:https://www.debuginn.cn/6832.html Go 语言是一种强类型、编译型的语言,在开发过程中,代码规范是尤为重要的,一个小小的失误可能会带来严重的事故,拥有一个良好的 Go 语言开发习惯是尤为重要的,遵守开发规范便于维护、便于阅读理解和增加系统的健壮性。 以下是我们项目组开发规范加上自己开发遇到的问题及补充,希望对你有所帮助: 注:我们将以下约束分为三个等级,分别是:【强制】 、【推荐】 、【参考】 。 Go 编码相关 【强制】 代码风格规范遵循 go 官方标准:CodeReviewComments,请使用官方golint lint 进行风格静态分析; 【强制】 代码格式规范依照gofmt,请安装 …

    更多
  • Redis Zset 有序集合

    Oct 31, 2021 · 1 分钟前 阅读 · redis zset  ·
    分享:

    zset是redis中常用的数据结构,一般使用场景是有序集合,排行榜等有序的需求我们会考虑使用。 背景: 最近也是做了相关的需求,用户发动态,将最新动态中的图片,视频或音频资源收集起来,列表中会展示用户最新4条动态的资源缩略图。因为动态还有个审核,所以 一般采集的时候会按审核的时间点采集,但展示却得按照创建时间展示。因此采用了zset的方案,score的值为创建时间,当审核完成时,会将该动态的资源信息以member存储至 zset中,取的时候,按照score(创建时间)由大到小读取 方案实施 存储,简单使用zadd命令,将动态资源信息(一个结构体,json格式化后以字符串形式)存储至zset中,createdAt为score …

    更多
  • 奇怪的梦 - 考研

    Oct 31, 2021 · 1 分钟前 阅读 · 梦  ·
    分享:

    清晨时分,做了一个让人诡异的梦。梦的内容很简单,却似曾相识,竟然是曾经做过的一个梦的续集,连做梦都开始有自动续的功能的么。 说说上次的梦吧,时间久远,已无法从脑海中记起多少细节,只能大概的描述下梦境的内容。 随着考研大军的越来越壮大,我也不免俗地想要成为其中的一员,在经过努力的准备后, 也考上了一所大学,这所大学名字叫上海长吾大学,可能是因为没有其他更好选择吧, 因为这是所985大学,也没挣扎,就选了这个大学,就这么愉快的收到这个大学的录取通知书了。 也感叹自己的努力没有白费。 上次的梦境是我经过努力拿到了一所985高校的录取通知书。而今天的梦境却从这时接着开始,很神奇,这梦隔着至少也几个月了吧。 我拿到录取通知书后,兴奋不已,彻夜 …

    更多
  • Mac OS下常备软件

    Oct 31, 2021 · 1 分钟前 阅读 · mac 软件  ·
    分享:

    基本软件 Homebrew chrome V2rayU,世界更精彩 iterm2,最好用的terminal ohmyzsh,最好用的shell zsh语法高亮插件,必备 zsh自动补全插件,必备 清理app git工具 Command Line Tools(需登录AppleID) Magnet alfred,听说是神器 工作软件 vscode,最好用的编辑器 golang postman 切换host ssh连接工具 最好用的redis工具

    更多
  • Golang 学习资料汇总,从入门到放弃

    Oct 26, 2021 · 1 分钟前 阅读 · golang 学习资料  ·
    分享:

    入门 go的一些使用小例子 无闻讲师的基础视频 go入门指南 go web基础 effective go 进阶 go内存模型 go程序诊断 标准库 标准库文档 标准库包的使用例子 go语言标准库 书籍或阅读清单 go开发者阅读清单 深入解析Go go语言编程之旅 go语法树入门 go语言设计-欧长坤 gopher博客推荐 draveness,go底层实现原理,讲得很详细 鸟窝,rpcx作者博客,go并发编程专栏 煎鱼大大,可以关注下公众号 李文周的博客 曹春晖的golang笔记 峰云golang专栏 大彬的blog gophers推荐清单

    更多
    • ««
    • «
    • 1
    • 2
    • 3
    • 4
    • »
    • »»

最近阅读

  • Grpc Int64的坑
  • Golang Defer
  • redis lua 脚本运行工具
  • Golang 多条件下的switch
  • Golang 将int转换成bool类型
  • Golang Duration类型转换成int64
  • Redis 使用 lua
  • Go 语言开发设计指北

分类

生活-随想 17 编程-技术 12 经验-分享 1

标签

LEETCODE 3 GOLANG 2 夏天 2 思念 2 时间 2 计算机网络 2 雨 2 面试 2 CHANNEL 1 LINUX 1 MAC 1 MANJARO 1 REDIS 1 VIM 1 ZSET 1 七夕 1 元旦 1 学习资料 1 工作 1 心情 1
所有标签
CHANNEL1 GOLANG2 LEETCODE3 LINUX1 MAC1 MANJARO1 REDIS1 VIM1 ZSET1 七夕1 元旦1 夏天2 学习资料1 工作1 心情1 思念2 情人节1 旅行1 时间2 杭城1 梦1 深夜1 生日1 病痛1 算法1 蝉1 西湖1 计算机网络2 诗1 软件1 雨2 雪1 面试2
[A~Z][0~9]
华说

Copyright  华说. All Rights Reserved