Package org.agilewiki.jfile.transactions.db.counter

Source Code of org.agilewiki.jfile.transactions.db.counter.RecoveryTimingTest

package org.agilewiki.jfile.transactions.db.counter;

import junit.framework.TestCase;
import org.agilewiki.jactor.JAFuture;
import org.agilewiki.jactor.JAMailboxFactory;
import org.agilewiki.jactor.Mailbox;
import org.agilewiki.jactor.MailboxFactory;
import org.agilewiki.jactor.factory.JAFactory;
import org.agilewiki.jfile.JFileFactories;
import org.agilewiki.jfile.transactions.db.OpenDbFile;
import org.agilewiki.jid.JidFactories;

import java.nio.file.FileSystems;
import java.nio.file.Path;

public class RecoveryTimingTest extends TestCase {
    public void test()
            throws Exception {
        MailboxFactory mailboxFactory = JAMailboxFactory.newMailboxFactory(10);
        Mailbox factoryMailbox = mailboxFactory.createMailbox();
        JAFactory factory = new JAFactory();
        factory.initialize(factoryMailbox);
        (new JidFactories()).initialize(factoryMailbox, factory);
        (new JFileFactories()).initialize(factoryMailbox, factory);
        factory.defineActorType("n", IncrementCounterTransaction.class);
        JAFuture future = new JAFuture();

        Path directoryPath = FileSystems.getDefault().getPath("TransactionLoggerTimingTest");
        CounterDB db = new CounterDB(mailboxFactory, factory, directoryPath);

        long t0 = System.currentTimeMillis();
        (new OpenDbFile(10000)).send(future, db);
        long t1 = System.currentTimeMillis();

        int transactions = db.getCounter();
        System.out.println("milliseconds: " + (t1 - t0));
        System.out.println("transactions: " + transactions);
        System.out.println("transactions per second = " + (1000L * transactions / (t1 - t0)));
        //tps = 956,937
        mailboxFactory.close();
    }
}
TOP

Related Classes of org.agilewiki.jfile.transactions.db.counter.RecoveryTimingTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.