Чи корисний BitTorrent для копіювання файлів між серверами на робочому місці?


12

У мене є 1 вихідний сервер, який містить близько 30 ГБ файлів, які я хочу скопіювати на 7 інших серверів. В даний час я SCP передає файли на перші чотири сервери, і коли ця передача завершена SCP на останні три сервери.

Чи швидше використання BitTorrent швидше поширюватиме файли на всі 7? Внутрішнє з'єднання вже швидке та послідовне між кожним із серверів. Я знаю, що, ймовірно, буде потрібно деяке завантаження з вихідного сервера, але чи просто триватиме більше часу, щоб розподілити файли?

Який хороший клієнтський сценарій я міг би використовувати з оболонки? Я б хотів, щоб всі припинили висівати насіння після 100%.

Відповіді:


7

Це залежить від того, як розміщена ваша мережа та де є вузькі місця, але так, швидше використовувати BitTorrent. Теоретично, замість того, щоб надсилати 7 копій одних і тих же файлів, ваш вихідний сервер повинен був лише надіслати 1 копію, розділену між приймачами. До моменту, коли це станеться, решта однолітків поділиться частинами, які вони не отримали безпосередньо між собою.

Якщо ваша мережа підтримує багатоадресну передачу, напевно, простіше налаштувати udpcast , mdp , мультисенд , або щось подібне: ваше джерело надсилатиме одну копію даних, а мережа спрямовуватиме її до всіх одержувачів.


Ми закінчили метод багатоадресної передачі за допомогою Udpcast. І це прекрасно працює!
Едвард

3

Перевага BitTorrent перед іншими інструментами розповсюдження файлів, скажімо, rsync , полягає в тому, що клієнти починають пропонувати свої дані іншим клієнтам, тому, якщо сервер має повільне з'єднання з клієнтами, пропускна здатність буде набагато кращою.

BT - це протокол, який призначений для глобального обміну. Тож вам доведеться знайти спосіб заблокувати всіх інших клієнтів, але 7, яких ви хочете подати (або ваш торрент незабаром опиниться в The Pirate Bay).

Що стосується зупинки на 100%, то кожен клієнт BT зробить це так: оскільки жоден клієнт більше не запитує дані, більше не буде висівати. Додаток все ще працюватиме, але вони лише спричинить невелику кількість даних між клієнтами та трекером, щоб сказати, що вони все ще доступні.

Спробуйте оригінальний клієнт BitTorrent, який написаний на Python. Це дозволить вам внести будь-які зміни, які ви бажаєте. На жаль, я не можу знайти посилання на банкоматі. Хтось?

[EDIT] На підставі коментаря saua : Якщо ви використовуєте приватний трекер, торенти не повинні поширюватися несподівано. Однак, вам слід використовувати лише торент-клієнт із надійного джерела. В іншому випадку ви можете загрожувати, що якийсь зломщик додав трохи додаткової функції в код, який публікує приватні торренти десь там, де ви не хочете, щоб вони з’являлися.


2
Не оприлюднювати торрент легко, використовуючи приватний трекер.
Йоахім Зауер

1
Ви на 100% впевнені, що вихідний код клієнта не містить фрагмента коду "ей, скажімо якомусь хакерському серверу про цей торрент"? Я б тут не ризикував шиєю.
Аарон Дігулла

7
Якщо ви не довіряєте фрагменту коду і все одно запускаєте його, найменше турбує його витік даних про ваші приватні торренти.
Майкл Боргвардт

1

BitTorrent - прекрасна ідея, якщо ви хочете копіювати файли через дерево серверів, наприклад, не потрібно видавати віддалену команду всім серверам для копіювання з одного місця; потенційно спричиняючи вузьке місце.

Інженери Twitter зробили це з великим успіхом з "Вбивством", яке зараз знаходиться в github.

http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html


0

Якщо всі 8 ваших серверів підключені до однієї частини мережі за допомогою Bit Torrent, навряд чи це пришвидшить роботу. Насправді у вас виникне стільки зіткнень, що це, мабуть, буде дуже повільним. BitTorrent швидко прискорить роботу лише в тому випадку, якщо ви використовуєте повністю комутаційну мережу і вісім серверів можуть спілкуватися один з одним незалежно, не впливаючи на зв’язок між іншими серверами.


Хороший момент - але чи є насправді багато мереж, які вже не повністю перемикаються?
філліс-діллер

2
Коли в останній раз ви бачили концентратор, що з'єднує сервери? У наші дні всі ми використовуємо повні дуплексні комутовані мережі.
Mircea Vutcovici
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.