একই মেশিনে ডাটাবেস এবং ওয়েব সার্ভার রাখার পরামর্শ দেওয়া হচ্ছে না কেন?


126

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

পারফরম্যান্স কোনও সমস্যা না হলে কেন এত বড় বিষয় হবে?

উত্তর:


158
  1. নিরাপত্তা। আপনার ওয়েব সার্ভার একটি ডিএমজেডে থাকে, পাবলিক ইন্টারনেটের অ্যাক্সেসযোগ্য এবং বেনামে ব্যবহারকারীদের কাছ থেকে অবিশ্বস্ত ইনপুট নেয় taking যদি আপনার ওয়েব সার্ভার আপস হয়ে যায় এবং আপনি আপনার ডিবিতে সংযোগ স্থাপনের ক্ষেত্রে বিশেষাধিকারের নিয়মগুলি মেনে চলেছেন, সর্বাধিক এক্সপোজারটি আপনার অ্যাপ্লিকেশনটি ডেটাবেস এপিআইয়ের মাধ্যমে কী করতে পারে। যদি আপনার মধ্যে ব্যবসায়িক স্তর থাকে তবে আপনার আক্রমণকারী এবং আপনার ডেটাগুলির মধ্যে আপনার আরও একটি পদক্ষেপ রয়েছে। অন্যদিকে, যদি আপনার ডাটাবেস একই সার্ভারে থাকে তবে আক্রমণকারীটির এখন আপনার ডেটা এবং সার্ভারে রুট অ্যাক্সেস রয়েছে।
  2. স্কেলেবিলিটি। আপনার ওয়েব সার্ভারকে রাজ্যহীন রাখার ফলে আপনি আপনার ওয়েব সার্ভারগুলি আনুভূমিকভাবে অনেক অনায়াসে স্কেল করতে পারবেন। অনুভূমিকভাবে একটি ডাটাবেস সার্ভার স্কেল করা খুব কঠিন।
  3. কর্মক্ষমতা. 2 বাক্স = 2 বার সিপিইউ, 2 বার র‌্যাম এবং ডিস্ক অ্যাক্সেসের জন্য 2 বার স্পিনডেল।

যা যা বলা হচ্ছে, আমি অবশ্যই যুক্তিসঙ্গত মামলাগুলি দেখতে পাচ্ছি যেগুলির মধ্যে points দফার কোনওটিই সত্যিই গুরুত্বপূর্ণ নয়।


27
তবে 2 টি মেশিনের সাহায্যে আপনার হার্ডওয়ার ব্যর্থতার দ্বিগুণ সম্ভাবনা রয়েছে;)
TWith2Sugars

4
@ টুইটসুগার্স - এর বিপরীতে?
কেভ

3
সূত্র। পয়েন্ট 1. যদি ওয়েব টিয়ারটির মালিকানা থাকে, তবে অ্যাপ / ডাটাবেস এপিআই ইন্টারফেসের চেয়ে আরও কী আপনি চান বা প্রয়োজন? অবশ্যই এটি যে সময়ে যে খেলা শেষ? ডিএমজেড অবকাঠামো যেমন কোনও এডি বা মাইক্রোসফ্ট পরিষেবা খেলায় সহায়তা করার জন্য প্রয়োজনীয় পরিষেবার ক্ষেত্রে পদক্ষেপগুলি খুব আকর্ষণীয় হয়ে ওঠে?
নয়েলি ডুনে

4
@ নয়েলি - আপনার ওয়েব স্তরের কোনও ফাইলের ডাটাবেস ব্যাকআপ করতে এবং এক্সপি_সিএমডিএসহেল ব্যবহার করে সেই ফাইলটি ftp.hackers.com এ ftp করতে অ্যাক্সেস থাকবে না। অথবা ডাটাবেস ড্রপ। অথবা কনফিগার মানগুলি পরিবর্তন করুন। ইত্যাদি
মার্ক ব্র্যাকেট

6
@ কিরগি - যেহেতু দুটি মেশিন সমান্তরাল এবং প্রতিটি ব্যর্থতার একক পয়েন্ট, সামগ্রিক নির্ভরযোগ্যতা কম; এটি প্রযুক্তিগতভাবে দ্বিগুণ নয় (এটি আসলে 1 - (r1 * আর 2)) তবে বড় নির্ভরযোগ্যতা এবং ছোট নোডের জন্য যথেষ্ট পরিমাণে বন্ধ .... 0.01% ক্ষেত্রে, এটি 0.0199% হবে% তবে 100 নোডের জন্য এটি দ্বিগুণ বিবৃতি দ্বারা সূচিত 100% এর পরিবর্তে 36.6% হবে।
মার্ক ব্র্যাকেট

