etcd源码导读20191018

embed.StartEtcd

日志配置

Logging:
  --logger 'capnslog'
    Specify 'zap' for structured logging or 'capnslog'. [WARN] 'capnslog' will be deprecated in v3.5.
  --log-outputs 'default'
    Specify 'stdout' or 'stderr' to skip journald logging even when running under systemd, or list of comma separated output targets.
  --log-level 'info'
    Configures log level. Only supports debug, info, warn, error, panic, or fatal.

程序逻辑:

StartEtcd
inCfg.Validate
set cfg.Logger and grpc logger
logTLSHandshakeFailure
checkBindURLs: 不允许使用domain
checkHostURLs:只可以使用ip
CheckClusterState: new or existing
configurePeerListeners: http can't be used with tls
PeerURLsMapAndToken
NewServer: mkdir and create rafthttpclient and open boltdb
JoinCluster
NewCluster
recoverFromWal
NewServerStats
NewLeaseStats
newMVCC: srv.kv = mvcc.New
Start server and daemons

每一个函数都可以展开讲好久。

	if err = e.servePeers(); err != nil {
		return e, err
	}
	if err = e.serveClients(); err != nil {
		return e, err
	}

可以从这儿进入看看怎么处理集群自身和client的交户请求

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值