Sync too low when using BitCoinJ to create and host own wallet I need to use BitcoinJ to create and host wallet on my own website. However, it keeps downloading blocks and the sync seems taking forever. I need to be able to create a wallet within a few seconds. 

Could anyone please advice what should i do to optimize the sync time?

ECKey key = new ECKey();
Address addressFromKey = key.toAddress(params);

Wallet wallet = new Wallet(params);
wallet.importKey(key);

File blockFile = new File(“/tmp/bitcoinblocks”);
BlockStore blockStore = new MemoryBlockStore(params);
BlockChain chain = new BlockChain(params,blockStore);
PeerGroup peerGroup = new PeerGroup(params, chain);
peerGroup.addPeerDiscovery(new DnsDiscovery(params));
peerGroup.addWallet(wallet);
peerGroup.start();
peerGroup.downloadedBlockChain();
To make the sync faster and the wallet creation you can do by setting the checkpoints and later at the time of calling the create wallet method you can set the checkpoints for faster sync. Like I am using walletKit method of bitcoinj for wallet creation find the below code for example

WalletAppKit kit = new WalletAppKit(params, new File(walletPath), filePrefix);
kit.setCheckpoints( ReadProperties.class.getClassLoader().getResourceAsStream("checkpoints-bitcoin"));
kit.startAsync();
kit.awaitRunning();