কেন আমাদের এমনকি এটি প্রয়োজন?
মাইক্রোসার্ভেসিসের প্রচুর উপকার - এবং আরও বড় কথা, এসওএ the হ'ল অভ্যন্তরীণগুলির উচ্চ স্তরের বিমূর্ততা only এটি কেবলমাত্র বাস্তবায়নই নয়, প্রযুক্তিও ব্যবহৃত হচ্ছে। উদাহরণস্বরূপ, যদি পাঁচটি দল দ্বারা পাঁচটি মাইক্রোসার্ফিস আকারে কোনও সিস্টেম বিকশিত হয়, তবে একটি দল অন্য দলগুলির মতামত না চেয়েও সম্পূর্ণ ভিন্ন প্রযুক্তিগত স্ট্যাকের (উদাহরণস্বরূপ মাইক্রোসফ্ট স্ট্যাক থেকে এলএএমপিতে) যাওয়ার সিদ্ধান্ত নিতে পারে।
আমাজন এডাব্লুএস বা টোভিলিও দেখুন। আপনি কি জানেন যে তাদের পরিষেবাগুলি জাভা বা রুবিতে প্রয়োগ করা হয়? তারা কী ওরাকল বা পোস্টগ্র্রেএসকিউএল বা ক্যাসান্দ্রা বা মঙ্গোডিবি ব্যবহার করে? তারা কয়টি মেশিন ব্যবহার করে? এমনকি আপনি কি সে সম্পর্কে যত্নবান হন; অন্য কথায়, এই প্রযুক্তিগত পছন্দগুলি আপনি সেই পরিষেবাগুলি কীভাবে ব্যবহার করছেন তার উপর প্রভাব ফেলছে? ... এবং আরও বড় কথা, তারা যদি অন্য একটি ডাটাবেসে চলে যায়, তবে কি আপনাকে সেই অনুযায়ী আপনার ক্লায়েন্টের অ্যাপ্লিকেশনটি পরিবর্তন করতে হবে?
এখন, যদি দুটি পরিষেবা একই ডাটাবেস ব্যবহার করে তবে কী হবে? উত্থাপিত হতে পারে এমন সমস্যার একটি ছোট অংশ এখানে দেওয়া হল:
সার্ভিস 1 টি বিকাশকারী টিম এসকিউএল সার্ভার 2012 থেকে এসকিউএল সার্ভার 2016 এ যেতে চাইছে However
পরিষেবা 1 বিশাল সাফল্য। দুটি মেশিনে ডেটাবেস হোস্ট করা (মাস্টার এবং ফেইলওভার) আর বিকল্প নয়। তবে একাধিক মেশিনে ক্লাস্টার স্কেলিংয়ের জন্য শারডিংয়ের মতো কৌশল প্রয়োজন। এদিকে, দল 2 বর্তমান স্কেল নিয়ে খুশি এবং অন্য কিছুতে যাওয়ার কোনও কারণ দেখেনি।
পরিষেবা 1 এর ডিফল্ট এনকোডিং হিসাবে ইউটিএফ -8 এ চলে যাওয়া উচিত। পরিষেবা 2 তবে কোড পৃষ্ঠা 1252 উইন্ডোজ ল্যাটিন 1 ব্যবহার করে খুশি।
পরিষেবা 1 নির্দিষ্ট নাম সহ কোনও ব্যবহারকারীকে যুক্ত করার সিদ্ধান্ত নিয়েছে। তবে এই ব্যবহারকারী ইতিমধ্যে বিদ্যমান, কয়েক মাস আগে দ্বিতীয় দলটি তৈরি করেছিল।
পরিষেবা 1 এর বিভিন্ন বৈশিষ্ট্য প্রচুর প্রয়োজন। পরিষেবা 2 একটি অত্যন্ত সমালোচক উপাদান এবং আক্রমণের ঝুঁকি হ্রাস করার জন্য ডাটাবেস বৈশিষ্ট্যগুলিকে তাদের সর্বনিম্ন রাখতে হবে।
পরিষেবা 1 এর জন্য 15 টিবি ডিস্কের স্থান প্রয়োজন; গতি গুরুত্বপূর্ণ নয়, তাই সাধারণ হার্ড ডিস্কগুলি পুরোপুরি ঠিক। পরিষেবা 2 সর্বাধিক 50 গিগাবাইটের প্রয়োজন, তবে এটি যত তাড়াতাড়ি অ্যাক্সেস করা দরকার, যার অর্থ ডেটা এসএসডিতে সঞ্চয় করা উচিত।
...
প্রতিটি ছোট্ট পছন্দ প্রত্যেককেই প্রভাবিত করে। প্রতিটি টিমের লোকদের দ্বারা প্রতিটি সিদ্ধান্তকে সহযোগিতামূলকভাবে নেওয়া দরকার। সমঝোতা করতে হবে। এসওএর প্রসঙ্গে আপনি যা কিছু করতে চান তা সম্পূর্ণ স্বাধীনতার সাথে তুলনা করুন।
এটি খুব [...] অব্যবহারযোগ্য।
তাহলে আপনি এটি ভুল করছেন। আমি মনে করি আপনি ম্যানুয়ালি মোতায়েন করছেন ।
জিনিসগুলি এইভাবে করা উচিত নয়। আপনার ভার্চুয়াল মেশিনগুলি (বা ডকার পাত্রে) যা ডিটাবেস চালায় তা স্বয়ংক্রিয় করতে হবে। একবার আপনি সেগুলি স্বয়ংক্রিয় হয়ে গেলে, দুটি সার্ভার বা বিশ সার্ভার বা দুই হাজার সার্ভার স্থাপন করা খুব আলাদা নয়।
বিচ্ছিন্ন ডাটাবেসগুলি সম্পর্কে যাদু বিষয়টি এটি অত্যন্ত পরিচালনাযোগ্য । আপনি কয়েক ডজন দল দ্বারা ব্যবহৃত একটি বিশাল ডাটাবেস পরিচালনার চেষ্টা করেছেন? এটা দুঃস্বপ্ন। প্রতিটি দলে নির্দিষ্ট অনুরোধ থাকে এবং আপনি কোনও কিছু স্পর্শ করার সাথে সাথে এটি কাউকে প্রভাবিত করে। একটি অ্যাপ্লিকেশনটির সাথে যুক্ত একটি ডাটাবেস তৈরি করার সাথে স্কোপটি খুব সংকীর্ণ হয়ে যায়, যার অর্থ চিন্তা করার মতো অনেক কম জিনিস রয়েছে।
যদি একটি বিশাল ডাটাবেসের জন্য বিশেষ সিস্টেম প্রশাসকদের প্রয়োজন হয়, কেবলমাত্র একটি দল দ্বারা ব্যবহৃত ডেটাবেসগুলি মূলত এই টিম দ্বারা পরিচালিত হতে পারে (ডিওঅপস সে সম্পর্কে এটিও রয়েছে ), সিস্টেম প্রশাসকদের সময় মুক্ত করে।
এটা খুব ব্যয়বহুল
ব্যয় নির্ধারণ করুন।
লাইসেন্সিং ব্যয় ডাটাবেসের উপর নির্ভর করে। ক্লাউড কম্পিউটিংয়ের যুগে, আমি দৃ sure়ভাবে নিশ্চিত যে সমস্ত বড় প্লেয়ার প্রসঙ্গটি উপযুক্ত করার জন্য তাদের লাইসেন্সগুলি নতুনভাবে ডিজাইন করেছিলেন যেখানে একটি বিশাল ডাটাবেসের পরিবর্তে, প্রচুর ছোট্ট রয়েছে। যদি তা না হয় তবে আপনি অন্য একটি ডাটাবেসে যাওয়ার বিষয়ে বিবেচনা করতে পারেন। উপায় দ্বারা অনেকগুলি ওপেন সোর্স রয়েছে ones
আপনি যদি প্রসেসিং পাওয়ার সম্পর্কে কথা বলছেন তবে ভার্চুয়াল মেশিন এবং পাত্রে উভয়ই সিপিইউ-বান্ধব, এবং আমি খুব একটা স্বচ্ছন্দ হব না যে একটি বিশাল ডাটাবেস একই কাজ করে এমন অনেক ছোট লোকের চেয়ে কম সিপিইউ গ্রহণ করবে।
যদি আপনার সমস্যাটি মেমরি হয় তবে ভার্চুয়াল মেশিনগুলি আপনার পক্ষে ভাল পছন্দ নয়। পাত্রে হয়। প্রয়োজনের চেয়ে বেশি র্যাম ব্যবহার করবে না জেনে আপনি যতগুলি চান তার পরিধি রাখতে সক্ষম হবেন। বৃহত এককটির তুলনায় মোট মেমরির খরচ প্রচুর পরিমাণে ছোট ডাটাবেসের জন্য বেশি হবে, তবে আমি মনে করি যে পার্থক্যটি খুব বেশি গুরুত্বপূর্ণ হবে না। YMMV।