2012-12-21 15 views
25

कितना समय लगता है Google मेघ संग्रहण में एक फाइल करने के लिए एक बदलाव के लिए ले करता है प्रचार करने के लिए?Google क्लाउड संग्रहण प्रचार

मैं यह बहुत ही निराशाजनक समस्या जहां मैं एक फ़ाइल और की सामग्री को बदल रही है यह gsutil के माध्यम से फिर से अपलोड करें, लेकिन परिवर्तन कई घंटों तक दिखाई नहीं देता। क्या बदली गई फाइल को तत्काल सब कुछ फैलाने के लिए मजबूर करने का कोई तरीका है?

अगर मैं Google क्लाउड संग्रहण कंसोल में फ़ाइल को देखो, यह नई फ़ाइल देखता है, लेकिन उसके बाद अगर मैं सार्वजनिक URL मारा यह एक पुराने संस्करण है और कुछ मामलों में, 2 संस्करण पहले।

वहाँ एक शीर्ष लेख है कि मैं नहीं कर रहा हूँ की स्थापना है?

संपादित करें:

मैं gsutil -h "Cache-Control: no-cache" cp -a public-read MyFile की कोशिश की और यह मदद नहीं करता है, लेकिन शायद पुरानी फाइल समाप्त करने के लिए पहले नई नहीं-कैश संस्करण अधिक लेता है की जरूरत है?

मैं फ़ाइल पर एक कर्ल मैं किया था और इस वापस पाने:

HTTP/1.1 200 OK 
Server: HTTP Upload Server Built on Dec 12 2012 15:53:08 (1355356388) 
Expires: Fri, 21 Dec 2012 19:58:39 GMT 
Date: Fri, 21 Dec 2012 18:58:39 GMT 
Last-Modified: Fri, 21 Dec 2012 18:53:41 GMT 
ETag: "66d820174d6de17a278b327e4c3e9b4e" 
x-goog-sequence-number: 3 
x-goog-generation: 1356116021512000 
x-goog-metageneration: 1 
Content-Type: application/octet-stream 
Content-Language: en 
Accept-Ranges: bytes 
Content-Length: 160 
Cache-Control: public, max-age=3600, no-transform 
Age: 3449 

कौन सा इंगित करने के लिए यह कोई कैश के बावजूद एक घंटे में समाप्त हो जाएगा, लगता है।

उत्तर

33

Google क्लाउड संग्रहण मजबूत डेटा स्थिरता प्रदान करता है: एक बार एक लेख पूरा करता है, दुनिया में कहीं से पढ़ने सबसे हाल के डेटा मिल जाएगा।

हालांकि, यदि आप कैशिंग सक्षम करते हैं (जो कि डिफ़ॉल्ट रूप से किसी सार्वजनिक रूप से पठनीय वस्तु के लिए सही है), तो उस ऑब्जेक्ट के ऑब्जेक्ट को ऑब्जेक्ट पर निर्दिष्ट कैश-कंट्रोल अधिकतम-आयु के रूप में पुराने ऑब्जेक्ट का एक संस्करण दिखाई दे सकता है। , उदाहरण के लिए, अगर आप इस तरह फ़ाइल अपलोड की गई:

gsutil cp -a public-read file gs://my_bucket/file 

आप देख सकते हैं कि अधिकतम उम्र 1 घंटा (3600 सेकंड) है:

gsutil ls -L gs://my_bucket/file 
gs://my_bucket/file: 
    Creation time: Fri, 21 Dec 2012 19:59:57 GMT 
    Cache-Control: public, max-age=3600, no-transform 
    Content-Length: 1065 
    Content-Type: text/plain 
    ETag:  eb3fb83beedf1efffe5b8e32e8d6a65a 
    ... 

आप एक सार्वजनिक रूप से पठनीय रोकना चाहते हैं कैशेड किए जाने से वस्तु तुम कर सकते हो:

:

gsutil setmeta -h Cache-Control:no-cache gs://my_bucket/file 

वैकल्पिक रूप से, आप वस्तु पर एक छोटी अधिकतम उम्र निर्धारित कर सकते हैं

माइक श्वार्ट्ज, Google क्लाउड संग्रहण टीम

+1

मैं शामिल करने के लिए है कि मैं कोई कैश करने की कोशिश की मेरे सवालों का अद्यतन, लेकिन मैं अभी भी अधिकतम उम्र = 3600 दिखाई दे रही है। नई नो-कैश फ़ाइल खत्म होने से पहले पुरानी फ़ाइल को समाप्त होने की आवश्यकता है? –

+0

ठीक है, ऐसा लगता है कि नो-कैश संस्करण खत्म होने से पहले पुराने कैश किए गए संस्करण की समाप्ति के लिए आपको प्रतीक्षा करना होगा। अब जब यह समाप्त हो गया है, तो नो-कैश संस्करण सही तरीके से दिख रहा है। –

+3

@ माइक सीडीएन पर कैश को अमान्य/फ़्लश करने की सुविधा रखना अच्छा लगेगा। – themihai

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