@Override
    public boolean save(T data) {
        try {
            if (BufferStrategy.IF_POSSIBLE.equals(strategy)) {
                return queue.offer(data);
            }
            queue.put(data);
        } catch (InterruptedException e) {
            // Ignore the error
            return false;
        }
        return true;
    }
The buffer implementation based on JDK ArrayBlockingQueue.
<p>
This implementation has better performance in server side. We are still trying to research whether this is suitable
for agent side, which is more sensitive about blocks.
oap-server/server-library/library-datacarrier-queue/src/main/java/org/apache/skywalking/oap/server/library/datacarrier/buffer/ArrayBlockingQueueBuffer.java