45

এটা তোলে না সত্যিই ব্যাপার (আপনি বেশ সুখে একই মেশিনে ওয়েব / ডাটাবেসের আপনার সাইট চালাতে পারেন), এটা ঠিক স্কেলিং মধ্যে সবচেয়ে সহজ পদ্ধিতি হল পদক্ষেপ ..

এটি স্ট্যাকওভারফ্লো ঠিক কী করেছিল - আইআইএস / এসকিউএল সার্ভার চালিত একক মেশিন দিয়ে শুরু করে, তারপরে যখন এটি ভারী ভারী হওয়া শুরু করে, তখন একটি দ্বিতীয় সার্ভার কেনা হয়েছিল এবং এসকিউএল সার্ভারটি এতে স্থানান্তরিত হয়।

যদি পারফরম্যান্স কোনও সমস্যা না হয় তবে দুটি সার্ভার ক্রয় / বজায় রাখার অর্থ অপচয় করবেন না।


3
আমি সম্মত, লোড কম থাকাকালীন এটি করা সম্ভব ... লোড বাড়ার সাথে সাথে তাদের 2 বা ততোধিক মেশিনে আলাদা করা সহজ।
ইজে ব্রেণন

4
আমি এসেছি এবং একই বিষয়ে মন্তব্য করতে যাচ্ছি। আপনাকে ডিবি সার্ভার পরিবর্তন করা আপনার সংযোগের স্ট্রিং পরিবর্তন করার মতোই সহজ (বেশিরভাগ ক্ষেত্রে)।
সিটিজেনবেন

উহু, আমি এটি পছন্দ করি। সমাধানের পরামর্শ দেওয়ার আগে কেউ প্রসঙ্গে ভাবছেন!
demisx

22

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


4
... একযোগে ব্যবহার বৃদ্ধি না হওয়া অবধি, এবং বাফার এবং ক্যাশেগুলির কার্যকর ব্যবহার করতে ডিবি সার্ভারের আরও মেমরি দরকার। ওয়েব / অ্যাপ এবং ডিবি সার্ভারগুলি একবারে কোনও বাক্স, পেজিং এবং ডিস্ক আই / ও বৃদ্ধি এবং পারফরম্যান্স ট্যাঙ্কে ভাগ করে নিতে পারে তার চেয়ে বেশি মেমরির প্রয়োজন হয়।
কেরমেট

@ ম্যাটকে - তবে যদি আপনার প্রচুর পরিমাণে স্মৃতি থাকে? আমাদের একটি অ্যাপ্লিকেশন রয়েছে যেখানে প্রতিটি ক্লায়েন্টের নিজস্ব ডাটাবেস থাকে তাই ডাটাবেস এবং ওয়েব সার্ভার উভয়ই খুব সহজেই অনুভূমিকভাবে স্কেল করতে পারে। আমাদের ব্যবহারের ডিস্কের চেয়ে বেশি মেমরি আছে (GB৪ জিবি বনাম ~ 40 গিগাবাইট), পারফরম্যান্সের জন্য এগুলি সমস্ত একই মেশিনে রেখে দেওয়া কি ভাল নয়?
বীপ বীপ

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

15

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


12
আপনার যদি ছোট (ইশ) ডাটাবেস থাকে তবে টন মেমরি থাকে? প্রতিটি ডাটাবেস কল, বিশেষত যদি অনেকগুলি থাকে, তাহলে নেটওয়ার্কের বাইরে যাওয়ার ব্যয়গুলি কি সুবিধাগুলি ছাড়িয়ে যাবে?
বীপ বীপ

