Avtoprokat-rzn.ru

Автопрокат Эволюшн
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Русские Блоги

Русские Блоги

Как использовать pycharm для синхронизации локального и удаленного кода в реальном времени

Чтение статьи занимает около 3 минут.

Мы знаем, что использование Docker в Китае, будь то зеркальное отображение Pull, Build или Push, происходит очень медленно, потому что, в конце концов, многие источники являются иностранными, а медленная загрузка и выгрузка — неизбежное явление.

Проекты, которые я пишу недавно, выполняются с использованием Docker. При тестировании мне может потребоваться собрать, а затем запустить, чтобы проверить, есть ли проблемы с логикой.

При сборке на моем собственном локальном компьютере возникает несколько проблем. Одна проблема, конечно, низкая скорость. Я должен использовать внутреннюю линию Интернет. Иногда я использую новое зеркало, и Pull не может выйти в течение длительного времени, а некоторые зеркала являются частными Зеркальное отображение получить ускорители непросто.Некоторое публичное зеркалирование пробовало несколько ускорителей, и эффект был не идеальным. Другая проблема заключается в том, что при создании зеркала, если задействован какой-либо процесс компиляции, он будет занимать ресурсы ЦП моей локальной машины, иногда он зависает.

Так почему бы мне не перенести эти процессы сборки на сервер? Если у меня есть сторонний сервер, проблема скорости может быть решена, и ресурсы процессора моей локальной машины не будут заняты.

Но проблема в том, что я хочу написать код на своем компьютере, а затем скомпилировать и запустить его на удаленном конце. Как можно синхронизировать код с удаленным концом?

Итак, в этом разделе будет представлен следующий метод синхронизации удаленных серверов в реальном времени с локальным кодом.

На самом деле, я использовал эту функцию в течение долгого времени, но раньше она казалась немного безвкусной, потому что вам неизбежно нужно настроить операционную среду на удаленной стороне для запуска, но позже, если вы переключитесь на Docker, вы почувствуете себя более комфортно. Если вы используете Docker для запуска проекта, я рекомендую вам попробовать.

Запрос

Перед этим требуется удаленный сервер Linux и установлен Docker. Кроме того, конечно, также необходим удаленный доступ по SSH, который является обязательным. Кроме того, если лучше всего подходит зарубежный сервер, скорость зеркалирования будет выше.

Кроме того, здесь я использую PyCharm для реализации функции удаленной синхронизации. Если вы пишете больше Python, я, конечно, рекомендую PyCharm. Однако другие IDE JetBrains в основном имеют эту функцию, поэтому, если вы используете другие IDE JetBrains, это нормально. Обратите внимание, что здесь должна использоваться профессиональная версия, и только профессиональная версия имеет эту функцию.

Конфигурация

Что ж, чего мы хотим добиться, так это функции сервера синхронизации в реальном времени для локального кода. Используя собственные компоненты PyCharm, мы можем легко реализовать эту функцию.

PyCharm имеет модуль развертывания SFTP, который может помочь нам синхронизировать локальный код с удаленным в реальном времени.

Хорошо, сначала PyCharm открывает любой проект, здесь я возьму свой собственный проект в качестве примера.

Предварительный просмотр проекта

Затем мы нажимаем PyCharm Tools -> Deployment -> Configuration, здесь мы можем настроить удаленный SFTP-сервер, как показано на рисунке:

Конфигурация

Это выглядит так, после открытия, здесь выберите SFTP, а затем введите информацию о подключении к серверу, как показано на рисунке:

Информация о конфигурации

Здесь вы можете нажать «ТЕСТ ПОДКЛЮЧЕНИЯ», чтобы проверить, успешно ли установлено соединение.

Читайте так же:
Регулировка дисков сцепления иж юпитер

Хорошо, после завершения настройки мы успешно добавили удаленный сервер.Например, я добавил сюда свой собственный сервер, а хост — vm1.cuiqingcai.com.

