একাধিক ওয়েব সার্ভারের মধ্যে সম্পত্তি কীভাবে ভাগ করবেন?


16

আমার একাধিক লিনাক্স ওয়েব সার্ভার লোড ব্যালেন্সারের সাথে সংযুক্ত রয়েছে এবং আমি এই সার্ভারগুলির মধ্যে সম্পদগুলি (যেমন ছবি, ভিডিও এবং অন্যান্য স্টাফ) ভাগ করতে চাই। এই কাজ করতে সবচেয়ে ভালো উপায় কি?

বর্তমানে, আমি সমস্ত ওয়েব সার্ভারে একটি ফাইল সার্ভারে মাউন্ট করেছি, তবে এটি ভারী ট্র্যাফিকের নিচে নেমে যাওয়ায় আমি উদ্বিগ্ন। আমি কীভাবে এটি এড়াতে পারি?

আগাম ধন্যবাদ.


এখানেই ক্যাসান্দ্রার (নোএসকিউএল ডেটাবেস) এর মতো জিনিস কার্যকর।
অ্যালেক্সিস উইল্ক

ভারী ট্র্যাফিকের পারফরম্যান্স উন্নত করতে বার্নিশ ব্যবহার করা বিবেচনা করা হয়েছে? en.wikedia.org/wiki/Warnish_%28software%29
Thorbjørn রাভন অ্যান্ডারসেন

উত্তর:


12

আপনার প্রয়োজনের ভিত্তিতে এটি করার একাধিক উপায় রয়েছে।

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

আপনার দুটি নতুন ফাইল আসছে যদি প্রথম দুটি সেরা। তৃতীয়টি আদর্শ সমাধান হ'ল যদি আপনি ফাইলগুলি যুক্ত না করেন বা পরিবর্তন না করেন যা ব্যবহারকারীরা প্রায়শই সিঙ্ক না করা স্থির সামগ্রীগুলিতে 404 টি পাবেন ..

শেষ বিকল্পটি বিভিন্ন উপায়ে আদর্শ হতে পারে তবে এটি 4 টির মধ্যে সবচেয়ে ব্যয়বহুল হতে পারে this এটি সমর্থন করার জন্য আপনাকে আপনার ওয়েবসাইটগুলি আবারও লিখতে হবে।


আরএসআইএনসি-তে বড় সমস্যাটি হ'ল আপনি যদি নতুন ডেটা আপলোড করেন তবে আপনার 404 পাওয়ার সম্ভাবনা রয়েছে এবং আরএসসিএনসি খুব দ্রুত ঘটে না ... এছাড়াও ক্যাসান্দ্রার (পয়েন্ট 4) এর মতো একটি সিস্টেম নিখরচায়, যদিও 10 টি সার্ভার না থাকলেও ফ্রি ... সুতরাং, সম্ভবত আমার কোনও অতিরিক্ত চার্জ বলা উচিত নয় (যদিও এটি সমস্ত কাজ করার জন্য কিছু প্রোগ্রামিং দরকার।)
অ্যালেক্সিস উইল্ক

@ অ্যালেক্সিসওয়িল্ক - আপনি RSSync সম্পর্কে ঠিক বলেছেন, এবং আমি উত্তরে এর উল্লেখও করেছি। আমি এখনই উত্তরে তা স্পষ্ট করে দিয়েছি।
ফ্রেডেরিক নীলসন

পুনরায়: # 3, নতুন সম্পদ মোতায়েন করা এবং নতুন সম্পদ সিঙ্ক্রোনাইজডের মধ্যে 'ডেড টাইম' হ্রাস করা যেতে পারে যদি আপনি কোনও ফাইল-সিস্টেম নজরদারি (যেমন ফেসবুকের প্রহরী ) এবং একটি দ্রুত সিঙ্ক টুল ব্যবহার করেন (যেমন সাইকেনসি 2 )। না, বিলম্ব কখনই শূন্যে নেমে যাবে না, তবে এটি খুব ন্যূনতম এবং অন্যান্য বিকল্পের তুলনায় মোতায়েন করা আরও সহজ হতে পারে।
পেপলুয়ান

2

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


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

1
আপনার উত্তরটি সম্ভাব্য লোড হ্রাস করার বিষয়ে সঠিক, তবে একাধিক সার্ভারের মধ্যে সম্পদ ফাইলগুলি ভাগ করে নেওয়ার বিষয়ে প্রশ্নের উত্তর দেয় না।

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

1

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

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