1
@ টম রিটার যদিও পারফরম্যান্স একটি উদ্বেগজনক বিষয় (এই উত্তরটি সম্পর্কে, এবং মার্ক ব্র্যাকেটের উত্তরে পয়েন্ট # 3) আমি জানি যে কিছু লোক (আমার অন্তর্ভুক্ত) সম্ভবত আরও কিছু সিপিইউ / র‌্যাম / এ আলাদা ডিবি সার্ভার না পেয়ে সঞ্চয় করা অর্থের অর্থ রাখবে I প্রভৃতি একমাত্র এবং কেবলমাত্র সার্ভারে এটি প্রতিস্থাপন করেছে। সুতরাং এটি বিবেচনায় নেওয়া উচিত। বিচ্ছিন্ন মেমরি হিসাবে, আইআইএস এবং এসকিউএল সংস্থানসমূহের প্রতিযোগিতার জন্য অ্যাকাউন্টে কনফিগার করা যেতে পারে। ব্যক্তিগতভাবে, আমার জন্য "কিকার" ছিল মার্কের # 1 পয়েন্ট ... সুরক্ষা। আমি আপোষযুক্ত ওয়েবসার্ভারের আলাদা ডিবি সার্ভারে সীমাবদ্ধ অ্যাক্সেসের চিন্তাভাবনা পছন্দ করি ।
ডিলান - INNO সফ্টওয়্যার

@ টম, আপনি সর্বদা মেমরির স্থানটিকে দুটি পৃথক ইউনিটে বিভক্ত করতে পারেন। সার্ভারের জন্য অর্ধেক এবং ডাটাবেসের জন্য একটি অর্ধেক।
পেসারিয়ার

15

টম এই সম্পর্কে সঠিক। কিছু অন্যান্য কারণ হ'ল এটি কার্যকর ব্যয়বহুল নয় এবং অতিরিক্ত সুরক্ষা ঝুঁকি রয়েছে।

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

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

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


2
আপনি যদি এসপি ব্যতীত অন্য কিছু চালাচ্ছেন তবে আপনার ওয়েবসার্ভারের সম্ভবত আপনার ডাটাবেজে ডেটাতে সম্পূর্ণ অ্যাক্সেস রয়েছে
জর্জ মাউয়ার

কেন এটি ব্যয় সাশ্রয়ী নয়? নির্ধারন করুন.
রবার্ট জ্যাপিসেন

রবার্ট আমি এটিতে প্রসারিত করেছি এবং স্কেলাবিলিটি এবং রক্ষণাবেক্ষণ সম্পর্কে কিছু মন্তব্য যুক্ত করেছি।
দানা দ্য সনে

9

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

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


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

অবশ্যই আপনি ডাটাবেসটি ব্যাকআপ করেন, এটি অন্তর্নিহিত, যেখানে আমার পোস্টে আমি অন্যথায় প্রস্তাব দিই।
কেভ

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

@ ইয়ারউইকার - ডিবি সার্ভারে থাকা অন্যান্য সমস্ত ডাটাবেসের কী হবে? আপনি যা হারিয়েছেন তা হ'ল একটি ডাটাবেস।
কেভ

8
ড্যানিয়েল ছাড়াও, আপনি একটি বিশাল পয়েন্ট মিস করছেন। এটি কোনও ডাটাবেস ব্যাকআপ সম্পর্কে নয়, এটি আপোষযুক্ত ডেটা সম্পর্কে। আপনার গ্রাহকরা কি ঠিক আছেন যে "একজন হ্যাকার আপনার সমস্ত গ্রাহক এবং বিক্রয় ডেটা চুরি করেছে, তবে চিন্তা করবেন না, আমি একটি ব্যাকআপ পেয়েছি।" :)
ডিলান - INNO সফ্টওয়্যার

9

একটি ফ্যাক্টর যা এখনও উল্লেখ করা হয়নি তা হ'ল লোড ব্যালেন্সিং। আপনি যদি ওয়েব সার্ভার এবং ডাটাবেসটিকে পৃথক মেশিন হিসাবে ভাবতে শুরু করেন তবে আপনি কম নেটওয়ার্ক রাউন্ড ট্রিপের জন্য অনুকূলিত হন এবং প্রয়োজন হিসাবে বৃদ্ধি পাওয়ায় দ্বিতীয় ওয়েব সার্ভার বা দ্বিতীয় ডাটাবেস ইঞ্জিন যুক্ত করা সহজ হয়।


6

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


6

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

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


5

আমি ড্যানিয়েল আরউইকারের সাথে একমত - সুরক্ষা প্রশ্নটি বেশ ত্রুটিযুক্ত।

যদি আপনার ওয়েবসার্ভারের সাথে একটি একক বাক্স সেটআপ থাকে এবং কেবলমাত্র এটির ওয়েবসভারের জন্য কেবলমাত্র ডাটাবেস, যদি সেই ওয়েবসারভার আপস হয় তবে আপনি সেই নির্দিষ্ট অ্যাপ্লিকেশনটির জন্য কেবল ওয়েবসভার এবং কেবলমাত্র ডাটাবেসই হারাবেন।

