seaweedfs使用说明 基本概念master 存储映射关系,文件和fid的映射关系 weed masterNode 系统抽象的结点,抽象为datacenter、rack、datanodedatacenter 数据中心,包含多个rack,类似一个机房rack :属于一个datacenter,类似机房中的一个机架datanode : 存储节点,存储多个volume,类似机架中的一个机器 weed volumev...
seaweedfs {FastDFS它只能通过专有API对文件进行存取访问,不支持POSIX接口方式,不能mount使用。Seaweedfs (https://github.com/chrislusf/seaweedfs)Seaweedfs 的设计原理是基于 Facebook 的一篇图片存储系统的论文 Facebook-Haystack 说到这个,毛剑也在依这个论文写bfs, 正在开发中,可以跟看从小到大一步...
为什么hashtable被弃用了 作者Hashtable的作者:HashMap的作者:Hash Map的作者比Hashtable的作者多了著名顶顶的并发大神Doug Lea。他写了util.concurrent包。著有并发编程圣经Concurrent Programming in Java: Design Principles and Patterns 一书。他的个人主页: http://g.oswego.edu/Jo...
五大常用算法总结 引言据说有人归纳了计算机的五大常用算法,它们是贪婪算法,动态规划算法,分治算法,回溯算法以及分支限界算法。虽然不知道为何要将这五个算法归为最常用的算法,但是毫无疑问,这五个算法是有很多应用场景的,最优化问题大多可以利用这些算法解决。算法的本质就是解决问题。当数据量比较小时,其实根本就不需要什么算法,写一些for循环完全就可以很快速的搞定了,但是当数据量比较大,场景比较复杂的时候,编写for循环就...
timestamp字段的“诡异”规则 有同学说timestamp字段的规则比较“诡异”。手册里面说的比较复杂,这里简单说明一下MySQL中 timestamp字段的一些规则。分为两部分定义规则:1、 timestamp字段有三个属性:a) 是否允许NULL。默认为not null。b) 默认值。可以设定为default CURRENT_TIMESTAMP 或default 某个常量。...
golang中map使用channel串行化多读多写 type MyMap struct { Data map[int]string ch chan func()}func NewMyMap() *MyMap { m := &MyMap{ Data: make(map[int]string), ch: make(chan func()), } go func() { for { (<-m.ch)...
给你一个字符串,写出所有可能的ip package mainimport ( "fmt" "os" "strconv")func getip(source string) (ips []string) { length := len(source) if length > 12 || length < 4 { return nil } i...
UUID package mainimport ( "fmt" "github.com/satori/go.uuid")func main() { // Creating UUID Version 4 // panic on error u1 := uuid.Must(uuid.NewV4()) fmt.Printf("UUIDv4: %s", u1.String()) //...
Go 2.0终于要来了! Go Language 2.0 终于要来了!早在今年8月份,Go团队便提出了2.0版本的设计草案,包括两大主题:错误处理和泛型。而今天,团队开发人员发话了:“是时候采取行动了!”Go 1和Go 2主要的区别在于决策的制定——Go 1的诞生是一个小团队的努力,而Go 2将更受其社区的影响。目前在Go 2的提案中,大约有120个未解决的问题被标记为Go 2的提案,每一个问题都与重要的库或语言更改...
grpc报错 1.消息体太小error: “grpc: received message larger than max (6115095 vs. 4194304)”message: “grpc: received message larger than max (6115095 vs. 4194304)”s := grpc.NewServer(grpc.MaxMsgSize(size), grpc.Ma...
MySQL 分区建索引 介绍mysql分区后每个分区成了独立的文件,虽然从逻辑上还是一张表其实已经分成了多张独立的表,从“information_schema.INNODB_SYS_TABLES”系统表可以看到每个分区都存在独立的TABLE_ID,由于Innodb数据和索引都是保存在".ibd"文件当中(从INNODB_SYS_INDEXES系统表中也可以得到每个索引都是对应各自的分区(primary key和uniq...
MYSQL优化流程 使用 show status 了解执行情况慢查询mysql&amp;gt; show status like ‘%slow%’;±--------------------±------+| Variable_name | Value |±--------------------±------+| Slow_launch_threads | 0 || Slow_querie...
ID生成器方案 Snowflake算法百度的:https://github.com/baidu/uid-generator/blob/master/README.zh_cn.mdsony的;https://github.com/sony/sonyflake其他:https://github.com/bwmarrin/snowflake
Golang(Go语言)内置函数之append append主要用于给某个切片(slice)追加元素如果该切片存储空间(cap)足够,就直接追加,长度(len)变长;如果空间不足,就会重新开辟内存,并将之前的元素和新的元素一同拷贝进去第一个参数为切片,后面是该切片存储元素类型的可变参数slice := append([]int{1,2,3},[]int{4,5,6}...)fmt.Println(slice) //[1 2 3 4 5...