Поскольку вы хотите синхронизировать локальные и серверные файлы, конечно, вы должны указать, в какой папке синхронизировать локальную папку проекта и удаленную. Где указать? Переключитесь на вторую вкладку Mappings, как показано:

Mappings

Здесь мы можем указать имена локальной и удаленной папки соответственно, выбрав LocalPath и Deployment Path. Обратите внимание, что последний относится к пути относительно рабочего каталога сервера.

Ну вот и все, базовая настройка завершена. Если вы хотите, чтобы некоторые пути не синхронизировались, вы также можете настроить это на третьей вкладке «Исключенные пути».

Затем есть несколько мест, которые можно настроить, нажмите Инструменты -> Развертывание -> Параметры, мы можем настроить более подробную информацию, как показано на рисунке:

Детальная конфигурация

Например, здесь я настраиваю, когда загружать, а здесь я изменил его на загрузку, когда я нажимаю Ctrl + S для сохранения, чтобы я мог свободно контролировать время загрузки.

Кроме того, вам также необходимо проверить автоматическую загрузку, как показано на рисунке:

Автозагрузка

Что ж, вся конфигурация готова.

контрольная работа

Затем давайте загрузим и попробуем. Вы можете выбрать опцию «Загрузить в» в меню, чтобы загрузить код.

После нажатия кнопки загрузки PyCharm откроет отдельное окно передачи файлов, чтобы отобразить результат загрузки файла, как показано на рисунке:

Загрузить результат

На этом загрузка завершена.

Затем мы произвольно изменяем файл, нажимаем «Сохранить», то есть Ctrl + S, и здесь появляется журнал автоматической загрузки, указывающий, что определенный файл был успешно загружен.

Тест автоматической загрузки

ОК, проверка не проблема.

Удаленный SSH

Конечно, PyCharm также предоставляет функцию удаленного SSH Termial, просто нажмите Tools -> Start SSH Session, как показано на рисунке:

Удаленный SSH

После того, как вы нажмете на нее, вам будет предложено выбрать, какой удаленный сервер выбрать.После того, как вы выберете, терминал внизу появится, как и обычная оболочка SSH.

SSH Terminal

Хорошо, затем, чтобы создать образ, мне нужно только запустить соответствующую команду docker-compose, скорость будет увеличиваться мгновенно, мне больше не нужно беспокоиться о скорости восстановления скорости черепахи, и мне не нужно беспокоиться о ресурсах локальной машины. Потреблено.

Процесс сборки

Хорошо, хорошие новости.

После завершения и запуска сборки можно получить прямой удаленный доступ к ней.

Примечание. Не забудьте включить здесь ограничение группы безопасности сервера, чтобы избежать проблемы, связанной с невозможностью доступа к удаленному порту.

Что ж, это метод удаленной синхронизации кода в реальном времени с помощью PyCharm, давайте попробуем.

Синхронизация файлов в реальном времени между серверами с сотнями-тысячами небольших файлов

Я дал задание создать два сервера CentOS 7, на которых будут реплицироваться не только базы данных, но и файлы. Теперь моя проблема в том, что вероятно будут сотни тысяч файлов, если не миллион файлов с самыми разными размерами от нескольких килобайт до

  • incrion
  • lysncd
  • git-application
  • ChironFS

Теперь я хочу спросить о вашем опыте использования любого из них, если вы его использовали или сейчас используете . Как работает производительность с изменениями файлов в отношении копий и удалений? Я очень боюсь использовать какой-либо rsync, потому что мой опыт показывает, что он не очень быстрый с большим количеством небольших файлов, поэтому я не могу использовать его для репликации файлов в реальном времени. Или я не прав? Пожалуйста, докажите, что я ошибаюсь. 🙂

Читайте так же:
166 fmm регулировка клапанов

А может мне понадобится 3-й и 4-й сервер в качестве файловых серверов? Если да, то остается вопрос: как реплицировать файлы между двумя серверами в реальном времени?

