Hi, we have redis commands that timeout. I asked that problem in StackExchange/StackExchange.Redis, and got the answer.
It looks like you're experiencing thread exhaustion (
WORKER: (Busy=38,Free=32729,Min=8,Max=32767)
), likely from long-running synchronous operations. I can't say about the rest of your application, but you for sure have some synchronous Redis calls (sync-ops: 7262, async-ops: 28127
). You'll want to do all those things async to have much better utilization of the thread pool and less blocking/stalls as a result of thread exhaustion (waiting for a new one to become available).
reference: https://github.com/StackExchange/StackExchange.Redis/issues/2558
According to the analysis, what we can do for solving timeout issue in ABP Framework?
ABP Framework version: Commercial 7.2 UI type: Angular DB provider: EF Core
By the way, we use "Amazon ElastiCache for Redis". When using AWS, is there a recommended redis service?
I would like to stop using redis to isolate the problem. How can I stop using redis?
Hi,
We found some redis commands are very slow(1~53s), and fails in test environment. We use amazon elasticache(redis) for our test environment.
slow command examples are below.
HMGET t:3a0c1d64-4d96-0ab6-9c31-0a332a2b8a8e,c:Volo.Abp.LanguageManagement.Texts,k:PortX:PortX_ja HMGET t:3a0c1d64-4d96-0ab6-9c31-0a332a2b8a8e,c:Volo.Abp.LanguageManagement.Texts,k:PortX:AbpValidation_en HMGET c:Volo.Saas.Tenants.Tenant,k:PortX:i:3a0c1d64-4d96-0ab6-9c31-0a332a2b8a8e,n:null EXPIRE t:3a0c1d64-4d96-0ab6-9c31-0a332a2b8a8e,c:Volo.Abp.LanguageManagement.Texts,k:PortX:AbpValidation_en EXPIRE t:3a0c1d64-4d96-0ab6-9c31-0a332a2b8a8e,c:Volo.Abp.LanguageManagement.Texts,k:PortX:AbpValidation_ja EXPIRE c:Volo.Saas.Tenants.Tenant,k:PortX:i:3a0c1d64-4d96-0ab6-9c31-0a332a2b8a8e,n:null HMGET t:3a0c1d64-4d96-0ab6-9c31-0a332a2b8a8e,c:Volo.Abp.PermissionManagement.PermissionGrant,k:PortX:pn:R,pk:admin,n:PortX.RegularProjectRequestHistories.Create
We had a lot of time to investigate the reason with Datadog APM and redis insight, but we've not found the exact reason.
[investigation result]
t:*:Volo.Abp.LanguageManagement.Texts,k:PortX:PortX_ja
is almost empty: { "dictionary": {} }With these slow commands, we couldn't meet our customers needs.
We doubt
ABP Framework version: Commercial 7.2 UI type: Angular DB provider: EF Core
Thanks.
I have read the content you provided.
Now, I have question about deep implementation in abp application.
When I login in id application, there is no session info(image1). And after authentication redirecting to main application, there is session info(ex. access_token, id_token, ...) in local storage(image2).
My question is, how is the session info passed from id application to main application? Is there any global state?, or the services communicate with in back channel?
Is there any document about authorization or session management in abp commercial? If abp commercial application extends authorization function from asp.net core, I want to know the document about it.
my goal
background
Thanks for your support.
ABP Framework version: Commercial 7.2
UI type: Angular
DB provider: EF Core
thx
I plan to embed bi tools like power bi and QuickSight inside ABP Commercial. Does ABP Commercial have a BI library/tool that works well with ABP Commercial? Or do you have a recommended BI library/tool?
ABP Framework version: Commercial 7.2
UI type: Angular
DB provider: EF Core
テナントのクローンを作成するためのサンプルコードはありますか?
thank you.
・Data of all entities. ・I want to copy the user and scope as well. ・I want to keep the timestamp.