9
votes

Comment réduire la taille de la limace Heroku?

Ma taille de la limace est de 89,5 Mo, ce qui est énorme.

Cependant, la taille du référentiel est assez petite: p> xxx pré>

Suivre ce blog post: http://dazedthots.blogspot.com/2011/07/reducing-slug-size-heroku.html a >, il y a un bogue sur Heroku avec le changement de gemfiles. Les miennes ont changé plusieurs fois, y compris des dépendances GIT, mais maintenant, la seule dépendance GIT est "Rails_admin". Voir ci-dessous: P>

source 'http://rubygems.org'

gem 'rails',      '~> 3.1.0'
gem 'rails-i18n', '~> 0.1.3'
gem 'pg',         '~> 0.11.0'
gem 'rake',       '~> 0.8.7'
gem 'thin', '~> 1.2.11'
gem 'heroku', '~> 2.4.0'
gem 'squeel',     '~> 0.8.6'
gem 'devise', '~> 1.4.2'
gem 'slim-rails',  '~> 0.2.0'
gem 'simple_form', '~> 1.4.2'
gem 'will_paginate', '~> 3.0'
gem 'sunspot_rails', '~> 1.2.1'
gem 'jquery-rails',    '~> 1.0.12'
gem 'modernizr-rails', '~> 2.0.6'
gem 'rails_admin', git: 'https://github.com/sferik/rails_admin.git'
gem 'sass-rails',   '~> 3.1.0'
gem 'coffee-rails', '~> 3.1.0'
gem 'uglifier',     '~> 1.0.0'
gem 'newrelic_rpm'


0 commentaires

5 Réponses :


0
votes

Être étant donné que Heroku a reconnu le problème dans le poste que vous avez référencé, j'attendrais et j'y assassirais jusqu'à ce que Heroku l'ait corrigé la fin. Je suppose que vous avez déjà examiné certains des autres moyens de réduire une taille de limace avec un fichier .slugignore?

La taille de la limace inclura toutes vos gemmes, de sorte que plus vous utilisez des gemmes que vous utilisez plus votre taille de limace sera la plus grande que chaque application Heroku conserve ses propres gemmes ces jours-ci. Je n'aurais pas entendu parler de: Git a référencé des pierres précieuses utilisant plus d'espace mais j'ai maintenant.


2 commentaires

Je ne pense pas que la taille de la limace inclut toutes les pierres précieuses. Selon HEROKU : "Dans la mesure du possible, Référez-vous un gem publié par nom dans votre gemfile plutôt que le chargement de la source à l'aide de l'option: GIT. ".


Cela fait parce que mes reposer sont quelques MB mais sur Heroku, ils sont d'environ 40 Mo. La seule chose qui causerait que ce soit des gemmes groupées.



4
votes

J'ai pu couper quelques mégaoctets ici et là en répertoriant des répertoires dans le fichier .slugignore . Cela peut vous aider à rester sous la limite de 100 Mo jusqu'à ce que cette question soit résolue.

Vous pouvez également vouloir expérimenter de pousser vos modifications dans un nouveau référentiel sans historique, car il semble que Heroku vous pénalise de la taille de l'arbre cloné que vous référenciez.


2 commentaires

J'ai déjà déployé un fichier .slugignore, mais la différence est plutôt négligeable. J'ai essayé d'appuyer sur un nouveau référentiel qui a réduit la taille de la limace compilée à près de la moitié. Il est maintenant de 50 Mo. Ce n'est pas une solution depuis que j'ai des addons payants sur mon application d'origine, mais cela confirme que Heroku a des problèmes avec leur taille de limace.


La seule autre chose à laquelle je passe est de repousser votre code dans votre propre référentiel GEM que votre mot de passe protège avec l'authentification de base. Cela devrait vous aider à mieux contrôler la taille de la limace pendant que vous continuez les yeux de votre code.



5
votes

Enfin, après 3 jours, Heroku a nettoyé mon cache. Tout va bien maintenant si ma limace est toujours de 54 Mo qui semble trop grande.

Heroku a confirmé qu'il n'y avait pas d'autre solution que de les contacter pour résoudre ce problème. Espérons que cela sera résolu dans une future version de Bundler.


2 commentaires

Notez que ce problème a été corrigé avec Bundler. L'ouverture d'un ticket de support n'est plus nécessaire.


Rails_admin (à partir de git) est connu pour provoquer des problèmes de taille de la limace: Github.com/sferik/Rails_admin/ Problèmes / 1083



0
votes

Le truc qui corrige le problème pour moi:

Qu'est-ce qui fonctionne: j'ai fait un autre dossier. Je recherche git dans ce dossier. et je supprime les fichiers sur le fichier XML, puis j'ai essayé de télécharger à Heroku et cela a fonctionné.


0 commentaires

0
votes

Comme avec vous, mon repo Ruby n'était qu'une fraction de ma taille de limace Heroku. J'ai suivi les conseils de Ce guide Heroku Pour explorer la limace non compressée sur mon Heroku Dyno en exécutant:

$ heroku run bash -a [app-name]


0 commentaires