Slow `/namespace/project/blob/master/filename` endpoint on EE
Problem
Today, I was taking benchmark on http://local.gitlab.test:8181/root/test-proj/blob/master/README.md
endpoint on my local machine, and surprisingly there is a significant difference between CE and EE.
In CE, the endpoint renders multiple partials. Here are the list of slow hamls and its timing.
app/views/projects/blob/show.html.haml : 500 msec
app/views/projects/blob/_blob.html.haml : 324 msec
app/views/layouts/application.html.haml : 713 msec
app/views/layouts/header/_default.html.haml : 273 msec
app/views/layouts/_page.html.haml : 315 msec
In EE, the rendering takes 4-5 times more time.
app/views/projects/blob/show.html.haml : 1980 msec
app/views/projects/blob/_blob.html.haml : 1350 msec
app/views/layouts/application.html.haml : 2940 msec
app/views/layouts/header/_default.html.haml : 1000 msec
app/views/layouts/_page.html.haml : 1500 msec
I know EE has some extra features to be rendered, however, taking 4-5 sec to render a blob page simply annoying. Also, this makes me worried that EE gets slower and slower as we introduce more features.
How can we make this faster?
Proposal
TBD
Edited by Shinya Maeda