From a5f1945915c5cac2bc1cf5d7ee8ae888db202ca8 Mon Sep 17 00:00:00 2001 From: Bruno Wagner Date: Wed, 31 Aug 2016 15:27:20 -0300 Subject: Reading interstitial on class init The interstitial was being read at every login request, that was a blocking read on the main loop for every user. That file was also being opened and not closed at every request, that would aggravate the 'too many open files' problem --- service/pixelated/resources/root_resource.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'service/pixelated/resources/root_resource.py') diff --git a/service/pixelated/resources/root_resource.py b/service/pixelated/resources/root_resource.py index f27138b0..8353ed7e 100644 --- a/service/pixelated/resources/root_resource.py +++ b/service/pixelated/resources/root_resource.py @@ -49,6 +49,8 @@ class RootResource(BaseResource): self._html_template = open(os.path.join(self._static_folder, 'index.html')).read() self._services_factory = services_factory self._child_resources = ChildResourcesMap() + with open(os.path.join(self._startup_assets_folder, 'Interstitial.html')) as f: + self.interstitial = f.read() self._startup_mode() def _startup_mode(self): @@ -123,7 +125,7 @@ class RootResource(BaseResource): def render_GET(self, request): self._add_csrf_cookie(request) if self._is_starting(): - return open(os.path.join(self._startup_assets_folder, 'Interstitial.html')).read() + return self.interstitial else: account_email = self.mail_service(request).account_email response = Template(self._html_template).safe_substitute(account_email=account_email) -- cgit v1.2.3