add buffered channel for performance tuning