Dec 20, 2012
Dec 18, 2012
Content Targeting based on Audiences
In SharePoint we can create audiences based on:
1) Windows Distribution List or Security Groups
2) Global Audiences using Rules in User Profile Services
3) SharePoint Groups
1) Windows Distribution List or Security Groups
2) Global Audiences using Rules in User Profile Services
3) SharePoint Groups
SharePoint Office Web Access
SharePoint capability of creating/viewing office documents in the browser itself although not all Office features are supported in Office Web Access.
Governance purpose you can enable Office Web Access only on some site collections as required to keep the Server Performance under check.
All About Office Web Access:
Governance purpose you can enable Office Web Access only on some site collections as required to keep the Server Performance under check.
All About Office Web Access:
Installation Consideration to manage services and service application running in the SP Farm.
You need to differentiate between services and a service application. A service is a component that
provides an output that can be utilized by an application. A service application is an
application that is built to utilize one or more services that exist in the
environment. Services in SharePoint 2010 are the foundation for service
applications. Some of these services are associated with service applications.
You deploy your service applications by starting the associated services on the
desired server, selecting those same services when running the initial
Configuration Wizard, or by using Windows PowerShell. The number of services
running varies depending on the business requirements of your environment.
So for the Office Web App
We can have the services running
(to support office web app i.e. Word/Excel Services) only on one Web Front End server and a separate server
running service application (for office web app) to optimize performance as OWA eats ups lot of server resources compared to other features of SharePoint
SharePoint Visual WebParts
Visual Web Parts are integral part of SharePoint and best friend of developers.
In SharePoint 2010 Visual Web Parts can't be used in sand box solution.
To overcome this you can use:
Visual Studio 2010 SharePoint Power Tools
This tool basically compiles all the files into dll and not ascx file is there which get copied onto the server
In SharePoint 2013, visual web part no longer uses controltemplates folder to store the ascx but instead just compiles everything into the DLL.
Sandbox solutions are deprecated in SharePoint 2013 and App Model is introduced.
In SharePoint 2010 Visual Web Parts can't be used in sand box solution.
To overcome this you can use:
Visual Studio 2010 SharePoint Power Tools
This tool basically compiles all the files into dll and not ascx file is there which get copied onto the server
In SharePoint 2013, visual web part no longer uses controltemplates folder to store the ascx but instead just compiles everything into the DLL.
Sandbox solutions are deprecated in SharePoint 2013 and App Model is introduced.
Apr 12, 2012
Extracting DLL's out of GAC
To backup the dll's in the GAC i.e. Extracting DLL's out of GAC we can use either of the below methods.
Method 1:
Change the Windows\Assembly\GAC folder from the GAC view to the Windows Explorer view by editing the Registry:
HKLM\Software\Microsoft\Fusion\
Add a DWORD value called DisableCacheViewer and set the value to 1 Don't Forget to change it back to 0 once your done with the backup.
As shown below:
Method 2 (32 bit only):
From command prompt run
regsvr32 -u C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\shfusion.dll
GAC back to it’s original structure, use
regsvr32 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\shfusion.dll
Method 1:
Change the Windows\Assembly\GAC folder from the GAC view to the Windows Explorer view by editing the Registry:
HKLM\Software\Microsoft\Fusion\
Add a DWORD value called DisableCacheViewer and set the value to 1 Don't Forget to change it back to 0 once your done with the backup.
As shown below:
Method 2 (32 bit only):
From command prompt run
regsvr32 -u C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\shfusion.dll
GAC back to it’s original structure, use
regsvr32 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\shfusion.dll
Mar 27, 2012
spWeb.Lists vs spWeb.GetList
// Best Practice To Retrieve List Item
// Below example updates the Task list Item based on the task id ....
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite oSiteCollection = new SPSite(url))
{
using (SPWeb spWeb = oSiteCollection.OpenWeb())
{
spWeb.AllowUnsafeUpdates = true;
SPList oList = spWeb.Lists["New_Task_List"]; // Gets the entire List Collection and then picks the list mentioned
SPListItem oListItem = oList.GetItemById(taskid);
//Instead the following should be used, get the intended list directly
//SPListItem oListItem = spWeb.GetList("/Lists/New_Task_Lis/AllItems.aspx").GetItemById(taskid);
if (oListItem != null)
{
oListItem["flag"] = Guid.NewGuid().ToString();
oListItem["actiontaken"] = "Claim";
oListItem["actiontakenby"] = CustomUtility.GetUtility().GetLoggedInUserID();
oListItem.Update();
}
tempID = Convert.ToInt64(oListItem["TicketNumber"].ToString());
}
}
});
...
Oct 3, 2011
Large Lists and List View Threshold
You would need to know or as we know
List View Threshold (LVT)
o Every web application in SP 2010, has a default configured constant LVT value.
o Administrator default LVT is generally set to a higher value compared to end user (default is
20000 for admin / 5000 for end users).
Consideration for Large Lists
Large List should have:
o Limited number of columns
o Limited number of lookup fields (<= 8)
o Filter criteria should be on Indexed fields (around 2)
o Folder Structure with number of items less than LVT of web application ( default 5000)
Why not List View
o List View is not appropriate for list having large number of items
o The LVT value limits the Views to work for certain Lists, this decision is based on some logical limits (SQL applies database lock on table when more than 5000 items are being touched on a single query) to counter balance the performance degradation of the SharePoint Farm.
o Conditions, when the List View won’t work
§ When using the Filter on a column and the number of items; having same value in the column is repeated more than the number of threshold value.
· Regardless of using
o Folder
o Index
o Item Limit
o And Condition
o OR Condition
o For List View to work without or with Filter criteria
§ The number of items should be less than the LVT of the web application
Alternatives for Viewing List Items
o Search with result shown in the end user expected format
o Metadata Navigation consideration while designing the List
§ Metadata Navigation applies to doc lib page only
§ Document library design is critical to have useful Metadata Navigation
o Object Model Custom Code
o Content Query Web Part
Consideration for Large Lists
From a high level, it looks like we can perform activity at three different levels; which can help avoid List View Threshold issue and performance degradation:
Document Library Level
· Redesign the document library, split into multiple logical library based on business needs
· Items storage in the document library has to be modularized / use container
Page Level
· Create custom Views for pages to access data
· Caching via Content Query Web Part if required
· Caching via Content Query Web Part if required
Archival
· Implement Archiving policy for the document library (auto/manual)
· Document / version cleanup, based on document life cycle
· Content Organizer can be utilized
Jun 14, 2011
SharePoint Web Service - Elevated Privilege / Anonymous Access / Performance
Considering SharePoint Web Service, watch out for the following:
* SharePoint internet site has anonymous user base. Calling web service from an anonymous internet sp site is not straight forward. Moreover, Read only web service call from anonymous SP pages is feasible. The following blogs takes a stab on it:
* Web Service work great when small amount of data across the network is considered. If web service requires intensive operations this in turn puts frequent database updates and cause a significant burden in a production environment. For example, using Web services to bulk load or synchronize a list with a database is risky, depending on the amount of data and the period of synchronization. A more acceptable use of code that accesses a Web service is for a Web Part to access a built-in service to query a set of items in a list. More
* Considering best practices; Microsoft does not recommend heavy use of SharePoint Web Services for updating SharePoint data, however, passive use of SharePoint Web Services to read service data is considered acceptable.
* Some other notable blog points out:
- Web Services use XML based SOAP (Simple Object Access Protocol) messages as the communication protocol
* SharePoint internet site has anonymous user base. Calling web service from an anonymous internet sp site is not straight forward. Moreover, Read only web service call from anonymous SP pages is feasible. The following blogs takes a stab on it:
* Web Service work great when small amount of data across the network is considered. If web service requires intensive operations this in turn puts frequent database updates and cause a significant burden in a production environment. For example, using Web services to bulk load or synchronize a list with a database is risky, depending on the amount of data and the period of synchronization. A more acceptable use of code that accesses a Web service is for a Web Part to access a built-in service to query a set of items in a list. More
on this straight from the core: http://msdn.microsoft.com/en-us/library/bb862916.aspx
* Considering best practices; Microsoft does not recommend heavy use of SharePoint Web Services for updating SharePoint data, however, passive use of SharePoint Web Services to read service data is considered acceptable.
* At times we need to elevate privilege to perform certain action on the SP server via managed code. When working with the SharePoint Web Services you can't elevate the privilege. More on this:
* Some other notable blog points out:
- Web Services use XML based SOAP (Simple Object Access Protocol) messages as the communication protocol
- Reliance on XML can translate into high overhead in the form of oversized, sluggish messages
- This can mean an investment in XML appliances or other software to optimize validation, parsing, and analysis of XML messages.
- As Web services operate autonomously, with no centralized control, users may find them unpredictable, necessitating IT to provide service guarantees or service-level agreements.
- Every request has a marshalling un-marshalling overhead.
- Every request has to be authenticated using user name and password. It does not support the concept of authenticated session, which can be re-used with a session key. Exception is Excel Service Web Service
- Issues with Downloading Files Copy web service i.e. Marshalling/un-marshalling overhead: The SharePoint Server encodes the binary file data (e.g. Word, Excel file) into text (using Base64 encoding) in order to send it over Web Service. The client application should decode it back to the original encoding for viewing the file. This can affect performance.
- Every request has to be authenticated using user name and password. It does not support the concept of authenticated session, which can be re-used with a session key. Exception is Excel Service Web Service
- Issues with Downloading Files Copy web service i.e. Marshalling/un-marshalling overhead: The SharePoint Server encodes the binary file data (e.g. Word, Excel file) into text (using Base64 encoding) in order to send it over Web Service. The client application should decode it back to the original encoding for viewing the file. This can affect performance.
- Memory overhead: The GetItem() method uses a single buffer to retrieve the whole file content.
Apr 29, 2011
Finding List of all Installed KB on your windows server or pc
To get all the KB installed on your machine / box / pc / server, your best bet is to simply run the following command from the command prompt:
Using Add Remove Program from control panel or any other method doesn't give you all the KB's on your box.
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall >> C:\list_of_kbs.log
Using Add Remove Program from control panel or any other method doesn't give you all the KB's on your box.
Mar 29, 2011
SharePoint Large List Performance and Views Performance on Large List
SharePoint is a Collaboration and Content Management tool, although more often gets over boarded with a feel of a true Document Repository tool. SharePoint List/View customization can facilitate storing large number of documents efficiently and behave in line with repository tools, to take this further we can integrate archiving tools with SharePoint and reduce the SQL database load/cost.
Sooner or Later the number of items in most of the out of box lists will outgrow the logical performance threshold of 2000 items per container; this will directly impact the performance of the list and views. SharePoint List design and customization can optimize the list / views performance and efficiently manage the large number of items in the list,
List / Document Library
· Custom List Design / Provisioning
Instead of having one large list or list with folders, where possible create as many lists as possible based on: Content Type, Logical Category, and so on
o No more than 2000 lists per site (soft limit)
o List is not a RDBMS
o Lookup columns should be used sporadically
· Active List and Archive List
One model, which can be used to have performance intact for list is to have a separate list for archived items. In other words, Items should be archived to another list when the list size approaches 2000-4000.
o Active/Custom List items (maximum 2k-4k items)
Items fall in the active list if
· used almost on daily basis
· in dynamic/transient state
· in draft mode
· recently created
· recently published
· versioning is enabled
o Archive List items (maximum 5 million)
Items based on a pre-configured logic, gets moved from Active List to Archive List
· Archive List should have folder implementation in place to organize the items. Where each folder has maximum of 2000 items and the list will contain total of 5 million items maximum.
· One level deep folder is being recommended, further folder nesting has same issue as file system
· Folder creation scan be based on a logical nomenclature (like year and week number) or a unique id (like guid or date time), so on.
· No versioning required as item is in its final state and archived.
Viewso Views for Archive list
o It’s advisable to use “Search” feature to lookup an item or desired set of items. This would require SharePoint Search configuration and indexing.
o The other option, which can be leveraged is to view items in the folder by using the corresponding folder link
o Views for Active List i.e. Custom List
o Views created on Lists should be displaying items in batches of 10, 20, not more than 100 items.
o Views filtering should be designed carefully
o Usage of indexed columns
· Each column index consumes disk space and resources in the database. Add indexes only to columns that will be used actively in the views.
· Only one indexed column can be used in a view filter and it’s important that the first column that you use to filter the view has an index
o Filtering by an indexed column is more efficient then defining an item limit in a view.
o Complex filtering should be avoided instead design document library as separate entities
o Indexed column is not utilized in Views that use an OR filter condition.
o View should use a filter that will not touch more than 2000-4000 items during its processing.
o Views designed using SharePoint Designer
o The page size (i.e. downloaded data by the browser to render the page), where views is being designed should be of reasonable size (300-500 KB)
o Data View web part uses web services to fetch data from the list
o Content Query web part is the fastest means of pulling data from list.
Page Before making a customized page live in production performance should be analyzed using tools like
o Http watch
o Page speed
BrowserIE 8.0 is recommended for better performance as compared to IE 6.0 / IE 7.0
IE 8.0 allows more TCP connections at a time compared to IE 6/7
Archiving
o Tools or BLOB storage can be used to reduce the data base load / cost and further enhance the list performance and also bring the archiving capability to its best.
o Records Management can be used to distribute the database Load
Oct 14, 2010
Does the Current or Logged in SharePoint User belongs to a certain Distribution Group of the Active Directory
Use the following to determine if the Logged in SharePoint User belongs to a certain Distribution Group of the Active Directory :
Page.User.IsInRole("domain//groupname")
Since the SharePoint site runs on IIS. We can call Page.User.IsInRole("domain\groupname") to determine if the user is a member of the Active Directory group.
NOTE: For C#, use two backslashes instead of just one.
Understanding the difference between distibution List and Security Group is important.
BTW, Admin of AD should create a Security Group not just the distribution list. :)
Page.User.IsInRole("domain//groupname")
Since the SharePoint site runs on IIS. We can call Page.User.IsInRole("domain\groupname") to determine if the user is a member of the Active Directory group.
NOTE: For C#, use two backslashes instead of just one.
Understanding the difference between distibution List and Security Group is important.
In Microsoft Active Directory, what are security and distribution groups?Refrence: Active Directory
In Microsoft Active Directory, when you create a new group, you must select a group type.
The two group types, security and distribution, are described below:
Security: Security groups allow you to manage user and computer access to shared resources. You can also control who receives group policy settings. This simplifies administration by allowing you to set permissions once on multiple computers, then to change the membership of the group as your needs change. The change in group membership automatically takes effect everywhere. You can also use these groups as email distribution lists.
Distribution: Distribution groups are intended to be used solely as email distribution lists. These lists are for use with email applications such as Microsoft Exchange or Outlook. You can add and remove contacts from the list so that they will or will not receive email sent to the distribution group. You can't use distribution groups to assign permissions on any objects, and you can't use them to filter group policy settings.
BTW, Admin of AD should create a Security Group not just the distribution list. :)
Sep 24, 2010
Infopath Form picking date time from the client machine instead from the SharePoint Server
When using date time in InfoPath Forms, make sure you are aware of the fact that InfoPath 2007 is picking up the date time from the machine on which it's running i.e. clientt machine.
If the usage of the Infopath Forms (i.e. application) is in a single time zone then this might work well until and unless the client machine has the incorrect value set for date time.
Your application at certain time instances won't work properly if you have validations like date time greater then or less then current time and is being accessed by client located in the different time zones around the world.
To mitigate this issue, you need to write code behind in the page load function of infopath form. The code will basically pick the server time and store it with infopath form so that validations can be performed seamlessely regardless of the timezone of the client machine.
If the usage of the Infopath Forms (i.e. application) is in a single time zone then this might work well until and unless the client machine has the incorrect value set for date time.
Your application at certain time instances won't work properly if you have validations like date time greater then or less then current time and is being accessed by client located in the different time zones around the world.
To mitigate this issue, you need to write code behind in the page load function of infopath form. The code will basically pick the server time and store it with infopath form so that validations can be performed seamlessely regardless of the timezone of the client machine.
Sep 14, 2010
DataView WebPart Sorting Across Pagination Issue
The Sorting in data view web part (when enabling the "basic list toolbar" checkbox in properties using SharePoint Designer) works for the rows which are currently displayed (i.e. displayed on the page) | |||
Sorting will not work across pagination as this is to sort list which has huge amount of data and sorting the entire list might take long time. Although, If you would like to sort the entire list, please use the toolbar for sorting option in data view properties. |
Sep 3, 2010
SharePoint Maintenance Page
Three options for the SharePoint Maintenance page based on the available infrastructure:
1) Using modified ISA custom error page and display custom messages.
- For internal clients, the files are named Error_number.htm. \
- For external clients, the files are named Error_numberR.htm (where R indicates reverse).
2) Display custom message on IIS at Web Front End Server in the SharePoint Farm
- Create a page "App_Offline.htm" in the Root Site
3) Route the request from ISA to another Site hosting maintenance page.
- Maintenace page site on same IIS
Reference: ISA
1) Using modified ISA custom error page and display custom messages.
- For internal clients, the files are named Error_number.htm. \
- For external clients, the files are named Error_numberR.htm (where R indicates reverse).
2) Display custom message on IIS at Web Front End Server in the SharePoint Farm
- Create a page "App_Offline.htm" in the Root Site
3) Route the request from ISA to another Site hosting maintenance page.
- Maintenace page site on same IIS
Reference: ISA
Jun 20, 2010
Port or Move DataView WebPart from one site or server to another site or server:
Dataview webparts can be developed in development environment and can be ported to a different environment as shown below:
• Edit the WebPart Page > WebPart > Export the Dataview Webpart and save it.
• Import the Data View Webpart on the intended site > webpart page
• The WebPart should display error not the page, i.e. page should render correctly.
• Open the WebPart page using SharePoint designer, go to DataFormWebPart and change the following as shown below:
or you con modify the .webpart file itself.
• Edit the WebPart Page > WebPart > Export the Dataview Webpart and save it.
• Import the Data View Webpart on the intended site > webpart page
• The WebPart should display error not the page, i.e. page should render correctly.
• Open the WebPart page using SharePoint designer, go to DataFormWebPart and change the following as shown below:
or you con modify the .webpart file itself.
Jun 5, 2010
Plan SharePoint Application for Optimum Performance
Ten points to consider for performance out of many other.
- Distribute user data across multiple content databases
- Limit navigation depth
- Defragment database indexes
- Minimize page size, for internet facing sites or Lazy Loading
- Isolate search indexing
- Configure SQL parameters i.e. connection pool, indexes, so on
- Separate user and database traffic i.e. seprate networks
- Configure IIS compression
- Take advantage of caching
- Manage page customizations
Jun 4, 2010
SharePoint Farm Communication - can be performance bottleneck
This blog helps to ensure that the SharePoint Farm communication is not becoming the performance bottleneck for the application deployed onto the SharePoint farm.
SharePoint Application Communications:
Inter Server Communication
• Within the SP Server Farm.
Intra Server Communication
• Between SP WFE Server and External Server (system).
Client Server communication
• Client Browser/Machine and SP WFE Server
Database Load
• SP SQL Server database
Tools used to analyze the communications mentioned above:
Inter Server Communication
• WireShark Installed on WFE Server
Intra Server Communication
• WireShark Installed on WFE Server
Client Server communication
• Http Watch on Client Machine
Database Load
• SQL Profiler on the SP SQL DB
Identify the IP of all the Involved Servers
1) SP SQL Database server
2) WFE Server(s)
3) DNS
4) ISA
5) Application Servers
6) Client Machine
7) External Business application servers
Execution Pre requisites:
If applicable perform the following
1) Remove load balancing
2) Blank homepage for client machine browser
3) No one else other then the person performing network analysis i.e. any other user (application user or admin user is accessing the SP farm or the application by one or the other mean)
4) Make sure the external servers are up and running.
Execution Steps:
1) In the SP Farm restart the following services on all servers as applicable
• IIS
• SQL Server Service
2) Clean the client machine browser cache, close and open again.
3) Run the Wireshark on the WFE
4) Run browser with httpwatch on Client machine
5) Browse to site, stop and save the results of wireshark and httpwatch.
Analyze the WireShark and HttpWatch Results, following can be leveraged:
Protocols used between SP servers
o For database it’s TDS.
o Used by search and query services is SMB
o Obviously, also the http protocol.
Ports used in communication
o SQL Server 1433
o AD Authentication on TCP:445 or TCP:88 (Kerberos)
o LDAP:389 and LDAPS:636
o DNS on TCP:53
o SMTP on TCP:25
o Shared Service Provider web service calls on 56737 & 56738 (SSL).
In Wireshark
o Use “follow by tcp stream” to look for time duration, hiccups
o Filter by “tds.size>0”, “ip.dst eq 10.98.88.234”, …
o Look into packet details like sequence, offset and so on
Using the above steps you can disect the communication between the servers and pin point the cause or track down the server, which is culprit for the poor performance of the application deployed on to the SharePoint farm.
Once the cause is identified, we can perform the following
Deep Dive Analysis using one of the below method as applicable
• Code profiling
• Third party tools like idera to identify the component quickly
• System tools like perfmon
• Track Un Ghosted Pages: ghost hunter tool
• SQL Profiler
* Look at other performance related blog at my site
References:
SharePoint Application Communications:
Inter Server Communication
• Within the SP Server Farm.
Intra Server Communication
• Between SP WFE Server and External Server (system).
Client Server communication
• Client Browser/Machine and SP WFE Server
Database Load
• SP SQL Server database
Tools used to analyze the communications mentioned above:
Inter Server Communication
• WireShark Installed on WFE Server
Intra Server Communication
• WireShark Installed on WFE Server
Client Server communication
• Http Watch on Client Machine
Database Load
• SQL Profiler on the SP SQL DB
Identify the IP of all the Involved Servers
1) SP SQL Database server
2) WFE Server(s)
3) DNS
4) ISA
5) Application Servers
6) Client Machine
7) External Business application servers
Execution Pre requisites:
If applicable perform the following
1) Remove load balancing
2) Blank homepage for client machine browser
3) No one else other then the person performing network analysis i.e. any other user (application user or admin user is accessing the SP farm or the application by one or the other mean)
4) Make sure the external servers are up and running.
Execution Steps:
1) In the SP Farm restart the following services on all servers as applicable
• IIS
• SQL Server Service
2) Clean the client machine browser cache, close and open again.
3) Run the Wireshark on the WFE
4) Run browser with httpwatch on Client machine
5) Browse to site, stop and save the results of wireshark and httpwatch.
Analyze the WireShark and HttpWatch Results, following can be leveraged:
Protocols used between SP servers
o For database it’s TDS.
o Used by search and query services is SMB
o Obviously, also the http protocol.
Ports used in communication
o SQL Server 1433
o AD Authentication on TCP:445 or TCP:88 (Kerberos)
o LDAP:389 and LDAPS:636
o DNS on TCP:53
o SMTP on TCP:25
o Shared Service Provider web service calls on 56737 & 56738 (SSL).
In Wireshark
o Use “follow by tcp stream” to look for time duration, hiccups
o Filter by “tds.size>0”, “ip.dst eq 10.98.88.234”, …
o Look into packet details like sequence, offset and so on
Using the above steps you can disect the communication between the servers and pin point the cause or track down the server, which is culprit for the poor performance of the application deployed on to the SharePoint farm.
Once the cause is identified, we can perform the following
Deep Dive Analysis using one of the below method as applicable
• Code profiling
• Third party tools like idera to identify the component quickly
• System tools like perfmon
• Track Un Ghosted Pages: ghost hunter tool
• SQL Profiler
* Look at other performance related blog at my site
References:
Jun 2, 2010
SharePoint Page performance based on component performance
When navigating to a Sharepoint site home page or any other page and it seems to take ages before the page loads, there can be multiple reasons but the one's we are focusing here is at the component level.
A SharePoint page can consist of many parts like
It displays the result as follows:
As you can see in the above screenshot, the components are slow but not one particular most of them are slow. Which means, instead of focusing on one component, we need to take a look at the overall communication between the servers in the farm.
On the otherhand, if we would have found slowness with one particular component or few components then we can go ahead with profiling, code review, memory leak and so on.
If we are looking at the overall slowness or other issue please check my others performance related posts.
A SharePoint page can consist of many parts like
- htlm controls
- web controls
- webparts
It displays the result as follows:
As you can see in the above screenshot, the components are slow but not one particular most of them are slow. Which means, instead of focusing on one component, we need to take a look at the overall communication between the servers in the farm.
On the otherhand, if we would have found slowness with one particular component or few components then we can go ahead with profiling, code review, memory leak and so on.
If we are looking at the overall slowness or other issue please check my others performance related posts.
Subscribe to:
Posts (Atom)


