]> git.openstreetmap.org Git - chef.git/commitdiff
nominatim: make pool size and workers configurable
authorSarah Hoffmann <lonvia@denofr.de>
Sun, 30 Jul 2023 12:36:11 +0000 (14:36 +0200)
committerSarah Hoffmann <lonvia@denofr.de>
Sun, 30 Jul 2023 12:36:11 +0000 (14:36 +0200)
cookbooks/nominatim/attributes/default.rb
cookbooks/nominatim/recipes/default.rb
cookbooks/nominatim/templates/default/nominatim.env.erb

index 6330ac6904051ba3e6c0c2f757b3aef171bb7445..def731605ba2ea4691fc11585cb304950b934b83 100644 (file)
@@ -15,6 +15,8 @@ default[:nominatim][:ui_revision] = "master"
 default[:nominatim][:qa_repository] = "https://github.com/osm-search/Nominatim-Data-Analyser"
 default[:nominatim][:qa_revision] = "main"
 default[:nominatim][:api_flavour] = "php"
+default[:nominatim][:api_workers] = 10
+default[:nominatim][:api_pool_size] = 20
 
 default[:nominatim][:fpm_pools] = {
   "nominatim.openstreetmap.org" => {
index 67fce4feba65800a81e76a82616f972f37ef0549..562de9a09657807837b12c70bedb07e4a2776e24 100644 (file)
@@ -258,7 +258,8 @@ template "#{project_directory}/.env" do
             :flatnode_file => node[:nominatim][:flatnode_file],
             :log_file => "#{node[:nominatim][:logdir]}/query.log",
             :tokenizer => node[:nominatim][:config][:tokenizer],
-            :forward_dependencies => node[:nominatim][:config][:forward_dependencies]
+            :forward_dependencies => node[:nominatim][:config][:forward_dependencies],
+            :pool_size => node[:nominatim][:api_pool_size]
 end
 
 remote_file "#{project_directory}/wikimedia-importance.sql.gz" do
@@ -311,7 +312,7 @@ elsif node[:nominatim][:api_flavour] == "python"
     working_directory project_directory
     standard_output "append:#{node[:nominatim][:logdir]}/gunicorn.log"
     standard_error "inherit"
-    exec_start "/usr/bin/gunicorn -b unix:/run/gunicorn-nominatim.openstreetmap.org.sock -w 10 -k uvicorn.workers.UvicornWorker nominatim.server.starlette.server:run_wsgi"
+    exec_start "/usr/bin/gunicorn -b unix:/run/gunicorn-nominatim.openstreetmap.org.sock -w #{node[:nominatim][:api_workers]} -k uvicorn.workers.UvicornWorker nominatim.server.starlette.server:run_wsgi"
     exec_reload "/bin/kill -s HUP $MAINPID"
     environment :PYTHONPATH => "/usr/local/lib/nominatim/lib-python/"
     kill_mode "mixed"
index 929f6a0aab36293989d5d003a37c3ead722ea9bd..472aa4949a66c2d35d9686498c7c75ba18980546 100644 (file)
@@ -8,6 +8,7 @@ NOMINATIM_FLATNODE_FILE="<%= @flatnode_file %>"
 <% end -%>
 
 NOMINATIM_SERVE_LEGACY_URLS=yes
+NOMINATIM_API_POOL_SIZE=<%= @pool_size %>
 
 NOMINATIM_IMPORT_STYLE=extratags