Checkpoint流程 CheckpointedInputGate.pollNext(1.10)1,拉取数据的时候先从BufferStorage拉去,如果由则消费,否则从inputGate拉去2, 对齐模式,如果正在对齐barrier,则当前channel会阻塞,先将消息加入CachedBufferStorage public Optional<BufferOrEvent> ...
Flink1.15 InputChannel源码分析
this.subtaskCheckpointCoordinator = new SubtaskCheckpointCoordinatorImpl(checkpointStorageAccess, this.getName(), actionExecutor, this.getCancelables(), this.getAsyncOperationsThreadPool(), environ...
Azkaban
azkaban-web ProjectManagerServlet handleMultiformPost(req, resp, params, session); // protected void handleMultiformPost(final HttpServletRequest req, final HttpS...
RocketMQ 消费消息
//PullMessageProcessor.java private RemotingCommand processRequest(final Channel channel, RemotingCommand request, boolean brokerAllowSuspend) throws RemotingCommandException { //从DefaultMessag...
RocketMQ DLeger
启动BrokerStartup //main方法启动入口 public static void main(String[] args) { start(createBrokerController(args)); } public static BrokerController start(BrokerController controller) { try { ...
RocketMQ 消息存储
BrokerController初始化的时候实例化一个DefaultMessageStore,并且负责load文件 //BrokerController.initialize() this.messageStore = new DefaultMessageStore(this.messageStoreConfig, this.brokerStatsManager, this.messageA...
BadgerDB 写入流程
入口 写的入口是update,通过key/value对写入值 err := db.Update(func(txn *badger.Txn) error { err := txn.Set([]byte("answer"), []byte("42")) return err }) 也可以有线new一个Entry,再通过txn.SetEntry err := db.Update(func...
Etcd 删除
删除Tombstone,与put差异 func (tw *storeTxnWrite) delete(key []byte) { ibytes := newRevBytes() idxRev := revision{main: tw.beginRev + 1, sub: int64(len(tw.changes))} revToBytes(idxRev, ibytes) //bolt...
BadgerDB GC流程
GC入口RunValueLogGC,供用户显示调用,唯一参数discardRatio,表示 func (db *DB) RunValueLogGC(discardRatio float64) error { if db.opt.InMemory { return ErrGCInMemoryMode } if discardRatio >= 1.0 || discardRati...
raft线性一致性读
ReadIndex Lease Read