এটি হ'ল ঠিক যেমনটি আপনি যদি একটি 2-সার্ভার সেটআপে ওয়েবসভারটি হারিয়ে ফেলেন তবে কি হয়। আপনি সেই নির্দিষ্ট অ্যাপ্লিকেশনটির জন্য ওয়েব সার্ভার এবং কেবল ডাটাবেস হারাবেন।

আপনার যেখানে 2-সার্ভার সেটআপ রয়েছে সেখানে 'বাকী ডিবি সার্ভারের অখণ্ডতা রক্ষা করা হবে' এই যুক্তিটি অপ্রাসঙ্গিক, কারণ প্রথম দৃশ্যে, প্রতিটি অন্যান্য অ্যাপ্লিকেশন সম্পর্কিত প্রতিটি ডাটাবেস সার্ভারও অকার্যকর থাকে remain - সত্তা, যেমন তারা অন্যত্র হোস্ট করা হয়েছে।

তেমনি, কেভ দ্বারা উত্থাপিত প্রশ্নে 'ডিবি সার্ভারে থাকা অন্যান্য সমস্ত ডাটাবেসের কী হবে? আপনি যা হারিয়েছেন তা সবই একটি ডাটাবেস ''

  • আপনি যদি একটি সার্ভারে কোনও অ্যাপ্লিকেশন এবং ডাটাবেস হোস্ট করে থাকেন তবে আপনি কেবল সেই সার্ভারে ডাটাবেস হোস্ট করবেন যা সেই অ্যাপ্লিকেশনটির সাথে সম্পর্কিত। অতএব, একাধিক সার্ভার সেটআপের তুলনায় আপনি কোনও একক সার্ভার সেটআপে কোনও অতিরিক্ত ডাটাবেস হারাবেন না।

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


4

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


2

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

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

অন্যরা কী বলতে পারে তাতে আগ্রহী।


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

2

আমি সেই পডকাস্টটি শুনেছিলাম, এবং এটি মজাদার ছিল, তবে সুরক্ষা যুক্তি আমার কাছে কোনও ধারণা রাখেনি। আপনি যদি সার্ভার A এর সাথে আপস করেন এবং সেই সার্ভারটি সার্ভার বিতে ডেটা অ্যাক্সেস করতে পারে তবে সার্ভার বিতে থাকা ডেটাতে আপনার তাত্ক্ষণিকভাবে অ্যাক্সেস থাকতে পারে you


সত্য না. একটি সুরক্ষিত সেটআপে, বক্স এ-তে বক্স এ-এর যে কোনও ডেটা বা সুবিধাগুলি রয়েছে সেটিতে আপনার অ্যাক্সেস রয়েছে, এর অর্থ আপনার কাছে বক্স এ-এর অ্যাপ্লিকেশনটির সর্বোচ্চ স্তরের ডিবি অ্যাক্সেস রয়েছে। তবে আপনার কাছে ডিবিতে কোনও গোপনীয়তা নেই বা বাক্স বিয়ের ওএসের মূল নেই
মার্ক ব্র্যাককেট

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

একটি দুটি বাক্স কনফিগারেশনে, আপনি যদি ন্যূনতম সুবিধার নীতিটি প্রয়োগ করেন, যদি বক্স এ (ওয়েব) আপোস করা হয়, তবে সবচেয়ে খারাপটি হওয়া উচিত ছিল যে আপনি বাক্স বিতে ডিবি হারিয়েছেন এবং আরও কিছু না।
কেভ

1
এবং একটি বাক্সের কনফিগারেশনে, যদি সেই বাক্সটি আপোস করা হয়, আপনি এটি হারিয়ে ফেলেছেন একটি বাক্স, যাতে এতে ডিবি রয়েছে। পার্থক্য কি?
ড্যানিয়েল আর্উইকার

2
পার্থক্যটি হ'ল দুটি বাক্স কনফিগারেশনে, ওয়েব সার্ভারের সাথে যদি আপস করা হয় তবে আপনি যা হারিয়েছেন তা হ'ল ওয়েব সার্ভার এবং সবচেয়ে খারাপভাবে ডিবি। বাকি ডিবি সার্ভারের সততা বজায় থাকে।
কেভ

2

ডেটাবেস লাইসেন্সগুলি চিপ হয় না এবং প্রায়শই সিপিইউ অনুযায়ী চার্জ করা হয়, সুতরাং আপনার ওয়েব-সার্ভারগুলি আলাদা করে আপনি আপনার ডাটাবেস লাইসেন্সগুলির ব্যয় হ্রাস করতে পারবেন।