আপনার লোড ব্যালান্সারের উপর নির্ভর করে আপনি কোনও অনুরোধের জন্য কোন সার্ভারটি ব্যবহার করবেন তা স্থির করে লোড ব্যালান্সারের সাথে একই ডোমেনে এটি করতে সক্ষম হতে পারবেন তবে আপনি যদি একটি পৃথক ডোমেন ব্যবহার করেন তবে আপনি আপনার স্ট্যাটিক সম্পদগুলি খুব সহজেই কোনও সিডিএন-তে রেখে দিতে পারেন, যদি প্রয়োজন উঠা উচিত!


1

আমি নিযুক্ত এই চ্যালেঞ্জটির একটি সমাধান হ'ল শেয়ার্ড এনএফএস ড্রাইভে ফাইলগুলির প্রধান পঠন / লিখনের অনুলিপি থাকা, তবে প্রতিটি ওয়েবসারকে কেবল পঠনযোগ্য অনুলিপি রাখতে হবে যাতে এনএফএস হোস্টের ব্যর্থতা ফাইল-অ্যাক্সেস রাখে এগুলি পুরোপুরি হারাতে চেয়ে কেবল পঠনযোগ্য মোডে।

  • ফাইলগুলি কেন্দ্রীয় হোস্টে সরাসরি থাকে, এনএফএস মাউন্টের মাধ্যমে ওয়েব-হোস্টের সাথে ভাগ করা হয়
  • rsync প্রতিটি ওয়েব হোস্টের কেবলমাত্র পঠনযোগ্য অনুলিপি তাজা রাখতে 15 মিনিট চলে।
  • check_linkএনএফএস মাউন্ট এখনও রয়েছে কিনা তা নিশ্চিত করার জন্য প্রতি মিনিটে একটি ব্যাশ স্ক্রিপ্ট চলে এবং যদি কেবলমাত্র পঠনযোগ্য অনুলিপিতে একটি সিমলিংক অদলবদল করে না।

আমি প্রথম এই সিস্টেমটি সেট আপ করার সময় থেকে এই নিবন্ধে আরও বিশদ পাওয়া যায় ।

upsides:

  • ফাইল রিডগুলি অত্যন্ত উপলব্ধ
  • ফাইল লেখার জন্য কোনও রেসের শর্ত নেই
  • সমস্ত ওয়েব হোস্টের জন্য নতুন ফাইলগুলি তাত্ক্ষণিকভাবে উপলব্ধ।

downsides:

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

0

আপনি একটি NoSQL ডাটাবেস বিবেচনা করতে চাইতে পারেন। এগুলি গুচ্ছগুলিতে কাজ করার জন্য, চূড়ান্ত ধারাবাহিকতা সরবরাহ করার জন্য ডিজাইন করা হয়েছে। তবে খেয়াল রাখবেন তারা এসিডি নয়।

এখানে একটি ভূমিকা রয়েছে যা আপনাকে আপনার উদ্দেশ্যটির জন্য কোন ধরণের নোএসকিউএল ডাটাবেস চাইবে তা সিদ্ধান্ত নিতে সহায়তা করবে।

এখানে উপলব্ধ নোএসকিউএল সম্পর্কিত সম্পদের তালিকা রয়েছে


4
এই উত্তরটি ফাইল সিঙ্ক সমস্যায় কীভাবে সহায়তা করে?
শিরোনাম

@ টাইটাস নোএসকিউএল-এ, যখন নোডের একটিতে লিখিত লেখা থাকে, এটি গুচ্ছের অন্যান্য নোডে প্রতিলিপি করা হবে। ক্যাসান্দ্রা লেখার ধারাবাহিকতা স্তরগুলি এটি পরিষ্কার করে
তুলতে

তাই যাওয়ার উপায়টি কি সমস্ত ফাইল নোএসকিউএল ডিবিতে জমা হয়?
শিরোনাম

টাইটাস আপনি এটি করতে পারেন তবে নোএসকিউএল ডাটাবেসগুলি আরও অনেক কিছু করতে পারে তারপরে ফাইলগুলি সংরক্ষণ করে, এটি আপনার প্রয়োজনের উপর নির্ভর করে।
আজজি

2
ওপি একটি নির্দিষ্ট সমস্যার সমাধান চেয়েছিল " এই সার্ভারগুলির মধ্যে লোড ব্যালান্সারের সাথে সংযুক্ত একাধিক লিনাক্স ওয়েব সার্ভারগুলি ... সম্পদগুলি ভাগ করুন (যেমন ছবি, ভিডিও এবং অন্যান্য জিনিস) এই সার্ভারগুলির মধ্যে। " আপনার উত্তরটি খুব জেনেরিক, আপনি কি পরামর্শ দিতে পারেন এবং সমস্যার সমাধানের জন্য নির্দিষ্ট সরঞ্জামগুলি (এবং তার পছন্দসই কনফিগারেশনগুলি) ব্যাখ্যা করুন?
kdbanman

0

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

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