এনজিনেক্স এবং মেমক্যাচ একসাথে কতটা ভাল কাজ করে?


14

আমাদের কাছে একটি গ্লাসফিশ অ্যাপ সার্ভার ক্লাস্টারে জাভা ইই ভিত্তিক ওয়েব অ্যাপ্লিকেশন চলছে । আগত ট্র্যাফিকটি মূলত আমাদের অ্যাপ্লিকেশন সংস্থানগুলির এক্সএমএল-ভিত্তিক উপস্থাপনার জন্য বিশ্রামের অনুরোধ হবে, তবে সম্ভবত ট্র্যাফিকের 5% জেএসএন- বা এক্সএইচটিএমএল / সিএসএস-ভিত্তিক উপস্থাপনার জন্য হতে পারে।

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

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

এইভাবে Nginx এবং মেমক্যাচযুক্ত ব্যবহৃত আপনার সামগ্রিক ছাপটি কী, আপনি তাদের সাথে কতটা খুশি? কোন সংস্থানগুলি সেগুলি সম্পর্কে শেখার জন্য আপনি সবচেয়ে সহায়ক খুঁজে পেয়েছেন? আপনি যদি তাদের চেষ্টা করে থাকেন এবং সেগুলি আপনার উদ্দেশ্য অনুসারে না আসে, তবে কেন নয় এবং পরিবর্তে আপনি কী ব্যবহার করেছেন?

দ্রষ্টব্য: এখানে একটি সম্পর্কিত প্রশ্ন । সার্ভারফল্ট সম্পর্কে জানার আগে আমি স্ট্যাকওভারফ্লোতে এটি জিজ্ঞাসা করেছি

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


শীতল, করবে। আমরা সম্ভবত আগামী মাস বা তার মধ্যে এটি নিয়ে পরীক্ষা করতে যাচ্ছি
জিম ফেরানস

উত্তর:


6

আপনার ওয়েব সার্ভারের সামনে আপনার ক্যাশে সার্ভারটি ব্যবহার করা উচিত। আমি বার্নিশ-ক্যাশে সুপারিশ করছি। আমরা এটি স্ক্যান্ডিনেভিয়ার বৃহত্তম এবং ব্যস্ততম ওয়েবসাইটের সাথে কাজ করে থাকি। আমরা ১৩ টি ভার্নিশ স্কুইড বাক্সকে 1 বার্নিশ বাক্স এবং অতিরিক্ত 1 টি সহ প্রতিস্থাপন করেছি 1

আমি আমার ব্যক্তিগত ওয়েবসাইটে একটি সাধারণ অ্যাপ্লিকেশনটিকে বেঞ্চমার্ক করেছি এবং এটি 9 সেকেন্ড থেকে 2000 এরও বেশি সময় চেয়েছে।

আপনি সিদ্ধান্ত নেন যে এটি কতক্ষণ স্মৃতিতে রাখে, আপনি সময় শেষ পর্যন্ত একটি করতে পারেন এবং তারপরে ডেটা পরিবর্তন হয়ে গেলে কেবল ক্যাশে সার্ভারে একটি http purge অনুরোধ পাঠান।


1
তবে এনগিনেক্স ক্যাশে বার্নিশের তুলনায় স্পষ্টভাবে দ্রুত
ভিবার্ট

4

অভিজ্ঞতা থেকে আমার ব্যক্তিগত মতামতটি হ'ল আপনি যদি ভার ভারসাম্য ব্যবহার করে থাকেন তবে আপনি সেই বাক্সটিকে ব্যালেন্সিং ফাংশনগুলি লোড করতে সম্পূর্ণ সীমাবদ্ধ করতে চান। আপনার লোড ব্যালেন্সারটি সামগ্রীতে পরিবেশন করা, এমনকি একটি ক্যাশে থেকেও, উচ্চ লোড পরিস্থিতিতে লোড ভারসাম্য কার্যকারিতা হ্রাস করে (আরও সংযোগগুলি দীর্ঘকাল সক্রিয় থাকে, সামগ্রিক ক্ষমতা এবং থ্রুপুট হ্রাস করে)।

আমি অ্যাপটি নিজেই সন্ধান করার পরামর্শ দিচ্ছি এবং ক্যাশেড সামগ্রীটি পরিবেশন করব এবং লোড ব্যালেন্সারকে তার কাজটি করতে দিন। বলার অপেক্ষা রাখে না যে ভারসাম্য লোড করার ক্ষেত্রে এনজিনেক্স নির্ভুল নয় - এটি কেবলমাত্র একটি প্রাথমিক মৌলিক রাউন্ড-রবিন অ্যালগরিদম সরবরাহ করে। পরিবর্তে আমি হ্যাপ্রোক্সির পরামর্শ দেব। আপনার যদি সামনে এসএসএল ডিক্রিপশন পরিষেবাগুলির প্রয়োজন হয় তবে আমার অভিজ্ঞতায় এনজিনেক্স হ্যাপ্রক্সির সামনে বসে ভালভাবে কাজ করে।


1

আমি মনে করি আপনার যদি ভারসাম্য বজায় রাখা, উচ্চ প্রাপ্যতা ইত্যাদির মতো জিনিসগুলির প্রয়োজন হয় তবে আপনি শেষ অবধি চলে যাবেন will

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

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

আমি মনে করি ক্যাচিং সার্ভারের পছন্দটি অ্যাপ্লিকেশন নির্দিষ্ট এবং আপনি অ্যাপটির গভীরতর বিশ্লেষণ ব্যতীত এ সম্পর্কে সাধারণ মন্তব্য করতে পারবেন না।


1

আমার পছন্দ হ্যাপ্রোক্সি। খুব ছোট এবং খুব দ্রুত বিপরীত প্রক্সি, তবে ক্যাশে প্রক্সি নয়! আমি আমার ক্যাশে সিস্টেম "স্কুইড ওয়েব প্রক্সি" ব্যবহার করি

CACHE /squid/ -> Load-balancing /Haproxy/ -> WEB I /lighttpd/
                                          -> WEB II /lighttpd/
                                          -> WEB III /lighttpd/

এই কাজটি আমার ওয়েব সিস্টেমের জন্য উপযুক্ত

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