聊聊canal的LogFetcher
序本文主要研究一下canal的LogFetcherLogFetchercanal-1.1.4/dbsync/src/main/java/com/taobao/tddl/dbsync/binlog/LogFetcher.javapublic abstract class LogFetcher extends LogBuffer implements Closeable { /** Default initial capacity. */ public static final int DEFA...
2024-01-10聊聊kingbus的starRaft
序本文主要研究一下kingbus的starRaftstarRaftkingbus/server/server.gofunc (s *KingbusServer) starRaft(cfg config.RaftNodeConfig) error { var ( etcdRaftNode etcdraft.Node id types.ID cl *membership.RaftCluster remotes []*membership.Member ...
2024-01-10聊聊kingbus的DumpBinlogAt
序本文主要研究一下kingbus的DumpBinlogAtDumpBinlogAtkingbus/server/binlog_server.go//DumpBinlogAt implements dump binlog event by slave executed gtid setfunc (s *BinlogServer) DumpBinlogAt(ctx context.Context, startRaftIndex uint64, slaveGtids *gomysql.MysqlGTIDSet, ...
2024-01-10聊聊canal的ClientIdentity
序本文主要研究一下canal的ClientIdentityClientIdentitycanal-1.1.4/protocol/src/main/java/com/alibaba/otter/canal/protocol/ClientIdentity.javapublic class ClientIdentity implements Serializable { private static final long serialVersionUID = -8262100681930834834L; ...
2024-01-10聊聊dubbogo的GenericFilter
序本文主要研究一下dubbo-go的GenericFilterGenericFilterdubbo-go-v1.4.2/filter/filter_impl/generic_filter.goconst ( // GENERIC //generic module name GENERIC = "generic")func init() { extension.SetFilter(GENERIC, GetGenericFilter)}// when do a generic invoke, struct n...
2024-01-10聊聊carrera的BrokerMonitor
序本文主要研究一下carrera的BrokerMonitorBrokerMonitorDDMQ/carrera-monitor/src/main/java/com/xiaojukeji/carrera/monitor/broker/BrokerMonitor.javapublic class BrokerMonitor extends BaseConfigMonitor { private final static Logger LOGGER = LoggerFactory.getLogger(Bro...
2024-01-10聊聊rocketmq的AccessChannel
序本文主要研究一下rocketmq的AccessChannelAccessChannelrocketmq-client-4.5.2-sources.jar!/org/apache/rocketmq/client/AccessChannel.javapublic enum AccessChannel { /** * Means connect to private IDC cluster. */ LOCAL, /** * Means connect to Cloud ...
2024-01-10聊聊artemis的FederatedQueue
FederatedQueueactivemq-artemis-2.11.0/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/federation/queue/FederatedQueue.javapublic class FederatedQueue extends FederatedAbstract implements ActiveMQServerConsumerPlugin, Serializable { p...
2024-01-10聊聊artemis的DiscoveryGroup
DiscoveryGroupactivemq-artemis-2.11.0/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/cluster/DiscoveryGroup.javapublic final class DiscoveryGroup implements ActiveMQComponent { private static final Logger logger = Logger.getLogger(Dis...
2024-01-10聊聊chronos的MasterElection
序本文主要研究一下chronos的MasterElectionMasterElectionDDMQ/carrera-chronos/src/main/java/com/xiaojukeji/chronos/ha/MasterElection.javapublic class MasterElection { private static final Logger SWITCH_LOGGER = LogUtils.SWITCH_LOGGER; private static volatile Ser...
2024-01-10聊聊artemis的BaseInterceptor
序本文主要研究一下artemis的BaseInterceptorBaseInterceptoractivemq-artemis-master/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/core/BaseInterceptor.javapublic interface BaseInterceptor<P> { /** * Intercepts a packet which is received before ...
2024-01-10聊聊dubbogo的broadcastCluster
序本文主要研究一下dubbo-go的broadcastClusterbroadcastClusterdubbo-go-v1.4.2/cluster/cluster_impl/broadcast_cluster.gotype broadcastCluster struct{}const broadcast = "broadcast"func init() { extension.SetCluster(broadcast, NewBroadcastCluster)}// NewBroadcastCluster ...
2024-01-10聊聊rocketmq的AccessValidator
序本文主要研究一下rocketmq的AccessValidatorAccessValidatorrocketmq/acl/src/main/java/org/apache/rocketmq/acl/AccessValidator.javapublic interface AccessValidator { /** * Parse to get the AccessResource(user, resource, needed permission) * * @param req...
2024-01-10聊聊kingbus的startAdminServer
序本文主要研究一下kingbus的startAdminServerstartAdminServerkingbus/server/server.gofunc (s *KingbusServer) startAdminServer(urls types.URLs) error { if len(urls) != 1 { return ErrArgs } addr := urls[0].Host s.adminSvr = api.NewAdminServer(addr, s, s.cluster) return...
2024-01-10聊聊debezium的ChangeEventQueue
ChangeEventQueueMetricsdebezium-v1.1.1.Final/debezium-core/src/main/java/io/debezium/connector/base/ChangeEventQueueMetrics.javapublic interface ChangeEventQueueMetrics { int totalCapacity(); int remainingCapacity();}ChangeEventQueueMetrics接口定义了total...
2024-01-10聊聊rocketmq的AclClientRPCHook
序本文主要研究一下rocketmq的AclClientRPCHookRPCHookrocketmq-remoting-4.5.2-sources.jar!/org/apache/rocketmq/remoting/RPCHook.javapublic interface RPCHook { void doBeforeRequest(final String remoteAddr, final RemotingCommand request); void doAfterResponse(final...
2024-01-10聊聊rocketmq的ConsumeFromWhere
序本文主要研究一下rocketmq的ConsumeFromWhereConsumeFromWhererocketmq-common-4.5.2-sources.jar!/org/apache/rocketmq/common/consumer/ConsumeFromWhere.javapublic enum ConsumeFromWhere { CONSUME_FROM_LAST_OFFSET, @Deprecated CONSUME_FROM_LAST_OFFSET_AND_FROM_MI...
2024-01-10聊聊SpinalTap的MysqlEventFilter
序本文主要研究一下SpinalTap的MysqlEventFilterMysqlEventFilterSpinalTap/spinaltap-mysql/src/main/java/com/airbnb/spinaltap/mysql/event/filter/MysqlEventFilter.javapublic abstract class MysqlEventFilter implements Filter<BinlogEvent> { public static Filter<BinlogEven...
2024-01-10聊聊rocketmqmysql的ColumnParser
序本文主要研究一下rocketmq-mysql的ColumnParserColumnParserrocketmq-externals/rocketmq-mysql/src/main/java/org/apache/rocketmq/mysql/schema/column/ColumnParser.javapublic abstract class ColumnParser { public static ColumnParser getColumnParser(String dataType, Str...
2024-01-10聊聊dubbogo的PrometheusReporter
PrometheusReporterdubbo-go-v1.4.2/metrics/prometheus/reporter.goconst ( reporterName = "prometheus" serviceKey = constant.SERVICE_KEY groupKey = constant.GROUP_KEY versionKey = constant.VERSION_KEY methodKey = constant.METHOD_KEY timeoutKey = ...
2024-01-10聊聊CanalEventDownStreamHandler
序本文主要研究一下CanalEventDownStreamHandlerCanalEventDownStreamHandlercanal-1.1.4/sink/src/main/java/com/alibaba/otter/canal/sink/CanalEventDownStreamHandler.javapublic interface CanalEventDownStreamHandler<T> extends CanalLifeCycle { /** * 提交到store之前做一下处理...
2024-01-10聊聊artemis的maxDeliveryAttempts
maxDeliveryAttemptsactivemq-artemis-2.11.0/artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.javapublic class AddressSettings implements Mergeable<AddressSettings>, Serializable, EncodingSupport { //...... publ...
2024-01-10聊聊maxwell的BootstrapController
BootstrapControllermaxwell-1.25.1/src/main/java/com/zendesk/maxwell/bootstrap/BootstrapController.javapublic class BootstrapController extends RunLoopProcess { static final Logger LOGGER = LoggerFactory.getLogger(BootstrapController.class); private final ...
2024-01-10聊聊dubbogo的DefaultHealthChecker
DefaultHealthCheckerdubbo-go-v1.4.2/cluster/router/healthcheck/default_health_check.gofunc init() { extension.SethealthChecker(constant.DEFAULT_HEALTH_CHECKER, NewDefaultHealthChecker)}// DefaultHealthChecker is the default implementation of HealthChecker,...
2024-01-10聊聊rocketmq的ConsumeMode.ORDERLY
序本文主要研究一下rocketmq的ConsumeMode.ORDERLYConsumeMode.ORDERLYrocketmq-spring-boot-2.0.4-sources.jar!/org/apache/rocketmq/spring/annotation/ConsumeMode.javapublic enum ConsumeMode { /** * Receive asynchronously delivered messages concurrently */ CO...
2024-01-10