How have you implemented ACL?
Are you using "Set Access Rights" in Admin mode? If yes, how many users/roles with Access Rights do you have on a page in average?
Hi, I implemented ACL like this
foreach (var tempPage in list)
{
if (tempPage.ACL.QueryDistinctAccess(EPiServer.Security.AccessLevel.Read))
{
accessablePageList.Add(tempPage);
}
}
Yes, I am setting access rights in admin mode. I have around 400 users with 5-8 roles on each page on every page.
Can you run this SQL query in your database:
SELECT count(*)
FROM [tblAccess]
GO
SELECT Count(*) AS Pages, MAX(CNT) as MaxPerPage, AVG(CNT) AS AvgPerPage
FROM
(
SELECT Count(*) AS CNT
FROM [tblAccess]
GROUP BY [fkPageId]
) T
GO
I executed stored procedure.
Count=8305
Pages: 1530, MaxPerPage:6, AvgPerPge:5
Nothing strange about those values...
I think you have to profile your solution under load to get more clues. Look at http://www.epiwiki.se/tools/stackdump or http://www.microsoft.com/en-us/download/details.aspx?id=26798 and use them to collect a series of snapshots. Analyzing call stacks and locating paths that appear many times will give an indication of where CPU is spent.
I would not worry to much about that. If you have a really huge ACL list it can have some minor impact.
Thanks Fredrick for quick reply .
I am new to episerver
Please guild me what all measures i have to take with respect to database that will improve my website performance.
Hi,
We built our intranet using episerver cms 6. We recently implemented access control for all pages in the site and it has a lot of pages.
After implementing ACL, pages are loading very slowly. Specifically, while loading news list page ( where we check permissions for every new s item), it is taking quite long time.
Please help me with some suggestions.
Thanks.