উদাহরণস্বরূপ, যদি আপনার 1 টি সার্ভার থাকে যা 8 টি সিপিইউযুক্ত ওয়েব এবং ডাটাবেস উভয়ই করে থাকে আপনাকে একটি 8 সিপিইউ লাইসেন্সের জন্য অর্থ প্রদান করতে হবে। তবে আপনার যদি 4 টি সিপিইউ সহ দুটি সার্ভার থাকে এবং একটি সার্ভারে ডাটাবেস চালায় তবে আপনাকে কেবল 4 সিপিইউ লাইসেন্স দিতে হবে


এটি কীভাবে সঞ্চয় হিসাবে সমান তা ব্যাখ্যা করুন explain
জন স্যান্ডার্স

1
জন - তিনি বলছেন যে 2 মেশিনের সমতুল্য পারফরম্যান্স পেতে আপনার # টি কোরের দ্বিগুণ করতে হবে যা এসকিউএল সার্ভারের লাইসেন্স ব্যয় দ্বিগুণ করবে। এসকিউএল সার্ভারের জন্য অতিরিক্ত 10 ডলার কেন দেবেন যদি আপনি পান সমস্ত কিছুই 2 মেশিন ব্যবহারের মতো একই কর্মক্ষমতা হয়।
বীপ বীপ

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

1

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


-1

ওয়েব সার্ভারে একটি ডেটাবেস সার্ভার চালিয়ে সত্যিকারের পারফরম্যান্স অর্জনের যুক্তিটি ত্রুটিযুক্ত যুক্তি।

যেহেতু ডেটাবেস সার্ভারগুলি কোয়েরি স্ট্রিংগুলি এবং ফলাফলের ফলাফলগুলি গ্রহণ করে, তাই ডেটা সার্ভার থেকে ওয়েব সার্ভারে প্রবাহিত ডেটা তুলনামূলকভাবে কম, তবে ক্যোয়ারীটি প্রসেস করতে এবং ফলাফল সেট তৈরি করতে প্রয়োজনীয় হর্স শক্তি অপেক্ষাকৃত বড়। ডেটা স্থানান্তর সময়ের কাছাকাছি পারফরম্যান্স অনুকূলকরণ তাই ভুল জিনিসটি কাছাকাছি অনুকূলকরণ করা হয়।

সুরক্ষা সম্পর্কিত, ওয়েব সার্ভারের চেয়ে আলাদা বাক্সে ডেটা সার্ভার থাকার সুবিধা রয়েছে। এই ধরণের সেটআপ করা সমস্ত সুরক্ষা নয় এবং এটি সঠিক দিকের একটি পদক্ষেপ।

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

আপনি যদি ছোট শুরু করেন এবং কেবল একটি বাক্স রাখেন তবে ভাল উপায় হ'ল ভার্চুয়াল মেশিনগুলি ব্যবহার করা। এক হোস্টে বিভিন্ন ভিএম-তে ওয়েব সার্ভার এবং ডেটা সার্ভার চালানো আপনাকে একটি বড় বক্স মূল্যের দামে পৃথক বাক্সগুলির সমস্ত লাভ দেয়।


1
মূল প্রশ্নটি অ্যাপ্লিকেশন সার্ভার সম্পর্কে জিজ্ঞাসা করা হয়েছে, অগত্যা ওয়েব সার্ভারগুলির মুখোমুখি ইন্টারনেট নয়।
জোওগো ব্রাগানিয়া

-2

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


আমি এটিকে ভোট দেইনি, তবে "যদিও আপনার ডাটাবেসে আরও বড় মেমরির জায়গাগুলির প্রয়োজন হতে পারে এবং তাই ইউনিক্স" - আপনি যদি 64 বিট উইন্ডো এবং 64 বিট এসকিউএল চালিয়ে যান তবে প্রচুর পরিমাণে মেমরি খেলতে পারে।
কেভ

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

-6

ঠিক আছে! এখানে জিনিসটি হ'ল আপনার ডিবি সার্ভারটি অন্য কোনও মেশিনে এবং ওয়েব অ্যাপ্লিকেশনটিতে আপনার অ্যাপ্লিকেশন ইনস্টল করা আরও সুরক্ষিত। তারপরে আপনি আপনার অ্যাপ্লিকেশনটি ডিবিতে একটি ওয়েব লিঙ্কের সাথে সংযুক্ত করুন। ধন্যবাদ।


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