প্রোগ্রামগুলির দ্বন্দ্ব যখন তারা উভয় একই সংস্থান ব্যবহার করার চেষ্টা করে। যখন একাধিক প্রোগ্রাম একই সময়ে কোনও সংস্থার উপর পরিচালিত করার চেষ্টা করে, তখন কনক্যুরসি সমস্যাগুলির ঝুঁকি থাকে । এক প্রক্রিয়া যখন সংস্থানটিতে পরিবর্তন সম্পাদন করে এবং অন্য প্রোগ্রামটি (যা মাঝখানে ছিল সংস্থানটির নিজস্ব সংশোধন) এটি অসচেতন থাকে এবং সুতরাং এতে সামঞ্জস্য রাখতে অক্ষম হয় Con
এখানে পাঠ্যপুস্তকের সম্মতি সংক্রান্ত কয়েকটি সমস্যা রয়েছে।
সর্বশেষে জয়ের সমস্যা
আপনি এবং কোনও সহকর্মী কোনও নথিতে সহযোগিতা করছেন যেখানে কোনও নথি ভাগ করার জন্য আপনি কোনও এফটিপি ডিরেক্টরি ব্যবহার করছেন তা কল্পনা করুন। আপনি দস্তাবেজটি ডাউনলোড করেন, সম্পাদনা করুন এবং আপনার সহকর্মীর মতো এটি আবার পোস্ট করুন।
- আপনি দস্তাবেজটি ডাউনলোড করেন এবং পরিবর্তনগুলির একটি সেট শুরু করেন যা ১ ঘন্টা সময় নেয়।
- আপনার সহকর্মী আপনার সাথে একই সময়ে ডকুমেন্টটি ডাউনলোড করেন তবে তাদের পরিবর্তনগুলি সম্পূর্ণ করতে এবং পুনরায় আপলোড করতে কেবল আধ ঘন্টা সময় নেয়।
ফলাফল: আপনি যখন আপনার দস্তাবেজ আপলোড করবেন, আপনি তাদের পরিবর্তনগুলি ওভাররাইট করুন এবং সেগুলি হারাবে।
বাসি ডেটা
একই দৃশ্যে, আপনার সহকর্মী আপনাকে না জানিয়ে আপনার প্রয়োজনীয় কিছু পরিবর্তন করে। আপনার ফাইলের অনুলিপিটিতে কোনও পরিবর্তন নেই,
ফলাফল: আপনি নিজেই কিছুটা ভিন্ন শব্দে একই পরিবর্তন লিখুন, বা আরও খারাপ, এটি কীভাবে অনুপস্থিত তা সম্পর্কে কোনও বাজে ইমেলটি ছড়িয়ে দিন।
এটি সাধারণ দৃশ্যের মতো বলে মনে হচ্ছে তবে একাধিক অ্যাক্সেস ডাটাবেসের মতো উন্নত ক্ষেত্রে যদি আপনি একই মিলিসেকেন্ডে রেকর্ড নির্বাচন করেন তবে কেউ সেগুলি আপডেট করছে, আপনি গুরুতর সমস্যাগুলি অনুভব করতে পারেন।
খারাপ গণনা
একটি বিবাহিত দম্পতির একটি শেয়ার ব্যাংক অ্যাকাউন্ট এবং এটিএম কার্ড রয়েছে। তাদের অ্যাকাউন্টে 1000 ইউএসডি রয়েছে। তাদের দৈনন্দিন জীবনে, তারা শহরের বিপরীতে রয়েছে এবং উভয়ই একই মুহুর্তে এটিএমটিতে প্রবেশ করে। তারা উভয়ই 1000 ইউএসডি প্রত্যাহার করে। এটিএমগুলি উভয়ই জানেন যে ব্যালেন্সটি 1000, তাই তারা প্রত্যাহারের অনুমতি দেয় এবং তারপরে কেন্দ্রীয় ডাটাবেসে আবার লিখুন যে নতুন ব্যালেন্স 0।
ফলাফল: ব্যাংক এখন 1000 ইউএসডি বাইরে, এমনকি এটি জানে না।
এই সমস্ত উদাহরণে একাধিক দল ছিল যা একই সময়ে বা প্রায় একই সময়ে একটি ভাগ করা সংস্থার উপর ক্রিয়া করছিল। সুতরাং "সম্মতি" বা "সিনক্রোনসিটি" পদগুলি terms
সলিউশন
এই ধরণের সমস্যাগুলি মোকাবেলা করার কয়েকটি উপায় রয়েছে। একটি হ'ল এমন সফ্টওয়্যার ব্যবহার করা যা সংস্থাগুলি অ্যাক্সেস করে একাধিক পক্ষের মধ্যে সালিশ করে। এই সালিশ প্রোগ্রামগুলির দুটি বিকল্প রয়েছে, অপারেশনের সুযোগ এবং পূর্বাভাসের উপর নির্ভর করে:
- অপারেশনগুলি বুদ্ধিমানের সাথে মার্জ করুন
- প্রথম যেটি লক্ষ্য করা যায় সম্পূর্ণ না হওয়া পর্যন্ত দুটি ক্রিয়াকলাপের মধ্যে একটিটিকে অবরুদ্ধ / লক করুন।
ব্লক / লক করাও সম্ভব, তবে উভয় প্রোগ্রামই একটি ভাগ করা পতাকা চেক করার জন্য তৈরি করা হয়েছে যা সংস্থার অবস্থা নির্দেশ করে। এটি সাধারণত কাস্টম বিকাশ প্রয়োজন।
তোমার উত্তর
আপনার নির্দিষ্ট ক্ষেত্রে, সংস্থানগুলি আপনার ডিস্কের ফাইল। সিঙ্ক্রোনটিসিটি ফাইল পড়ুন / লেখার মতো ইভেন্ট থেকে আসে যা উভয় এভি প্রোগ্রামে অন-অ্যাক্সেস স্ক্যানকে ট্রিগার করে।
প্রোগ্রামগুলি নির্দিষ্ট ক্রিয়াকলাপের জন্য খুললে ফাইলগুলি লক করে উইন্ডোজ ফাইলসিসট কনক্যুরেন্সির সমস্যাগুলি সমাধান করার জন্য একটি সালিশী হিসাবে কাজ করে।
এর অর্থ হ'ল উভয় প্রোগ্রামই ফাইলটি অ্যাক্সেস করার জন্য দৌড় দিচ্ছে, এবং যে কেউ সেখানে পৌঁছে প্রথমে লকটি পায়। নিম্ন স্তরে, উভয় প্রোগ্রামের নিজস্ব আই / ও ক্রিয়াকলাপ শুরু হওয়ার সাথে সাথে কিছু ডিস্ক থ্র্যাশ হওয়ার ফলস্বরূপ, হার্ডওয়্যারটিকে পৃথকভাবে উভয় কাজ করতে বাধ্য করা হয়, তবুও আইও নির্দেশাবলী ইন্টারলেভ করা হয়, উভয়কেই খুব কম দক্ষ করে তোলে এবং শেষ পর্যন্ত কেবল একটি তাদের মধ্যে বিজয়ী হবে। অন্য স্পিন এবং তাদের নিজস্ব লক স্থাপন করতে সক্ষম হতে অপেক্ষা করবে।