From e54a08d8b02e282a86c03e9cc620289327084e8f Mon Sep 17 00:00:00 2001 From: Patrick Valsecchi Date: Mon, 18 Jun 2018 10:33:22 +0200 Subject: [PATCH] Improve perfs by using ujson We were spending the thrird of our time generting json. Now it's near 0%. --- admin/c2cgeoportal_admin/views/functionalities.py | 4 ++-- admin/c2cgeoportal_admin/views/interfaces.py | 4 ++-- admin/c2cgeoportal_admin/views/layer_groups.py | 4 ++-- admin/c2cgeoportal_admin/views/layers_v1.py | 4 ++-- admin/c2cgeoportal_admin/views/layers_wms.py | 6 +++--- admin/c2cgeoportal_admin/views/layers_wmts.py | 6 +++--- admin/c2cgeoportal_admin/views/layertree.py | 6 +++--- admin/c2cgeoportal_admin/views/ogc_servers.py | 4 ++-- admin/c2cgeoportal_admin/views/restriction_areas.py | 4 ++-- admin/c2cgeoportal_admin/views/roles.py | 4 ++-- admin/c2cgeoportal_admin/views/themes.py | 4 ++-- admin/c2cgeoportal_admin/views/users.py | 4 ++-- geoportal/c2cgeoportal_geoportal/__init__.py | 2 +- .../scaffolds/create/geoportal/webpack.apps.js.mako_tmpl | 2 +- .../nondockercreate/geoportal/webpack.apps.js.mako_tmpl | 2 +- 15 files changed, 30 insertions(+), 30 deletions(-) diff --git a/admin/c2cgeoportal_admin/views/functionalities.py b/admin/c2cgeoportal_admin/views/functionalities.py index cd71c60990..a82cd24a28 100644 --- a/admin/c2cgeoportal_admin/views/functionalities.py +++ b/admin/c2cgeoportal_admin/views/functionalities.py @@ -31,7 +31,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -49,7 +49,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/interfaces.py b/admin/c2cgeoportal_admin/views/interfaces.py index 3e91d7f2db..7f8ac78374 100644 --- a/admin/c2cgeoportal_admin/views/interfaces.py +++ b/admin/c2cgeoportal_admin/views/interfaces.py @@ -37,7 +37,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -55,7 +55,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/layer_groups.py b/admin/c2cgeoportal_admin/views/layer_groups.py index bf3a90d07d..7421c721ca 100644 --- a/admin/c2cgeoportal_admin/views/layer_groups.py +++ b/admin/c2cgeoportal_admin/views/layer_groups.py @@ -46,7 +46,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -64,7 +64,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/layers_v1.py b/admin/c2cgeoportal_admin/views/layers_v1.py index 7c2b7c3975..c2f1c00755 100644 --- a/admin/c2cgeoportal_admin/views/layers_v1.py +++ b/admin/c2cgeoportal_admin/views/layers_v1.py @@ -64,7 +64,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -82,7 +82,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/layers_wms.py b/admin/c2cgeoportal_admin/views/layers_wms.py index 5461c542d8..305ffb6a96 100644 --- a/admin/c2cgeoportal_admin/views/layers_wms.py +++ b/admin/c2cgeoportal_admin/views/layers_wms.py @@ -59,7 +59,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -96,7 +96,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() @@ -108,7 +108,7 @@ def duplicate(self): @view_config(route_name='convert_to_wmts', request_method='POST', - renderer='json') + renderer='fast_json') def convert_to_wmts(self): src = self._get_object() dbsession = self._request.dbsession diff --git a/admin/c2cgeoportal_admin/views/layers_wmts.py b/admin/c2cgeoportal_admin/views/layers_wmts.py index af1520901e..3805bc4f96 100644 --- a/admin/c2cgeoportal_admin/views/layers_wmts.py +++ b/admin/c2cgeoportal_admin/views/layers_wmts.py @@ -53,7 +53,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -90,7 +90,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() @@ -102,7 +102,7 @@ def duplicate(self): @view_config(route_name='convert_to_wms', request_method='POST', - renderer='json') + renderer='fast_json') def convert_to_wms(self): src = self._get_object() dbsession = self._request.dbsession diff --git a/admin/c2cgeoportal_admin/views/layertree.py b/admin/c2cgeoportal_admin/views/layertree.py index 996cc1df0f..bf89ac1dde 100644 --- a/admin/c2cgeoportal_admin/views/layertree.py +++ b/admin/c2cgeoportal_admin/views/layertree.py @@ -33,7 +33,7 @@ def index(self): return {'limit_exceeded': limit_exceeded} @view_config(route_name='layertree_children', - renderer='json') + renderer='fast_json') def children(self): group_id = self._request.params.get('group_id', None) path = self._request.params.get('path', '') @@ -143,7 +143,7 @@ def _item_actions(self, item, parent_id=None): @view_config(route_name='layertree_unlink', request_method='DELETE', - renderer='json') + renderer='fast_json') def unlink(self): group_id = self._request.matchdict.get('group_id') item_id = self._request.matchdict.get('item_id') @@ -162,7 +162,7 @@ def unlink(self): @view_config(route_name='layertree_delete', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): item_id = self._request.matchdict.get('item_id') item = self._request.dbsession.query(TreeItem).get(item_id) diff --git a/admin/c2cgeoportal_admin/views/ogc_servers.py b/admin/c2cgeoportal_admin/views/ogc_servers.py index 2ee8fb0eb4..460e557608 100644 --- a/admin/c2cgeoportal_admin/views/ogc_servers.py +++ b/admin/c2cgeoportal_admin/views/ogc_servers.py @@ -38,7 +38,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -56,7 +56,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/restriction_areas.py b/admin/c2cgeoportal_admin/views/restriction_areas.py index ceea98523f..fffdb592f8 100644 --- a/admin/c2cgeoportal_admin/views/restriction_areas.py +++ b/admin/c2cgeoportal_admin/views/restriction_areas.py @@ -52,7 +52,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -70,7 +70,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/roles.py b/admin/c2cgeoportal_admin/views/roles.py index 0e2d73e79e..df9c00bd1c 100644 --- a/admin/c2cgeoportal_admin/views/roles.py +++ b/admin/c2cgeoportal_admin/views/roles.py @@ -53,7 +53,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -71,7 +71,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/themes.py b/admin/c2cgeoportal_admin/views/themes.py index 1c10f0d074..3f36e892aa 100644 --- a/admin/c2cgeoportal_admin/views/themes.py +++ b/admin/c2cgeoportal_admin/views/themes.py @@ -74,7 +74,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -92,7 +92,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/admin/c2cgeoportal_admin/views/users.py b/admin/c2cgeoportal_admin/views/users.py index b00c9e1cb1..ca1a2d0994 100644 --- a/admin/c2cgeoportal_admin/views/users.py +++ b/admin/c2cgeoportal_admin/views/users.py @@ -37,7 +37,7 @@ def index(self): return super().index() @view_config(route_name='c2cgeoform_grid', - renderer='json') + renderer='fast_json') def grid(self): return super().grid() @@ -76,7 +76,7 @@ def save(self): @view_config(route_name='c2cgeoform_item', request_method='DELETE', - renderer='json') + renderer='fast_json') def delete(self): return super().delete() diff --git a/geoportal/c2cgeoportal_geoportal/__init__.py b/geoportal/c2cgeoportal_geoportal/__init__.py index af0cec0770..2eee714a33 100644 --- a/geoportal/c2cgeoportal_geoportal/__init__.py +++ b/geoportal/c2cgeoportal_geoportal/__init__.py @@ -507,7 +507,7 @@ def includeme(config): settings = config.get_settings() - config.add_notfound_view(notfound, append_slash=True, renderer='json', http_cache=0) + config.add_notfound_view(notfound, append_slash=True, renderer='fast_json', http_cache=0) config.include("c2cgeoportal_commons") diff --git a/geoportal/c2cgeoportal_geoportal/scaffolds/create/geoportal/webpack.apps.js.mako_tmpl b/geoportal/c2cgeoportal_geoportal/scaffolds/create/geoportal/webpack.apps.js.mako_tmpl index fc4d3f0855..c1173ee2ee 100644 --- a/geoportal/c2cgeoportal_geoportal/scaffolds/create/geoportal/webpack.apps.js.mako_tmpl +++ b/geoportal/c2cgeoportal_geoportal/scaffolds/create/geoportal/webpack.apps.js.mako_tmpl @@ -4,7 +4,7 @@ const webpack = require('webpack'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); -const INTERFACE_THEME = ${__import__('json').dumps(interfaces_theme)}; +const INTERFACE_THEME = ${__import__('ujson').dumps(interfaces_theme)}; const plugins = []; const entry = {}; diff --git a/geoportal/c2cgeoportal_geoportal/scaffolds/nondockercreate/geoportal/webpack.apps.js.mako_tmpl b/geoportal/c2cgeoportal_geoportal/scaffolds/nondockercreate/geoportal/webpack.apps.js.mako_tmpl index 0bfca17a64..8e4068b7ae 100644 --- a/geoportal/c2cgeoportal_geoportal/scaffolds/nondockercreate/geoportal/webpack.apps.js.mako_tmpl +++ b/geoportal/c2cgeoportal_geoportal/scaffolds/nondockercreate/geoportal/webpack.apps.js.mako_tmpl @@ -4,7 +4,7 @@ const webpack = require('webpack'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); -const INTERFACE_THEME = ${__import__('json').dumps(interfaces_theme)}; +const INTERFACE_THEME = ${__import__('ujson').dumps(interfaces_theme)}; const plugins = []; const entry = {};