Если ваши серверы находятся в одной локальной сети, то лучшим выбором должна быть кластерная файловая система (например, GlusterFS) или общее хранилище (например, через NFS).

Если у вас серверы находятся в другом месте, имея только подключение к глобальной сети, вышеуказанное решение не будет работать. В этом случае и , если вам нужна только односторонняя репликация (то есть: с активного сервера на резервный), хорошим решением будет lsyncd . Другое решение — csync2 . Наконец, еще одна возможность — использовать DRBD + DRBD Proxy (обратите внимание, что его прокси-компонент является коммерческим плагином).

Наконец, если ваши серверы имеют только подключение к глобальной сети и вам нужна двунаправленная репликация (т.е. оба сервера активны одновременно), серебряной пули практически не существует. Я перечислю некоторые возможности, но я далек от рекомендации аналогичной установки:

  • unison с его плагином реального времени , который я точно написал для решения подобной проблемы (но, пожалуйста, обратите внимание, что он имеет свою долю особенностей, и я не предоставляю никакой поддержки для него)
  • синхронизацию с его плагином реального времени (но он имеет значительные ограничения, а именно, он не сохраняет ACL ни владелец / группа файла)

По моему опыту, распределенный файловые системы предоставляют простые механизмы репликации для приложений. Однако они страдают от плохой производительности, особенно когда каталоги становятся очень большими со слишком большим количеством маленьких файлов. Это ожидается, поскольку им необходимо иметь дело с блокировкой / совместным доступом из нескольких мест / машин.

Способы, подобные Rsync, обеспечивают в некоторых случаях приемлемую репликацию с некоторой задержкой. Они не влияют на производительность приложений при чтении / записи реплицированной папки.

Я думаю, что лучшим решением является предоставление общего хранилища (когда это возможно), доступного с одного сервера. Другой резервный сервер готов к подключению общей папки, когда первый выйдет из строя. Нет необходимости реплицировать какие-либо данные между серверами.

Я использую файловую систему ZFS и усиливаю ее репликацию на уровне блоков с помощью структуры отправки / получения zfs.

Я использую удобный сценарий под названием syncoid для выполнения регулярной синхронизации файловых систем с интервалами от 15 секунд до ежечасного или ежедневного, в зависимости от требований.

Репликация на уровне блоков будет чище и точнее, чем rsync для набора данных, о котором вы говорите .

Приветствую вас за идеи. Я проверил и протестировал их все и придерживаюсь lsyncd.

Как синхронизировать две папки в режиме реального времени в Windows 7?

Я хочу синхронизировать две папки в реальном времени под Windows 7.

В принципе, я хочу отслеживать папку и синхронизировать каждое изменение (новые файлы, измененные файлы, удаленные файлы) на другой диск. Он должен быть в режиме реального времени, поэтому он мгновенно синхронизируется, когда происходит изменение. Односторонней синхронизации достаточно.

Я попробовал Microsoft SyncToy , но он выполняет только синхронизацию вручную или (таким образом, не удовлетворяя требованию «в реальном времени»).

Можно ли это сделать с самой Windows 7? Если нет, есть ли другие способы сделать это?

15 ответов

Dsynchronize позволяет это сделать. Я не уверен, как это работает в Windows 7, но оно бесплатное и автономное, поэтому нет никакого вреда при попытке.

Читайте так же:
Реферат на тему регулировка сцепления грузового автомобиля

Я использую команду ROBOCOPY и сделал командную строку для синхронизации между двумя папками (инкрементная синхронизация), моя команда похожа на эту

.*» «desktop.ini» «Thumbs.db» «*.torrent» «.lock» «.Sync*» ) (исключить папки, в том числе файлы в этих папках: «Rubbish» «.Sync*» «.Box Sync» «_private» «Outlook Files» ) Также это повторяется каждую минуту и ​​/или одно изменение файла /папки.

