Hi @Ruoteng Wang Thank you for reaching out.
My understanding is that you have created geo-replications in two regions and used a geo primary url to create a redis client where the servie is deployed in the secondary regions.
When your backend receives a request and needs to send an operation to Redis, it'll go to the cache named in the connection string your service uses to connect to Redis.
Generally, the Redis cache used by a service should always be in the same Azure region as the service instances making requests. And geo-secondary caches are read-only.
Hope that helps.
Regards,
Oury