一个使用 golang 编写并根据 Twitter snowflake id 的原理做了的 snowflake ID 生成工具
关于 snowflake ID 的介绍请点击这里
为了减少计算上带来性能消耗,以及最后生成形式的各种不确定性,生成 snowflake ID 采用了直接赋值的操作形式。测了一下,不错。
1
fuyufjh 2019-03-10 21:17:55 +08:00
恕我直言,几行代码的事,连 toy project 都算不上
|
2
whoisghost 2019-03-10 21:45:58 +08:00
把注释,文档改成英文就极好了。
|
3
bzj 2019-03-11 17:08:03 +08:00 1
发 giuhub 求 star 跟抖音快手要双击 666 一样 low
|
4
0xNone OP 大佬们,现在这个形势真的不好找工作。一星期面了好几家,挺累的。我知道这种行为不怎么光彩,这毕竟也是第一个开源,也希望能找到更多的朋友交流和进步,之前随便加了几个讨论群。感觉交流的内容都没什么意义,在这里也是希望能学到东西嘛。
|
5
0xNone OP @whoisghost 最近比较忙,而且在研究一个把增删改查这种操作以 RESFul API 风格,映射到 json api 上,懒得去写那些低级接口和刷 leetcode。反正找到工作我应该就会继续弄。加油
|
7
whoisghost 2019-03-15 00:41:31 +08:00
@0xNone 如果你开源作品是为了对找工作有帮助的话,建议搞技术难度更高的。
|
8
0xNone OP @whoisghost 没做过什么大的系统 /项目,不知道写什么,在尝试简化 web 框架,有什么好的思路可以借鉴么?
|
9
whoisghost 2019-03-15 11:17:29 +08:00
@0xNone 我猜你是想要找 Go 后端开发方面的工作,那么你可以比如用 Go 写个 Redis 核心功能、sqlite3 核心功能、memcached 核心功能、Proxifier(proxifier.com) Linux 内核动态模块实现版等等之类的。随便找个看起来有点技术含量的,有点兴趣的,用你最擅长、最喜欢的语言来写一个。
你肯定也科学上网,自己设计一个基于 UDP 的可靠传输协议,用自己写的来科学上网,也可以的,而且成就感很大的,技术含量也有。这个就是我自己实现的: https://github.com/fanpei91/gap-proxy 有意可加微信好友相互交流:Wm5WamExOTBhR1ZmWjJaMw== (两次 base64 编码) |
10
0xNone OP @whoisghost 哈哈哈,我做安全的,这个我懂,不过以后想往编程方面发展。我试过写一个 windows 全局代理,中间人转发代理那种,报文分析了一个多月,这个真的是个深坑,后来就离职了,暂时搁置
|
11
0xNone OP @whoisghost 号码有点性感
|
12
luw2007 2019-03-29 14:37:22 +08:00
https://github.com/luw2007/rabbitid 我也写了个发号器。
[需求调研]( https://github.com/luw2007/rabbitid/blob/master/doc/research.md) 为了保证多机房部署,需要一个全局 ID 生成器,支持多机房部署,一主多备。采用`ringbuffer`分批取,内存使用原子递增的方式保证高效性。支持多个存储后端如:`Redis`,`ZooKeeper`,`etcd`。 |