my current customer has a setup where he has multiple related lists and libaries. the structure is something like the following:
An Audit Item has 0:n Issue items has 0:n Documents
An Issue has 0:n Task items has 0:n Docuemnts
My customer created a prototyp a is quite happy it, and really loves the ability to export the list data into excel and create flashy reports for the management. The only thing he didn't implement is security :)
The security scope now needs to be set on audit level and issue level. In other words : - a member of a sp group assigned to an audit can view/edit the audit and related documents - a member of a sp group assigned to an issue can view/edit the issue, tasks and related documents, but not necessarily the audit information.
Using event handlers or (nintex) workflow I would automatically create sp groups and assign them to the respective objects.
Now to the problem: According to technet there is a maximun of 1000 unique security scopes set a list. This is not a hard limit but a threshold, meaning that performance will gradually degrade the bigger the lists become. The current estimate from the customer is that he will be creating somewhere between 500 and 1500 issues per year. Meaning that we would be passing that limit probably in year two.
In my understanding the performance hit will mainly come from viewing the data in lists. As SP2010 employs asp.net output caching, my idea would be to enable caching for the most popular views and therefore reduce the overall system load.
My question: Can I cache certain views only? Has anybody actually seen how strong the performance impace is when reaching that 1000 item limit?