When creating an async gRPC server, we can scale the number of Python threads with the first argument:
import grpc
from concurrent import futures
server = grpc.aio.server(futures.ThreadPoolExecutor(max_workers=2))
Given the fact that the GIL prevents multiple OS threads from scaling the server, have the devs behind grpcio added some way in which you can scale the server by making use of more CPU threads?
A duplicate (and outdated) answer is this: What the purpose of ThreadPoolExecutor in grpc server?. This answer is already more than 4 years old and back then it was of limited use to add more workers.
I was thinking of profiling, but I have not yet set that up.