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