2011-08-30 8 views
5

मैं एक ऐप को अपग्रेड करने की प्रक्रिया में हूं। वर्तमान में 3.1.आरसी 8।रेल 3.1 - बल विकास संपत्तियों को सेवा देने के लिए 3.0.x में थे?

मुद्दा यह है कि विकास में, हर अनुरोध पर, ऐसा लगता है कि प्रत्येक एकल संपत्ति रेल स्टैक के माध्यम से चलती है। हम बात कर रहे हैं, हर छवि, जेएस और सीएसएस फ़ाइल (और उनमें से बहुत सारे हैं)। पहले अनुरोध के बाद, वे सभी 304s लौटते हैं, लेकिन यह अभी भी धीमा है।

हर अनुरोध के बाद इस की एक पूरी बहुत कुछ नहीं है:

Started GET "/assets/jquery-ui-1.8.16.custom.css?body=1" for 127.0.0.1 at 2011-08-30 15:36:21 -0400 
Served asset /jquery-ui-1.8.16.custom.css - 304 Not Modified (0ms) 

Started GET "/assets/yui.css?body=1" for 127.0.0.1 at 2011-08-30 15:36:21 -0400 
Served asset /yui.css - 304 Not Modified (0ms) 

मैं कैसे संपत्ति, विकास में केवल, कार्य करने के जैसे वे 3.0.x में करने के लिए इस्तेमाल कर सकते हैं?

मैं भी इन टैग का उपयोग कर रहा देव में एक एकल फाइल में संकलित किया जा रहा से अपने सीएसएस/जे एस को रोकने के लिए:

= stylesheet_link_tag 'application', :debug => Rails.env.development? 
= javascript_include_tag 'application', :debug => Rails.env.development? 

यहाँ मेरी application.rb

require File.expand_path('../boot', __FILE__) 

require 'rails/all' 

if defined?(Bundler) 
    Bundler.require(:default, :assets, Rails.env) 
end 

module Fooapp 
    class Application < Rails::Application 
    config.encoding = "utf-8" 

    config.filter_parameters += [:password, :password_confirmation] 

    config.assets.enabled = true 

    config.assets.version = '1.0' 
    end 
end 

और development.rb है:

Fooapp::Application.configure do 

    config.cache_classes = false 

    config.whiny_nils = true 

    config.consider_all_requests_local  = true 
    config.action_controller.perform_caching = false 

    config.action_mailer.raise_delivery_errors = true 

    config.active_support.deprecation = :log 

    config.action_dispatch.best_standards_support = :builtin 

    config.assets.compress = false 

    config.assets.debug = true 
end 

उत्तर

0

जो मैंने देखा है, वह मुख्य रूप से सोच स्फिंक्स (जो मेरे जेमफाइल में है) से संबंधित है। विकास में, टीएस प्रत्येक पृष्ठ अनुरोध पर कुछ I18n संबंधित चीजें लोड करता है .. और प्रत्येक संपत्ति को पृष्ठ अनुरोध माना जाता है।

https://github.com/freelancing-god/thinking-sphinx/blob/v2.0.7/lib/thinking_sphinx/railtie.rb#L29

फिर भी, टीएस की देखभाल करने वाले के बारे में पता है, ए डी एन उस फ़ाइल को अब मास्टर पर मौजूद हैं। एक नई रिलीज होने तक, आप स्थानीय रूप से उन दो I18n लाइनों पर टिप्पणी कर सकते हैं।

1

रेल प्रत्येक स्प्राकेट्स संपत्ति अनुरोध पर सभी to_prepare हुक चला रहा है - और वहां अच्छी तरह से रत्न हैं जो उनके हुक में बड़ी मात्रा में काम करते हैं। (रेल स्वयं का एक अप्रत्यक्ष अपराधी भी है, क्योंकि यह भी प्रत्येक संपत्ति अनुरोध पर आपके कुछ कोड को पुनः लोड कर रहा है)

उनके प्रीलोड हुक (सामान्य रूप से, या केवल संपत्ति अनुरोधों के लिए) को अनुकूलित करने के लिए प्रतीक्षा करने के बजाय, https://github.com/wavii/rails-dev-tweaks पर एक नज़र डालें। यह परिसंपत्ति अनुरोधों के दौरान प्रीलोड हुक (कोड रीलोडिंग सहित) को अक्षम करता है।

यह किसी अन्य अनुरोध प्रकार के लिए भी कॉन्फ़िगर करने योग्य है जिसे आप चाहते हैं

+0

उस मणि के लिए चीयर्स। बहुत मदद करता है। – Andy

संबंधित मुद्दे