{"action":"created","issue":{"url":"https://api.github.com/repos/aspnet/Razor/issues/635","labels_url":"https://api.github.com/repos/aspnet/Razor/issues/635/labels{/name}","comments_url":"https://api.github.com/repos/aspnet/Razor/issues/635/comments","events_url":"https://api.github.com/repos/aspnet/Razor/issues/635/events","html_url":"https://github.com/aspnet/Razor/issues/635","id":121324768,"number":635,"title":"Parsing and tokenizing large views thrashes CPU, Memory & GC","user":{"login":"SimonOrdo","id":15930167,"avatar_url":"https://avatars.githubusercontent.com/u/15930167?v=3","gravatar_id":"","url":"https://api.github.com/users/SimonOrdo","html_url":"https://github.com/SimonOrdo","followers_url":"https://api.github.com/users/SimonOrdo/followers","following_url":"https://api.github.com/users/SimonOrdo/following{/other_user}","gists_url":"https://api.github.com/users/SimonOrdo/gists{/gist_id}","starred_url":"https://api.github.com/users/SimonOrdo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SimonOrdo/subscriptions","organizations_url":"https://api.github.com/users/SimonOrdo/orgs","repos_url":"https://api.github.com/users/SimonOrdo/repos","events_url":"https://api.github.com/users/SimonOrdo/events{/privacy}","received_events_url":"https://api.github.com/users/SimonOrdo/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/aspnet/Razor/labels/2%20-%20Working","name":"2 - Working","color":"CCCCCC"},{"url":"https://api.github.com/repos/aspnet/Razor/labels/Perf","name":"Perf","color":"fef2c0"}],"state":"open","locked":false,"assignee":{"login":"NTaylorMullen","id":2008729,"avatar_url":"https://avatars.githubusercontent.com/u/2008729?v=3","gravatar_id":"","url":"https://api.github.com/users/NTaylorMullen","html_url":"https://github.com/NTaylorMullen","followers_url":"https://api.github.com/users/NTaylorMullen/followers","following_url":"https://api.github.com/users/NTaylorMullen/following{/other_user}","gists_url":"https://api.github.com/users/NTaylorMullen/gists{/gist_id}","starred_url":"https://api.github.com/users/NTaylorMullen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NTaylorMullen/subscriptions","organizations_url":"https://api.github.com/users/NTaylorMullen/orgs","repos_url":"https://api.github.com/users/NTaylorMullen/repos","events_url":"https://api.github.com/users/NTaylorMullen/events{/privacy}","received_events_url":"https://api.github.com/users/NTaylorMullen/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/aspnet/Razor/milestones/17","html_url":"https://github.com/aspnet/Razor/milestones/4.0.0-rc2","labels_url":"https://api.github.com/repos/aspnet/Razor/milestones/17/labels","id":1370820,"number":17,"title":"4.0.0-rc2","description":"","creator":{"login":"Eilon","id":202643,"avatar_url":"https://avatars.githubusercontent.com/u/202643?v=3","gravatar_id":"","url":"https://api.github.com/users/Eilon","html_url":"https://github.com/Eilon","followers_url":"https://api.github.com/users/Eilon/followers","following_url":"https://api.github.com/users/Eilon/following{/other_user}","gists_url":"https://api.github.com/users/Eilon/gists{/gist_id}","starred_url":"https://api.github.com/users/Eilon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Eilon/subscriptions","organizations_url":"https://api.github.com/users/Eilon/orgs","repos_url":"https://api.github.com/users/Eilon/repos","events_url":"https://api.github.com/users/Eilon/events{/privacy}","received_events_url":"https://api.github.com/users/Eilon/received_events","type":"User","site_admin":false},"open_issues":14,"closed_issues":17,"state":"open","created_at":"2015-10-22T16:54:46Z","updated_at":"2016-01-13T00:23:22Z","due_on":null,"closed_at":null},"comments":11,"created_at":"2015-12-09T19:52:11Z","updated_at":"2016-01-14T21:21:29Z","closed_at":null,"body":"I'm running RC1-Final.  Pages are served fine, but with a large view, the server gets so bogged down, apparently trying to parse all the tags, that the server complains and I end up with HTTP errors at times.\r\n\r\nIn this instance, I'm serving a view with no razor \"@\" tags and no kind of inline code.  Aside from two \"section\" tags, it's purely HTML and Javascript.  The view defines several data tables and is 188kb in size.  Here is what the start and end of requests look like in the VS performance tools (red arrows are start of request and end of request):\r\n\r\n![image](https://cloud.githubusercontent.com/assets/15930167/11696711/4f41f122-9e7b-11e5-9b15-ef84f4cb2e15.png)\r\n\r\nMemory snapshot before the page request\r\n![image](https://cloud.githubusercontent.com/assets/15930167/11696754/8bf3e184-9e7b-11e5-9b55-f4bddb74e624.png)\r\n\r\nMemory snapshot during the page request\r\n![image](https://cloud.githubusercontent.com/assets/15930167/11696774/a37d6c9e-9e7b-11e5-8acf-5ce8daa9de3e.png)\r\n\r\nMemory snapshot after the page request\r\n![image](https://cloud.githubusercontent.com/assets/15930167/11696790/b8619040-9e7b-11e5-9a5d-0efbefd20f83.png)\r\n\r\nAny ideas how to mitigate this beyond \"write smaller views with fewer tags to parse\" ?"},"comment":{"url":"https://api.github.com/repos/aspnet/Razor/issues/comments/171783414","html_url":"https://github.com/aspnet/Razor/issues/635#issuecomment-171783414","issue_url":"https://api.github.com/repos/aspnet/Razor/issues/635","id":171783414,"user":{"login":"rynowak","id":1430011,"avatar_url":"https://avatars.githubusercontent.com/u/1430011?v=3","gravatar_id":"","url":"https://api.github.com/users/rynowak","html_url":"https://github.com/rynowak","followers_url":"https://api.github.com/users/rynowak/followers","following_url":"https://api.github.com/users/rynowak/following{/other_user}","gists_url":"https://api.github.com/users/rynowak/gists{/gist_id}","starred_url":"https://api.github.com/users/rynowak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rynowak/subscriptions","organizations_url":"https://api.github.com/users/rynowak/orgs","repos_url":"https://api.github.com/users/rynowak/repos","events_url":"https://api.github.com/users/rynowak/events{/privacy}","received_events_url":"https://api.github.com/users/rynowak/received_events","type":"User","site_admin":false},"created_at":"2016-01-14T21:21:29Z","updated_at":"2016-01-14T21:21:29Z","body":"> will large views (like those with datatables) still have trouble being parsed as described in this original post\r\n\r\nWe're still working on this. Expect to see some concrete improvement in the next week or so. \r\n\r\nAll of the discussion here has fundamentally been about strategies to address the performance issues of parsing large pages. We investigated one avenue to address the issue and decided not to take that particular fix for this release."}}