performance optimization: reserve request to avoid memory alloc/free and change number of hash bucket to prime number