আমি এই প্রশ্নটি এবং এই প্রশ্নটির দিকে নজর রেখেছি , তবে তারা যে লক্ষণগুলি দেখছি সেগুলি তারা সম্বোধন করেছে বলে মনে হয় না।
আমার কাছে একটি বড় লগ ফাইল রয়েছে (প্রায় 600 এমবি) যা আমি সেলুলার নেটওয়ার্ক জুড়ে স্থানান্তর করার চেষ্টা করছি। কারণ এটা শুধু সংযোজন করা হয় একটি লগ ফাইল (যদিও এটি শুধুমাত্র ঢোকান সঙ্গে একটি SQLite ডাটাবেসের মধ্যে আসলে সম্পাদনা করা হচ্ছে, তাই এটি নয় বেশ যে হিসাবে সহজ হিসাবে, কিন্তু শেষ 4K পৃষ্ঠার বাদে (অথবা হয়তো কয়েকটি) ফাইলটি প্রতিবার অভিন্ন It এটি গুরুত্বপূর্ণ যে কেবলমাত্র পরিবর্তন (এবং যে কোনও চেকসাম সংক্রমণ করা দরকার) আসলে প্রেরণ করা যায়, কারণ ডেটা সংযোগটি মিটার করা হয়।
তবুও যখন আমি একটি অপরিশোধিত সংযোগ জুড়ে একটি পরীক্ষা করি (যেমন ফ্রি ওয়াইফাই হটস্পট) আমি পর্যবেক্ষণ বা প্রতিবেদন করা কোনও স্পিড-আপ বা হ্রাসিত ডেটা ট্রান্সফার দেখতে পাই না। ধীর WiFi সংযোগের উপরে আমি 1MB / s বা তার চেয়ে কম অর্ডারতে দেখছি, প্রতিবেদনটি প্রায় 20 মিনিট সময় নিতে চলেছে। একটি দ্রুত ওয়াইফাই সংযোগের মাধ্যমে আমি অভিন্ন দ্রুত গতি দেখতে পাচ্ছি, তবে দ্রুতগতির কোনও প্রতিবেদন নেই, এবং স্থানান্তর করার দ্বিতীয় প্রচেষ্টা (যা এখন দ্রুত হওয়া উচিত কারণ দুটি ফাইল অভিন্ন) এখন কোনও পার্থক্য দেখায়।
(সংবেদনশীল তথ্য সরানোর জন্য স্যানিটাইজড) কমান্ডটি আমি ব্যবহার করছি:
rsync 'ssh -p 9999' --progress LogFile michael@my.host.zzz:/home/michael/logs/LogFile
আমি শেষে যে আউটপুটটি পাই তা দেখতে এই রকম দেখাচ্ছে:
LogFile
640,856,064 100% 21.25MB/s 0:00:28 (xfr$1, to-chk=0/1)
কোনও ধরণের স্পিডআপের কথা নেই।
আমি সন্দেহ করি যে সমস্যাগুলি নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
- আমি কিছু কমান্ড লাইন বিকল্প অনুপস্থিত। যাইহোক, ম্যান পৃষ্ঠাটি পুনরায় পঠন থেকে মনে হয় যে ডেল্টা স্থানান্তরগুলি ডিফল্টরূপে সক্ষম হয়েছে: আমি কেবল তাদের অক্ষম করার বিকল্প দেখতে পাচ্ছি।
- সার্ভারটি কেবল ফায়ারওয়ালের পিছনে থাকার কারণে আমি এসএসএসের ওপরে এসএসএইচ (একটি অ-মানক পোর্টেও) ব্যবহার করছি আরএসসিএন ডেমন চালু না থাকলে ডেল্টা ট্রান্সফার কাজ করবে না বলে আমি স্পষ্ট করে কিছু দেখিনি। আমি ":" পরিবর্তে "::" স্বরলিপি ব্যবহার করার চেষ্টা করেছি তবে "মডিউল" কী তা সম্পর্কে ম্যান পৃষ্ঠাটি খুব পরিষ্কার নয়, এবং আমার কমান্ডটি একটি অবৈধ মডিউল নির্দিষ্ট করার জন্য প্রত্যাখ্যান করা হয়েছে।
আমি নিম্নলিখিতটি বাতিল করে দিয়েছি:
- স্থানীয় নেটওয়ার্কে বদ্বীপান্তর স্থানান্তরিত হয়নি। বাতিল হয়ে গেছে কারণ আমি ইন্টারনেটের মাধ্যমে স্থানান্তর সম্পাদন করার চেষ্টা করছি
- চেকসাম গণনার কারণে ওভারহেড। আমি এই আচরণটি দ্রুত এবং ধীর ওয়াইফাই সংযোগে উভয়ই দেখেছি এবং স্থানান্তর হারটি গণনা সীমাবদ্ধ বলে মনে হয় না।
rsync --stats
এবং ব্যবহার করতে পারতেন -v -v
। Rsync আপনাকে জানায় যে বনাম তুলনায় কতটা মিলছে না data
but with the exception of the last 4k page (or maybe a few) the file is identical each time.
আপনি কি সত্যিই এটি যাচাই করেছেনcmp
? বা আরও ভাল, সঙ্গেxdelta
বা কিছু? আপনি যদি সত্যিই স্থানান্তর আকারটি হ্রাস করতে চান তবে স্থানীয়ভাবে পুরানো এবং নতুন সংস্করণগুলি রাখুন, যাতে আপনি স্থানীয়ভাবে একটি ন্যূনতম বাইনারি ডিফের গণনা করতে পারেন (আরএসসিএনসি ব্যতীত অন্য কোনও কিছু দিয়ে) এবং কেবলমাত্র মেটারড সংযোগের জন্য চেকসাম না প্রেরণ করে তা প্রেরণ করতে পারেন। বাইনারি-ফাইল স্তরের পরিবর্তে ডাটাবেস-রেকর্ড স্তরে এটি করা সম্ভবত আরও ভাল, ডেরোবার্টের পরামর্শ অনুসারে।