С уважением, Ризван.

Существует Synkron , который является открытым исходным кодом и является кросс-платформенным.

Вы можете использовать символическую ссылку NTFS , чтобы папки на каждом диске фактически указывали на той же папке.

Так как я прочитал ваш комментарий «.. подключенный диск (синхронизация) — это Linux», то я хочу дать вам лучший подход: вам нужен только ssh-доступ к цели Linux, это быстрее , и работает намного лучше, чем более низкие полосы пропускания и более длительные задержки.

Вам понадобится небольшая настройка параметров передачи, чтобы настроить всегда двоичные файлы, исключить файлы (обычно svn или git-файлы и т. д.) и т. д. Также используйте «автоматическое применение» параметров передачи. Кроме того, создайте сеанс, на котором установлены хост, локальные и удаленные каталоги. В этот момент вам нужно только открыть WinSCP, активировать сеанс (который затем автоматически применяет параметры передачи из-за, например, соответствия хоста) и нажать кнопку keep-update.

Или вы можете выполнить скрипт с помощью инструментов сценариев WinSCP!

.. и просто btw: если сценарий был Unix-to-Unix, то проверить этот вопрос .

My Я пробовал довольно много программ, и единственные, которые делают зеркалирование папок в режиме реального времени:

  • Яди! Резервное копирование (программа, еще не упомянутая здесь)
  • Dsynchronize (программа выбрана в качестве ответа)

Лично мне нравится Яди! Резервирование лучше. Он имеет больше возможностей, чем Dsynchronize. Вы можете включить управление версиями, # версий, чтобы сохранить, какие файловые операции контролировать, и я уверен, что намного больше. Кроме того, он имеет более удобный графический интерфейс, который выглядит более утонченным.

Ниже приведены некоторые из инструментов синхронизации папок в режиме реального времени, проверьте их и выберите один для своего требования.

  1. FreeFileSync
  2. AllwaySync
  3. SyncBack Free
  4. Synkron
  5. File Synchronizer
  6. PureSync
  7. GoodSync

Если вы хотите синхронизировать папку с USB и уже используете Dropbox, используйте DropboxPortableAHK .

Таким образом, у меня есть файлы Dropbox, синхронизированные на любом компьютере, а также мой iPhone с помощью приложения Dropbox и моего USB-диска, который я использую в uni с этой переносимой версией.

Еще один очень сильный способ синхронизации папок — использовать rsync в командной строке. Вам нужно будет скачать программную цепочку MingW или установить cwRsync, она установит rsync.exe, которую вы можете запустить напрямую.

Все, что вам понадобится, это команда:

-r должен быть рекурсивным для всех подпапок.

В Windows (7) путь должен быть указан в следующем формате. Например, чтобы указать c:test , это будет /c/test или /cygdrive/c/test

Это самый эффективный, быстрый и мощный способ синхронизации папок с большими файлами, хотя Dsynchronize в принятом ответе также работал для меня.

Это не живое или реальное время. Каждый раз, когда вам нужно синхронизировать, вы будете запускать эту команду.

Вы можете попробовать SyncBack4all , это программа синхронизации файлов и файлов в реальном времени.

Сетевой накопитель QNAP TS-231P3

Сетевой накопитель QNAP TS-231P3, 2 отсека 3,5 / 2,5 дюйма, 1 GbE RJ-45, 2,5 GbE RJ-45, настольный форм-фактор. Процессор Cortex-A15 Annapurna Labs Alpine от 4 ядер с частотой от 1,7 ГГц, оперативная память DDR3 от 2 Гб с возможностью расширения до 8 Гб. Операционная система QTS.

Читайте так же:
Регулировка давления редуктор стаг

Указанная цена является ориентировочной и минимальной для данной модели.

Обзор сетевого хранилища QNAP TS-231P3

