আমরা celld তৈরি করছি, ক্লাউডফ্লার Workers এবং Durable Objects অ্যাপ্লিকেশন জন্য রানটাইম, যা আপনার নিজস্ব মেশিনে রান করে। এটি S3-সঙ্গত oggetto স্টোরেজকে একমাত্র বাহ্যিক সেবা নির্ভরতা হিসেবে चला सकता है।
celld একটি বিতরণ系统। বিশ্বস্ত বিতরণ系统 তৈরি করা কঠিন, আংশিক কারণ আমরা অনুবদনমূলকভাবে ধারণা পর rely করি যা বাস্তবায়নে না টিকTok, তবু আমরা কেনা আছে। Peter Deutschের ডিস্ট্রিবিউটেড গণনা八大谬误 তে八个 এই ধারণাগুলোর মধ্যে "নেটওয়ার্ক reliable" এবং "লেটেন্সি শূন্য" অন্তর্ভুক্ত রয়েছে।
একটি বাগ একটি নির্দিষ্ট দেয়াল message sequence, ফailed লেখা এবং নোড রিস্টার্টের উপর নির্ভর করতে পারে। এই ইভেন্টs পরবর্তী পরীক্ষার রানে বিভিন্ন ক্রমে ঘটতে পারে, তাই বাগটি পুনরুদ্ধার করা কঠিন হতে পারে। আমাদের কাছে ফেলে ফেলে রান পুনরুদ্ধার করার ক্ষমতা হতে হবে যাতে আমরা কারণ পরীক্ষা করতে পারি এবং যাচাই করতে পারি কি একটি প্রস্তাবিত সলিউশন skutefully সমস্যা সমাধান করে। তাই আমরা নিশ্চিত সিমুলেশন টেস্টিং (DST) ব্যবহার করি।
আমাদের সিমুলেটর এখন উন্নয়নে আছে এবং celld-এর পাবলিক ভান্ডারয়ে অন্তর্ভুক্ত নেই, কিন্তু এটি আগের অজানা বগুAlready খুঁজে পেছে। এই লেখায়, আমরা celld-তে DST কীভাবে কাজ করে এবং এটি কীভাবে আমাদের celld-তে একটি বগু খুঁজে পেতে, পুনরুদ্ধার করতে এবং তা সুলভ করতে সাহায্য করেছে, এর মাধ্যমে চলব। DST celld-এরproduction code-কে একটি সিমুলেটর-নিয়ন্ত্রিত পরিবেশে চালায়। celld-তে একটি cell অ্যাপ্লিকেশন কোড চালায় এবং তার নিজস্ব SQLite ডেটাবেস আছে। cell-এর কাজ করলে celld ইভেন্ট যেমন ইনকামিং অনুরোধ, সম্পন্ন স্টোরেজ অপারেশন, এবং টাইমার ট্রিগার পরিচালনা করে। পরবর্তী ইভেন্ট নির্বাচনকারী কড, এটি হ্যান্ডলিং কোড থেকে আলাদা। এটি সিমুলেটরকে production-এ একই ইভেন্ট হ্যান্ডলিং কোড চালায় terwijl সিমুলেটর ইভেন্টের ক্রম নিয়ন্ত্রণ করতে দেয়।
উৎস: Hacker News · সারাংশ: HeadlinesBriefing