@@ -0,0 +1,2036 @@
+package com.alibaba.rocketmq.example.smoking;%0A%0Aimport com.alibaba.rocketmq.client.store.DefaultLocalMessageStore;%0Aimport com.alibaba.rocketmq.client.store.LocalMessageStore;%0Aimport com.alibaba.rocketmq.common.message.Message;%0A%0Aimport java.io.IOException;%0Aimport java.util.Arrays;%0Aimport java.util.concurrent.Executors;%0Aimport java.util.concurrent.ScheduledExecutorService;%0Aimport java.util.concurrent.TimeUnit;%0Aimport java.util.concurrent.atomic.AtomicInteger;%0A%0Apublic class LocalStore %7B%0A    private static volatile int prev;%0A%0A    public static void main(String%5B%5D args) throws IOException %7B%0A        final LocalMessageStore localMessageStore = new DefaultLocalMessageStore(%22Test%22);%0A        localMessageStore.start();%0A        int parallelism = 10;%0A        final AtomicInteger count = new AtomicInteger();%0A%0A        final byte%5B%5D data = new byte%5B1024%5D;%0A        Arrays.fill(data, (byte)'x');%0A        final Message message = new Message(%22TestTopic%22, data);%0A        final AtomicInteger round = new AtomicInteger(5);%0A%0A        ScheduledExecutorService executorService = Executors.newScheduledThreadPool(parallelism);%0A        for (int i = 0; i %3C parallelism - 1; i++) %7B%0A            executorService.submit(new Runnable() %7B%0A                @Override%0A                public void run() %7B%0A                    while (round.get() %3E 0) %7B%0A                        try %7B%0A                            localMessageStore.stash(message);%0A                            count.incrementAndGet();%0A                        %7D catch (Exception ignore) %7B%0A                        %7D%0A                    %7D%0A                %7D%0A            %7D);%0A        %7D%0A%0A        executorService.schedule(new Runnable() %7B%0A            @Override%0A            public void run() %7B%0A                int stopWatch = count.get();%0A                System.out.println(%22QPS: %22 + (stopWatch - prev) / 30);%0A                prev = stopWatch;%0A                if (round.decrementAndGet() %3C 0) %7B%0A                    localMessageStore.close();%0A                %7D%0A            %7D%0A        %7D, 30, TimeUnit.SECONDS);%0A    %7D%0A%7D%0A

Add benchmarking of local message store.