আমরা স্ট্যাকওভারফ্লোতে একটি আকর্ষণীয় সমস্যা নিয়ে কাজ করছি।
আমাদের সামান্য "শীঘ্রই করা দরকার" কাজগুলির পুরো গোছা পেয়েছি। একটি উদাহরণ হ'ল "সম্পর্কিত প্রশ্নসমূহ" তালিকাগুলি আপডেট করা। আমরা অতীতে যা করেছি তা হ'ল কিছু ব্যবহারকারীদের পৃষ্ঠার ভারে সেই কাজগুলিকে পিগি-ব্যাক করা।
এটি কখনও আদর্শ ছিল না, তবে এটি সত্যই লক্ষণীয় ছিল না। এখন যখন এসও 1,000,000 প্রশ্ন চিহ্নটি পেরিয়ে গেছে, তখন যারা দুর্ভাগা তারা তা অনুভব করতে শুরু করেছে।
প্রাকৃতিক সমাধান হ'ল এই কাজগুলিকে ব্যাকগ্রাউন্ডে ঠেলে দেওয়া। আমি বিবেচনা করছি এটি করার দুটি বিস্তৃত উপায় আছে।
1. আইআইএসে একটি কাস্টম থ্রেড-পুল / ওয়ার্ক-সারি হিসাবে
মূলত, আমরা কয়েকটি স্পিন আপ করি (নন- থ্রেডপুল , যাতে আইআইএসের সাথে হস্তক্ষেপ না করা যায়) এবং সেগুলিকে এমন কিছু সংকলন সরবরাহ করা হয় যাতে আমরা ফানকসকে সরিয়ে দিই ।
এখানে বড় প্রো সরলতা। আমাদের কোনও কিছু মার্শালিংয়ের বিষয়ে চিন্তা করার দরকার নেই, বা কোনও বাহ্যিক পরিষেবা চালু এবং প্রতিক্রিয়া রয়েছে কিনা তাও আমাদের নিশ্চিত করতে হবে না।
আমরা আমাদের প্রচলিত কোডটিতেও অ্যাক্সেস পাই।
কন, ভাল, আমাদের পটভূমি থ্রেড ব্যবহার করা উচিত নয়। আমি যে আপত্তিগুলি জানি সেগুলি সবই অনাহারে থাকা আইআইএস (যদি আপনি থ্রেডপুল ব্যবহার করেন) এবং থ্রেডগুলি এলোমেলোভাবে মারা যাচ্ছে (অ্যাপপুল পুনর্ব্যবহারের কারণে) around
এলোমেলোভাবে থ্রেড মৃত্যুকে একটি নন-ইস্যু হিসাবে পরিণত করার জন্য আমরা বিদ্যমান অবকাঠামো পেয়েছি (কোনও কার্য সনাক্তকরণের সম্ভাব্যতা মূলত পরিত্যক্ত করা হয়েছে), এবং থ্রেডের সংখ্যা সীমাবদ্ধ করা (এবং নন-থ্রেডপুল থ্রেড ব্যবহার করা )ও কঠিন নয়।
এখানে সত্যই সম্বোধন করা হয়নি বলে স্ট্যাকওভারফ্লোতে সরানো হয়েছে।
2. একটি পরিষেবা হিসাবে
হয় কিছু তৃতীয় পক্ষের সমাধান, বা একটি কাস্টম এক।
মূলত, আমরা কিছু পরিষেবার প্রসেসের সীমানা জুড়ে একটি কাজ মার্শাল করব এবং এটি সম্পর্কে ভুলে যাব। সম্ভবত আমরা কিছু কোড লিঙ্ক করছি, বা কাঁচা এসকিউএল + একটি সংযোগ স্ট্রিং মধ্যে সীমাবদ্ধ।
প্রো এটি হ'ল এটি করার "সঠিক উপায়"।
কনসটি হ'ল আমরা হয় আমরা যা করতে পারি তার মধ্যে খুব সীমিত, অথবা আমাদের কোড বেসের সাথে এই পরিষেবাটি সিঙ্ক করে রাখার জন্য আমাদের কোনও সিস্টেমের কাজ করতে হবে। আমাদের সমস্ত নজরদারি এবং ত্রুটি লগ ইন করতে কোনওরকম হুক করা দরকার যা আমরা "ইন আইআইএস" বিকল্পের সাহায্যে নিখরচায় পাই।
পরিষেবা পদ্ধতির সাথে অন্য কোনও সুবিধা বা সমস্যা আছে কি?
সংক্ষেপে, কি অনুপযুক্ত এবং দুর্গম সমস্যা রয়েছে যা # 1 অকার্যকর করতে পারে এবং যদি তাই হয় তবে কোনও ভাল তৃতীয় পক্ষের পরিষেবাগুলি আমাদের # 2 এপ্রোচ করা উচিত?