For each event, a task will be submitted to the callTimeoutPool thread pool during append, and then the future.get method will be used to obtain the result. This may cause a large load on the thread pool, which cannot be processed at all. Through flame graph analysis, it can also be seen that retrieving tasks from the thread pool takes a lot of time. Can we change it to synchronous
