Search in sources :

Example 1 with PeriodPusher

use of com.tencent.angel.ps.backup.ha.push.PeriodPusher in project angel by Tencent.

the class ParameterServer method initialize.

/**
 * Initialize.
 *
 * @throws IOException
 * @throws InstantiationException
 * @throws IllegalAccessException
 */
public void initialize() throws IOException, InstantiationException, IllegalAccessException {
    LOG.info("Initialize a parameter server");
    locationManager = new PSLocationManager(context);
    locationManager.setMasterLocation(masterLocation);
    workerPool = new WorkerPool(context);
    workerPool.init();
    ioExecutors = new IOExecutors(context);
    ioExecutors.init();
    matrixStorageManager = new MatrixStorageManager(context);
    int taskNum = conf.getInt(AngelConf.ANGEL_TASK_ACTUAL_NUM, 1);
    clockVectorManager = new ClockVectorManager(taskNum, context);
    clockVectorManager.init();
    matrixMetaManager = new PSMatrixMetaManager(context);
    master = new MasterClient(context);
    master.init();
    psServerService = new ParameterServerService(context);
    psServerService.start();
    matrixTransportServer = new MatrixTransportServer(getPort() + 1, context);
    int replicNum = conf.getInt(AngelConf.ANGEL_PS_HA_REPLICATION_NUMBER, AngelConf.DEFAULT_ANGEL_PS_HA_REPLICATION_NUMBER);
    if (replicNum > 1) {
        // conf.getBoolean(AngelConf.ANGEL_PS_HA_USE_EVENT_PUSH, AngelConf.DEFAULT_ANGEL_PS_HA_USE_EVENT_PUSH);
        boolean useEventPush = false;
        if (useEventPush) {
            boolean sync = conf.getBoolean(AngelConf.ANGEL_PS_HA_PUSH_SYNC, AngelConf.DEFAULT_ANGEL_PS_HA_PUSH_SYNC);
            if (sync) {
                ps2PSPusher = new SyncEventPusher(context);
            } else {
                ps2PSPusher = new AsyncEventPusher(context);
            }
        } else {
            ps2PSPusher = new PeriodPusher(context);
        }
        ps2PSPusher.init();
    } else {
        snapshotDumper = new SnapshotDumper(context);
    }
}
Also used : SnapshotDumper(com.tencent.angel.ps.backup.snapshot.SnapshotDumper) MasterClient(com.tencent.angel.ps.client.MasterClient) PSLocationManager(com.tencent.angel.ps.client.PSLocationManager) AsyncEventPusher(com.tencent.angel.ps.backup.ha.push.AsyncEventPusher) WorkerPool(com.tencent.angel.ps.matrix.transport.WorkerPool) SyncEventPusher(com.tencent.angel.ps.backup.ha.push.SyncEventPusher) IOExecutors(com.tencent.angel.ps.io.IOExecutors) PeriodPusher(com.tencent.angel.ps.backup.ha.push.PeriodPusher) MatrixTransportServer(com.tencent.angel.ps.matrix.transport.MatrixTransportServer)

Aggregations

AsyncEventPusher (com.tencent.angel.ps.backup.ha.push.AsyncEventPusher)1 PeriodPusher (com.tencent.angel.ps.backup.ha.push.PeriodPusher)1 SyncEventPusher (com.tencent.angel.ps.backup.ha.push.SyncEventPusher)1 SnapshotDumper (com.tencent.angel.ps.backup.snapshot.SnapshotDumper)1 MasterClient (com.tencent.angel.ps.client.MasterClient)1 PSLocationManager (com.tencent.angel.ps.client.PSLocationManager)1 IOExecutors (com.tencent.angel.ps.io.IOExecutors)1 MatrixTransportServer (com.tencent.angel.ps.matrix.transport.MatrixTransportServer)1 WorkerPool (com.tencent.angel.ps.matrix.transport.WorkerPool)1