TS-231P3 – это сетевой накопитель с большой емкостью хранения для дома, малого офиса и рабочих групп. Оснащенное операционной системой QTS для сетевых накопителей QNAP, устройство идеально подойдет для резервного копирования данных, синхронизации файлов, безопасного удаленного доступа, организации медиабиблиотеки, а также надежного личного облака.

Преимущества системы TS-231P3

  • Порт 2,5 Гбит/с SFP + для повышения скорости обмена файлами по сети и воспроизведения медиа-контента.
  • Комплексное решение задачи безопасного хранения Hybrid Backup Sync позволяет создавать резервные копии, восстанавливать или синхронизировать файлы по локальной сети или через интернет.
  • Мгновенные снимки позволяют записывать состояние системы, что обеспечивает защиту файлов и данных от случайного удаления и вредоносных атак.
  • Поддержка контейнеров LXC и Docker способствует оперативному развертыванию приложений вне зависимости от платформы, таких как облачные сервисы, серверы и ПК.
  • File Station обеспечивает централизованное управление файлами на NAS, подключенных устройствах и облачных сервисов, упрощая управление данными и экономя время.
  • Возможность увеличения емкости устройства за сет подключения дополнительных модулей TR и TL серий.

Высокоскоростной доступ 10/2,5 Гбит/c

TS-231P3 оснащен сетевым портом 2,5 Гбит/c RJ45, к которому подключаются существующие кабели CAT5e, при этом скорость сети повышается с 1 Гбит/с до 2,5 Гбит/с. С помощью адаптера QNAP N-BASET / Multi-Gig USB 3.2 Gen 1 — 5GbE (название модели QNA-UC5G1T) или карт расширения PCIe 5 GbE (название модели QXG-5G1T-111C) можно подключить ноутбук или настольный компьютер к сетям 2,5 Гбит/c совместно с TS-231P3.

QTS – простая и эффективная ОС

Благодаря интуитивно понятному пользовательскому интерфейсу QTS выполнять системные операции на сетевом накопителе TS-231P3 легко и удобно. Интеллектуальный рабочий стол позволяет быстро отыскать нужные функции, создать ярлыки для доступа к отдельным приложениям или группам, отследить важную системную информацию в реальном времени и открыть сразу несколько окон приложений для параллельного выполнения двух и более задач, обеспечивая более высокую эффективность.

Решения для восстановления после аварий обеспечивают спокойствие и уверенность

Накопитель TS-231P3 предлагает различные опции восстановления данных. Служба удаленной репликации в реальном времени RTRR (Real-Time Remote Replication) поддерживает резервное копирование данных в реальном времени или по расписанию с удаленного накопителя Turbo NAS или сервера FTP и синхронизацию файлов из локальной папки с удаленной папкой, что позволяет обеспечить более высокую эффективность резервного копирования и сократить время выполнения. Кроме того, модель TS-231P3 поддерживает протокол rsync для резервного копирования данных на другой удаленный сервер по расписанию. Имеется также возможность копировать данные в облачные хранилища, такие, как Amazon S3, ElephantDrive, Symform, Dropbox и Google Drive, из которых их можно в любое время восстановить на сетевой накопитель TS-231P3.

Простое и безопасное управление файлами

File Station — это базовое веб-приложение QTS для управления файлами с такими возможностями как: загрузка на NAS простым перетаскиванием мыши, перемещение между папками, переименование и удаление, настройка прав доступа для пользователей и легкий обмен ссылками. При помощи Microsoft Office Online вы можете открывать и изменять документы Word, Excel и PowerPoint, хранящиеся на TS-231P3, без необходимости скачивания с сетевого хранилища на ПК.

Читайте так же:
Программа для синхронизации времени айфон

Резервное копирование, доступ и синхронизация файлов

