private void processMigrateCommand(String[] args) {
        if (args.length <= 2) {
            System.out.println("usage: mg PROCESS_ID HOSTNAME");
        } else {
            long id = Long.parseLong(args[1]);
            String hostName = args[2];
            MigratableProcess process = getProcess(id);
            if (process == null) {
                System.out.println("No such process: " + args[1]);
                return;
            }
            Socket socket = null;
            try {
            	socket = new Socket(hostName, ProcessServer.PORT);
                
	            try {
	                process.suspend();
	            } catch (InterruptedException e) {
	                LOG.error(process.getClass().getSimpleName() +
	                        "[" + id + "] suspend error", e);
	                return;
	            }
	            startMigrating(socket, process, hostName);

	            socket.close();
            }
            catch (IOException e) {
            	System.out.println("Connect " + hostName + " failed: " +
                        e.getMessage());
            	return;
            }
        }

    }