enqueue will not be overflow anymore instead the oldest item will be replaced
add channel and logic functions