Check the docs before asking a question: https://docs.abp.io/en/commercial/latest/ Check the samples, to see the basic tasks: https://docs.abp.io/en/commercial/latest/samples/index The exact solution to your question may have been answered before, please use the search on the homepage.
- ABP Framework version: v3.3.0
- UI type: Angular
- DB provider: EF Core(MySql)
- Tiered (MVC) or Identity Server Seperated (Angular): no
Hi, we are making an Administration app for our products, and we have some general issues, that we'd like your inputs for: 1: Our logout method has some weird issues. 2: Our data fetch is excruciatingly slow, taking 5-9 seconds to get 20 rows of data, and impossibly long to load permission tables.
Login: The logout process goes through these:
and then ends at the login screen:
However, more often than not, it takes two attempts to log out, and otherwise the browser just returns to the dasboard.
2: Our service just runs painfully slow, when loading in data. We have a large system, with 70+ entities, and many of our api calls have been modified with Organizational security checks and complex return objects, but the service is still a lot slower than expected. The permission call itself takes upwards of 30 seconds, if ever it goes through.
Do you have any suggestions on how we can effectivise our system? We are running it bothe locally, but the problem persists on deployment to Azure Web services. (Both frontend, backend and Db)
10 Answer(s)
-
0
Hello @Esben_Dalgaard,
... The permission call itself takes upwards of 30 seconds, if ever it goes through.
Is it same for both local and azure? Or it only happens in production?
Your first question seems related with second one; permissions don't seem to be loaded so it throws forbidden.
Can you confirm that have non-tiered angular application (no seperate identityserver)?
-
0
We have tested it with both local frontend, backend and Db and deployed local, backend and Db, an a mixture of these. There is no seperate identity server, it all runs on two web services, and one azure MySql Db. The identity and tenant module is in the same Db as all of our entities.
We are 2 weeks from having to use this is a customer oriented version, so we would really appreciate any help.
-
0
hi @Esben_Dalgaard
Can you share some logs during app get slow?
Does your application use redis. Is its configuration correct?
-
0
Here's our backend log when one of our calls are made: https://docs.google.com/document/d/1-hbP01lTpqIP3YVbyqlS7-C88OLmIwdMMzKYyGj-CQU/edit?usp=sharing
It's a call that fetches organizationUnits, but filtered for what organizations you are part of and all sub-orgs.
We do not use redis. What is it, and how could we?
-
0
hi
Here's our backend log when one of our calls are made:
Can you share a full log of a slow request? From the beginning to the end.
eg
[INF] Request starting HTTP/2 GET https://localhost:44340/api/abp/application-configuration - - /// .... /// .... INF] Request finished HTTP/2 GET https://localhost:44340/api/abp/application-configuration - - - 200 - application/json;+charset=utf-8 932.6348ms
We do not use redis. What is it, and how could we?
You can check your all project's
appsettings.json
files to see if it contains below config. -
0
-
0
hi
Can I check your source code remotely? You can send me an email, then I will share the Zoom link. liming.ma@volosoft.com
-
0
hi Esben_Dalgaard
If your application is a monolithic application and no plan to use load balanced. You can disable redis, memory cache will be used.
You can create a new project using the same abp & ef core provider and check the loading speed of the built-in module page. Such as user, tenant, role, audit log and other pages, This represents the basic speed of the application on your computer.
You need to check your code, they are slow, there are a lot of sql queries in the log, this is not normal, you can single-step debug the application to find the problem code.
Ways to solve the slow permission modal:
- create a folder
AbpPermissionManagement
at Pages folder. - Copy
AbpIdNameTagHelper.cs
andPermissionManagementModal.cshtml
toAbpPermissionManagement
. I already send it to you. - re-run the app to check the speed of permission modal
- create a folder
-
0
I'm pretty sure our backend is mostly slowed by the many repository calls, which is just something we'll have to effectivise, but I haven't had luck implementing the Permissions solution you have.
We're running 3.3.0 EFCore, mysql, and I see no such folder as you describe. When adding them myself, I get:
Saying that the PermissionsManagementModal is missing, and that the .web part of Volo.Abp.PermissionManagement.Web.Pages.AbpPermissionManagement also is missing.
-
0
hi @Esben_Dalgaard
I see no such folder as you describe.
You need to add it to the application that depens on the AbpPermissionManagementWebModule