Рубрика «синхронизация данных»

RSync на стероидах с поддержкой Windows - 1

На Хабре периодически рассказывают о новых инструментах для синхронизации данных. Это интересная тема. Такие программы используются:

  • для синхронизации файлов на разных устройствах,
  • дедупликации,
  • резервного копирования,
  • сжатия.

Малейшая оптимизация даёт экономию трафика, места, ускоряет синхронизацию и общую производительность любых систем. Всё, везде и сразу. В эпоху веб-приложений и клиент-серверной архитектуры со множеством девайсов, которые работают в единой инфраструктуре, синхронизация — Святой Грааль, одна из базовых технологий в компьютерной области.

Кроме того, инструменты синхронизации интересны с алгоритмической точки зрения. Любопытно, как люди умудряются оптимизировать базовые алгоритмы типа rsync, которые вроде бы работают идеально. Но нет, всегда можно придумать что-то получше.
Читать полностью »

Последние N тысяч лет протестные собрания принципиально не менялись.

Собирается толпа протестующих и начинает что-то скандировать, — как правило короткими ритмичными фразами (толпа не способна на большее). Заводила начинает, толпа подхватывает и понеслось, пока инерция не погаснет или пока лидер не запустит новую кричалку. Получается довольно громко, но невнятно. Случайные прохожие даже не всегда в состоянии понять, чего именно хотят все эти люди? Ну да, «Гитлер — вор», а если конкретнее?

20-й век одарил митингующих звукоусиливающим оборудованием. И примитивные кричалки стали перемежаться с зажигательными речами ораторов. Круто? Круто! Эффект от такого собрания несравнимо больше.

Но есть две проблемы.Читать полностью »

Библиотека для синхронизации состояния - 1

Так случилось, что на одном проекте потребовалось реформировать способ обмена данными между различными процессами. Исторически сложившаяся схема была довольно неприглядна. Один процесс периодически перезаписывал свои текущие настройки в виде XML-файла. Второй вычитывал этот файл раз в секунду, проверяя, что в нём поменялось с прошлого раза. Изменения файла вычислялись через множество сравнений текущего и прошлого его состояний, порождая некоторую цепочку действий. Читающий процесс писал в свою очередь другой XML-файл, который читался третьим процессом и т.п. Самое печальное то, что данная схема требовала громоздкого, из раза в раз повторяющегося кода сравнений, который наслаивался при добавлении новых данных.

Читать полностью »

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

В последние годы требования к современным приложениям и методы их разработки значительно изменились. Большинство таких приложений используют асинхронную модель, состоящую из множества слабо связанных компонентов (микросервисов). Пользователи же хотят, чтобы приложение работало безотказно и всегда было в актуальном состоянии (данные должны быть синхронизированы в любой момент времени), проще говоря, пользователи чувствуют себя более комфортно, когда им не нужно каждый раз нажимать кнопку «Обновить» или полностью перезагружать приложение, если что-то пошло не так. Под катом немного теории и практики и полноценное приложением c открытым исходным кодом со cтеком разработки React, Redux/Saga, Node, TypeScript и нашим проектом Theron.

image
Rick and Morty. Рик открывает множество порталов.
Читать полностью »


Хочу поделиться лайфхаком, который упрощает импорт контактов с WP на iOS с уровня «невозможно» до «несколько тапов».

Перенос контактов с Windows Phone на iOS - 1Читать полностью »

Для синхронизации данных в приложениях не подходят обычные «файловые» облачные хранилища. Слишком много проблем с консистентностью данных приходится решать самим авторам приложений. Поэтому сегодня мы открываем всем желающим технологию DataSync API, которую команда Яндекс.Диска разрабатывала для собственных сервисов Яндекса. Она позволяет синхронизировать структурированные данные между облачным хранилищем и устройствами. API использует логин Яндекса, который есть почти у каждого пользователя интернета в России и у многих в других странах. DataSync мультиплатформенный и не завязан только на Android или iOS.

DataSync API от Яндекс.Диска: облако для приложений и структурированных данных - 1

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

Уже более двух лет Яндекс.Браузер работает на технологиях синхронизации Я.Диска. В ближайшем будущем другие крупные сервисы Яндекса начнут объединять свои платформы на DataSync. Под катом — больше подробностей о том, как он устроен, зачем нужен, и примеры, на которых можно посмотреть и попробовать, как всё работает.
Читать полностью »

Альфа версия SyncApp от BitTorrent будет доступна для публичного использования к концу апреля Небольшое вступление для тех, кто еще не знает: SyncApp от BitTorrent — это система синхронизации данных между разными компьютерами. В отличие от DropBox и других аналогов, у нее отсутствует серверная часть, что позволяет вам полностью контролировать приватность ваших данных. Для передачи данных используется протокол BitTorrent.

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

Перевод текста письма под катом.
Читать полностью »

GoodSync – котлеты – отдельно, мухи – отдельно

Сервис GoodSync узкоспециализирован и предназначен для обеспечения автоматической синхронизации и резервного копирования как локально, так и с удаленных томов. А узкая направленность имеет свои последствия. Не всегда приятные, но обо всем по порядку.
Первое — позитивное, утилита предлагает исчерпывающую, богатую и глубокую поддержку заявленного спектра услуг и возможностей.
Второе – не такое позитивное, как первое, обучение функционалу программы для управления на достаточно высоком уровне является сложной задачей. Эта программа не для новичков, но другие пользователи полюбят данный продукт, как только научатся грамотно его использовать – то есть, если они научатся грамотно его использовать.
Читать полностью »

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

Задача

Есть стационарный компьютер в офисе, стационарный компьютер дома, ноутбук и телефон на Android. Необходимо иметь некое единое рабочее пространство дома, в офисе и на телефонеЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js