আমি vagrantবিকাশের জন্য ভার্চুয়ালবক্স সিস্টেমগুলি পরিচালনা করতে আমাদের বিকাশকারীদের ওএসএক্স চালিতদের জন্য একটি সেটআপ পরিচালনা করি ।
inotifyলিনাক্স মেশিনের ভিতরে সমর্থন করার জন্য , আমরা ভার্চুয়ালবক্সের সাথে ডিরেক্টরিগুলি ভাগ করে নেওয়ার স্বাভাবিক পদ্ধতিটি পুনরুদ্ধার করি: পরিবর্তে, ভার্চুয়ালবক্স মেশিনটি একটি এনএফএস ভাগ উন্মোচন করে, যা ওএসএক্সে মাউন্ট করা হয়।
গিট (এবং সোর্সট্রি সম্পর্কিত সম্পর্কিত সরঞ্জামগুলি) ভাগ করা ডিরেক্টরিতে ওএসএক্স-এ চালিত হয়। এর পারফরম্যান্স অত্যন্ত দুর্বল: এটি চালাতে প্রায় 5 সেকেন্ড পর্যন্ত সময় নেয় git status। মাউন্ট করা এনএফএস ড্রাইভে একটি ছোট সংগ্রহস্থল ক্লোনিং করতে কয়েক মিনিট (লোকাল ড্রাইভে 5-10 সেকেন্ড) সময় লাগতে পারে।
স্পষ্টতই এনএসএফের পারফরম্যান্স সরাসরি স্থানীয় এসএসডি লেখার চেয়ে খারাপ হবে, তবে এনএফএস ভার্চুয়ালবক্সের সাথে একটি ভার্চুয়াল প্রাইভেট নেটওয়ার্ক ইন্টারফেসের উপর দিয়ে চলছে।
আমি কয়েকটা মানদণ্ড চালিয়েছি। প্রথম:
dd if=/dev/zero of=test bs=16 count=16384
প্রতিটি ফলাফল 100 নমুনার উপর ভিত্তি করে।
# local drive
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.990 1.000 1.020 1.021 1.030 1.130
# on the shared NFS drive
Min. 1st Qu. Median Mean 3rd Qu. Max.
6.000 6.278 6.390 6.482 6.570 7.630
# inside the VirtualBox instance
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.3600 0.4800 0.5150 0.5552 0.5400 1.4500
দ্বিতীয় মানদণ্ড:
ioping -c 500
local avg: 6 microseconds
local IOPS: 65.5 k
NFS Latency avg: 703 microseconds
NFS OPS: 1.4 k
স্পষ্টত কিছু বিলম্বিতা অনিবার্য, তবে এটি যথেষ্ট খারাপ যে এটি কিছু সাধারণ কাজকে বেশ বেদনাদায়ক করে তোলে।
ভলিউমের মালিক ডিফল্ট সেটিংস সহ উবুন্টু 12.10 (কোয়ান্টাল) চালাচ্ছেন। ভলিউম মাউন্ট করা সিস্টেমটি ওএসএক্স ম্যাভেরিক্স চলছে।
এই মুহুর্তে মূল এনএফএসডি সংযোগটি ইউডিপিতে চলছে যা ভার্চুয়াল সংযোগের চেয়ে আদর্শ বলে মনে হচ্ছে। আমি নিশ্চিত নই statsdএবং lockdটিসিপি এবং ইউডিপিতে চলছে কিনা ।
আমি asyncপতাকাটি দিয়ে, এবং rwsizeউত্সাহিত সহ আরোহণের চেষ্টা করেছি এবং এতে কিছুটা পার্থক্য হয়নি।
এই পরিবেশে এনএফএসের কর্মক্ষমতা গুরুত্বের সাথে উন্নতি করার জন্য কোন সুযোগ রয়েছে?
git statusগেস্ট মেশিন থেকে চালাতে সময় লাগে প্রায় 5 সেকেন্ড। হোস্ট মেশিনে যা ওএসএক্স, এটি দ্রুত শান্ত। আমার সেটআপটি সর্বশেষতম ভ্যাগ্র্যান্ট, ভিবি, ভাগ করা এনএফএস ডিরেক্টরি। আপনি ইন্টারফেসটি কীভাবে পরিবর্তন করেছেন, আমি এটি করার চেষ্টা করেছি তবে এটি সন্ধান করতে পারিনি। এছাড়াও, কিছু আপডেটের পরে এটি আরও কৃপণ হয়ে ওঠে। শুরুতে আমার এই সমস্যাটি ছিল না
Am79C973পরিবর্তেvirtio। এখানে পাঠটি সিস্টেমগুলি কী করছে সে সম্পর্কে আরও ঘনিষ্ঠভাবে নজর দেওয়া উচিত: একটি নির্দিষ্ট পয়েন্টে, বাধাটি মনে হয় ভার্চুয়াল নেটওয়ার্কের কর্মক্ষমতা।