Apply memory limits to mapserv
authorTom Hughes <tom@compton.nu>
Fri, 6 Jul 2018 09:17:25 +0000 (10:17 +0100)
committerTom Hughes <tom@compton.nu>
Fri, 6 Jul 2018 09:17:38 +0000 (10:17 +0100)
cookbooks/imagery/resources/layer.rb
cookbooks/systemd/resources/service.rb
cookbooks/systemd/templates/default/service.erb

index 2288398..7da41f7 100644 (file)
@@ -70,6 +70,8 @@ action :create do
                 "MS_DEBUGLEVEL" => "0",
                 "MS_ERRORFILE" => "stderr"
     limit_nofile 16384
+    memory_high "1G"
+    memory_max "2G"
     user "imagery"
     group "imagery"
     exec_start_pre "/bin/rm -f /run/mapserver-fastcgi/layer-#{new_resource.layer}.socket"
index eff763f..c31b6d0 100644 (file)
@@ -27,6 +27,9 @@ property :type, String,
          :default => "simple",
          :is => %w[simple forking oneshot dbus notify idle]
 property :limit_nofile, Integer
+property :memory_low, [Integer, String]
+property :memory_high, [Integer, String]
+property :memory_max, [Integer, String]
 property :environment, Hash, :default => {}
 property :environment_file, [String, Hash]
 property :user, String
index f7f851a..b3e0c13 100644 (file)
@@ -14,6 +14,15 @@ Type=<%= @type %>
 <% if @limit_nofile -%>
 LimitNOFILE=<%= @limit_nofile %>
 <% end -%>
+<% if @memory_low -%>
+MemoryLow=<%= @memory_low %>
+<% end -%>
+<% if @memory_high -%>
+MemoryHigh=<%= @memory_high %>
+<% end -%>
+<% if @memory_max -%>
+MemoryMax=<%= @memory_max %>
+<% end -%>
 <% @environment.each do |name,value| -%>
 Environment="<%= name %>=<%= value %>"
 <% end -%>