8 Aralık 2022 Perşembe

Hazelcast SPI OperationExecutorImpl Sınıfı

Giriş
Şu satırı dahil ederiz
import com.hazelcast.spi.impl.operationexecutor.impl.OperationExecutorImpl;
Bu aslında bir ExecutorService. İçinde GenericOperationThread dizisi barındırır. Bu thread'lerden bazıları priority thread olarak düşünülmüş. Heartbeat timeout gibi şeyler priority thread tarafından çalıştırılır

Kalıtım şöyle
Thread
  HazelcastManagedThread
    OperationThread
      GenericOperationThread
      PartitionOperationThread

public final class OperationExecutorImpl implements OperationExecutor, 
  StaticMetricsProvider {

  // all operations for specific partitions will be executed on these threads, 
  // e.g. map.put(key, value)
  private final PartitionOperationThread[] partitionThreads;
  private final OperationRunner[] partitionOperationRunners;

  private final OperationQueue genericQueue
    = new OperationQueueImpl(
      new LinkedBlockingQueue<>(), new LinkedBlockingQueue<>());

  // all operations that are not specific for a partition will be executed here, 
  // e.g. heartbeat or map.size()
  private final GenericOperationThread[] genericThreads;
  private final OperationRunner[] genericOperationRunners;
   ...
}
genericThreads MasterResponseOp vs gibi cluster işlerini çalıştırır

Hiç yorum yok:

Yorum Gönder

THIRD-PARTY.txt Dosyası

Kullanılan harici kütüphanelerin sürümleri bu dosyada Dosyanın yolu şöyle hazelcast/licenses/THIRD-PARTY.txt