nginx বিপরীত প্রক্সি, ক্যাশে বনাম স্টোর কখন ব্যবহার করবেন?


8

আমি আমার প্রকল্পের ওয়েব স্ট্যাকের পুনর্গঠনের প্রক্রিয়াতে চলেছি: এনজিনেক্স -> হ্যাপ্রোক্সি -> অনেকগুলি (অ্যাপাচি / যাত্রীবাহী রেল) দৃষ্টান্ত

কয়েকটি লক্ষ্য অন্তর্ভুক্ত:

  • পৃষ্ঠার ক্যাচিংয়ের জন্য একক অবস্থান (বর্তমানে প্রতিটি অ্যাপাচি মেশিনে রেলের মাধ্যমে সম্পন্ন করা হয়েছে)
  • দ্রুত স্থিতিশীল সামগ্রী
  • অভ্যন্তরীণ পাইপলাইন থেকে এসএসএল সরান
  • আইপি লগিং (আগে টিসিপি মোডে হ্যাপ্রোক্সি চালানোর কারণে হারিয়ে গেছে)

চিত্র / স্টাইলশিট / জাভাস্ক্রিপ্ট সম্পদগুলি অ্যাপ্রোপিয়েট শিরোনাম সহ ক্যাশে ক্যাশেড। আমাদের পৃষ্ঠা ক্যাশিং অভ্যন্তরীণ পরামিতিগুলির উপর ভিত্তি করে এবং সাধারণ ক্যাশে নিয়ন্ত্রণগুলিতে সাড়া দেওয়া উচিত নয়। এই প্রান্তগুলি অর্জন করতে, আমাদের কনফিগারেশনটি দেখতে এমন কিছু দেখাচ্ছে

server {

    ...

    location /really_slow_dynamic_content/ {
        root /var/www/tmp;
        error_page 404 = @fetch;
    }

    location @fetch {
        internal;
        proxy_pass   haproxy_ip;
        proxy_store  /var/www/tmp${uri}_cache.html;
        proxy_store_access  user:rw  group:rw  all:r;
    }

    location /assets/ {
        proxy_pass   haproxy_ip;
        proxy_cache  assets;
    }

    location / {
        proxy_pass   haproxy_ip;
    }
}

আমি আসলেই সিসাদমিনের খুব বেশি নই এবং আমি জানি যে প্রচুর বিকল্প / টুইট / সংযোজন রয়েছে যা সহায়ক হতে পারে। প্রক্সি_ ক্যাশে এবং প্রক্সি_স্টোরের মধ্যেও আমি আলাদা বুঝতে পারি না। সুতরাং আমার আসল প্রশ্ন ...

যতক্ষণ না আমরা সম্পদগুলি এনগিনেক্স মেশিনে স্থানান্তর করি, ততক্ষণ সম্পদের জন্য প্রক্সি_ক্যাচ এবং ধীর গতিশীল সামগ্রীর জন্য প্রক্সি_স্টোর ব্যবহার করা কি বোধগম্য নয়?

এছাড়াও, যদি আমার বিবেচনা করা উচিত এমন অন্যান্য বিবেচনা বা সফ্টওয়্যার থাকে তবে আমি সেগুলি সম্পর্কে শুনতে আগ্রহী। ধন্যবাদ!


এই প্রশ্নটি পোস্ট করার পরে, আমি বুঝতে পেরেছি যে আমি যে প্রাথমিক কনফিগারটি ব্যবহার করেছি সেগুলি স্টোরটি মোটেই ব্যবহার করে না এবং (আধা?) অফিসিয়াল উইকির উদাহরণ থেকে ত্রুটি_পৃষ্ঠা এবং অভ্যন্তরীণ সেটিংসগুলি ঠিক optionচ্ছিক নয় (কনফিগারেশনটি এখানে আপডেট হয়েছে) মনে হচ্ছে এটি কাজ করছে এবং একটি ওয়ার্কিং কনফিগারেশন এই প্রশ্নের জন্য উত্তম উত্তরাধিকার বলে মনে হচ্ছে)। সুতরাং, পূর্ণ পৃষ্ঠা তৈরি করতে ধীর হয়ে (এবং খুব কম আপডেট হওয়া) স্টোরটি ব্যবহার করে এবং চিত্র, জাভাস্ক্রিপ্ট এবং এ জাতীয় প্রকৃত ক্যাশে আমাদের জন্য বেশ ভালভাবে কাজ করছে বলে মনে হয়। আমি একটি উত্তর গ্রহণ করব, যেহেতু এটি কমপক্ষে আমার সমস্যাটি সন্ধানের জন্য আমাকে নেতৃত্ব দিয়েছিল, তবে আমি এখনও দুটি দিকনির্দেশনাটি যেভাবে তৈরি করতে চাইছিলাম তা ব্যবহার করছি কিনা তা এখনও আমার কোনও ধারণা নেই বা না (ভাল, কমপক্ষে স্টোর সম্পর্কিত নয়, ক্যাশেটি আরও কিছুটা সুস্পষ্ট বলে মনে হয়)।


উত্তরাধিকারমূলক উদ্দেশ্যে, এই সমস্যাগুলি মোকাবেলা করার সময় এই আলোচনাটি আমার পক্ষে খুব সহায়ক ছিল। রুবি-forum.com/topic/140396
ক্রিস

উত্তর:


3

যদি স্মৃতি আমাকে সঠিকভাবে পরিবেশন করে, প্রক্সি_ স্টোর কোনও আইটেমের জন্য অনুরোধের একটি বাইনারি উপস্থাপনা সংরক্ষণ করে যেখানে প্রক্সি_ ক্যাশে আইটেমটির একটি ক্যাশেড অনুলিপিটিকে তার বেস আকারে সঞ্চয় করে।

প্রক্সি_ক্যাচ আসলে একাধিক স্তর সহ একটি সঠিক ক্যাচিং ইঞ্জিন এবং একই কীগুলি ব্যবহার করে একাধিক সাইট থেকে সামগ্রী সংরক্ষণের জন্য উপযুক্ত।

আমি ব্যক্তিগতভাবে আমাদের প্রতিটি স্থিতিশীল সামগ্রীর সার্ভারে 2 বিলিয়ন পণ্য চিত্র সংরক্ষণ করতে প্রক্সি_ক্যাচ ব্যবহার করি।


1

প্রক্সি_স্টোর অবজেক্টগুলির 'অন ডিমান্ড' মিরর তৈরি করতে ব্যবহৃত হয়। এটি আইটেমগুলিকে একই পথে রাখে যে প্রদত্ত আইটেমটি ব্যাকএন্ডে বিদ্যমান।

ধীর গতিশীল কন্টেন্টের ক্ষেত্রে, প্রক্সি_ ক্যাশে আরও উপযুক্ত, কারণ এটি ক্যাশের সমাপ্তির সমর্থন করে।

প্রক্সিস্টোর যেখানে বেশি কার্যকর সেগুলির একটি উদাহরণ হতে পারে আরপিএম ফাইলগুলির একটি আয়না হতে পারে যেখানে কোনও ফাইলের নাম / সংস্করণ কখনই শেষ হওয়ার প্রয়োজন হয় না ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.