TS-231P3 централизованно хранит файлы и предоставляет к ним доступ по протоколам SMB/CIFS, AFP и NFS для устройств под управлением различных операционных системам: Windows®, Mac® и Linux® / UNIX®. Через утилиту Qsync любой файл, загружаемый в TS-231P3, становится доступным на любом из устройств — это могут быть локальные и удаленные компьютеры, ноутбуки и мобильные устройства. Помимо этого, в приложении HBS можно выполнить резервное копирование и синхронизацию данных между TS-231P3 и другими хранилищами QNAP, удаленными серверами или облачным сервисами. Встроенный механизм QuDedup помогает сократить объем копируемых файлов после дедупликации. Компьютерная утилита QuDedup Extract Tool затем восстановит дедуплицированные файлы до их нормального состояния.

Интеллектуальное управление изображениями QuMagie

Функция для каталогизации фотографий QuMagie Core AI определяет лица людей, идентифицирует объекты и распределяет файлы по альбомам, в том числе и по геотегам. Помимо этого, QuMagie сортирует изображения по временной шкале, настраивает обложки альбомов и предлагает разнообразные инструменты поиска.

Защита данных высокого уровня

TS-231P3 оснащен комплексными функциями безопасности для обеспечения безопасности ваших данных.

  • Советник по безопасности: портал проверяет все уязвимые настройки и дает советы по исправлению. Так-же с его помощью осуществляется проверка на вирусы.
  • Блокировка IP-адресов. Управляет автоматической блокировкой IP-адресов на основе политик для подозрительных IP-адресов. Возможность ведения черных списков IP-адреса для снижения рисков несанкционированного доступа.
  • Двухэтапная верификация: Есть возможность установить двухфакторную верификацию при этом любой пользователь будет вынужден вводить одноразовый код проверки помимо стандартных: логина и пароля.
  • Центр уведомлений: объединяет системные журналы и уведомления от всех приложений развернутых на сетевом накопителе, облегчая управление NAS. Вы можете получать уведомления по электронной почте, SMS, мгновенным сообщениям и push-уведомлениям (через мобильное приложение Qmanager и веб-браузеры).

Container Station

Приложение Container Station обеспечивает уникальную интеграцию облегченных технологий виртуализации LXC и Docker, позволяя использовать несколько изолированных систем Linux на сетевом накопителе TS-231P3, а также загружать приложения из встроенного магазина приложений Docker Hub Registry.

Технические характеристики СХД QNAP TS-231P3

ПроцессорCortex-A15 Annapurna Labs Alpine от 4 ядер с частотой от 1,7 ГГц
Оперативная памятьОт 2 Гбайт DDR3. Может быть расширена до 8 Гбайт (в зависимости от конфигурации)
Всего слотов 1 шт. Занято слотов 1 шт.
Flash-память512 Мбайт
Дисковое пространство2 x 2,5″ или 3,5″ HDD/SSD с интерфейсом SATA II или SATA III
Слоты для HDD2 x слот с возможностью горячей замены
Максимальная емкость хранилища32 ТБ
Сетевые интерфейсы1 x RJ-45 Гигабитный Ethernet
1 x RJ-45 Ethernet 2,5 Гбит/с
Индикаторы состоянияСтатус, Питание, LAN, USB, 2 x HDD
USB3 x USB 3.2 Gen 1 (Спереди: 1; Сзади: 2)
КнопкиПитание, Резервное копирование, Сброс
ЗуммерСистемные предупреждения
Форм-факторНастольный
Габариты (Высота х Ширина х Глубина)169 x 102 x 219 мм
МассаБез жестких дисков: 1,5 кг
В коробке: 2,46 кг
ЭнергопотреблениеВ спящем режиме: 9 Вт
В работе: 16 Вт
Условия эксплуатацииРабочий диапазон температур: 0 — 40˚C
Относительная влажность: 5 — 95% при 27˚C
ЭлектропитаниеВнешний блок питания, 60 Вт
Входное напряжение: 100 — 240 В
БезопасностьРазъем K-lock
Охлаждение1 х вентилятор (70 мм, 12 В)

43 545 р.
Подробная информация

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector