Название: создание алгоритма взаимодействия клиент-сервер Отправлено: Karl-Philipp от Август 31, 2009, 10:49 Есть база данных, формирующаяся на клиенте.
Есть сервер, который примерно каждые 2 минуты обрабатывает эту базу. Необходимо создать алгоритм взаимодействия клиент-сервер для данной ситуации. Как я себе это представляю. С самого начала работы системы база данных копируется на сервер. Когда на клиенской БД происходят изменения, они должны быть отправлены на сервер для синхронизации с серверной БД и последующей обработки. Попутно возник дополнительный вопрос: Как лучше синхронизировать данные с сервером? Отсылать запросы? Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: lit-uriy от Август 31, 2009, 11:23 система "Клиент-сервер" - централизованная, в ней одна БД.
Ты уверен, что тебе децентрализованная система нужна? Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: Karl-Philipp от Август 31, 2009, 11:34 система "Клиент-сервер" - централизованная, в ней одна БД. да, попутал на счёт системы клиент-сервер :-\Ты уверен, что тебе децентрализованная система нужна? На счет децентрализированной системы: возможна ситуация, когда не будет соединения с Интернетом, а изменения в базе (на клиенте) должны происходить. Поэтому и была выбрана предложенная мною схема работы. Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: MoPDoBoPoT от Август 31, 2009, 14:28 Почитай про "Распределенные Базы Данных (РБД)"
Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: spectre71 от Сентябрь 03, 2009, 17:21 Есть база данных, формирующаяся на клиенте. Есть сервер, который примерно каждые 2 минуты обрабатывает эту базу. Необходимо создать алгоритм взаимодействия клиент-сервер для данной ситуации. Как я себе это представляю. С самого начала работы системы база данных копируется на сервер. Когда на клиенской БД происходят изменения, они должны быть отправлены на сервер для синхронизации с серверной БД и последующей обработки. Попутно возник дополнительный вопрос: Как лучше синхронизировать данные с сервером? Отсылать запросы? Это не задача! это уже твое представление как ее решать! Причем "похоже", далеко не оптимальное, в результате и проблемы! Опиши Задачу! Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: Karl-Philipp от Сентябрь 03, 2009, 17:52 задача следующая: создать автоматизированный мониторинг данных на удалённом компьютере:
На филиалах магазина есть базы данных. Эти базы должны периодически отправляться на удалённый компьютер с помощью Интернета. В базе данных 5 таблиц. Все таблицы будут содержать поля типа INTEGER. В каждой таблице примерно пять полей. 4 из 5 таблиц будут содержать до сотни записей, а в одной может быть до 100.000 записей. выходит, что 5 полей х 100.000 записей х 4 (байта размер integer) ~ 2 млн байт ~ 2 Мб. Расстояние до удалённого компьютера будет различное - от нескольких километров до двух тысяч. на удалённый компьютер будут передаваться около 10 баз данных из 10 мест каждые 2-10 минут (так как в основной таблице может меняется до тысячи записей). Имеется двухмегабитный канал. Почитал тут про распределенные базы данных и возникла идея создать подобное: Скопировать базы на удалённый компьютер и отсылать туда же только запросы, которые изменяли бы содержание баз на филиалах. Что скажете? Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: spectre71 от Сентябрь 03, 2009, 18:50 ... Если правильно понял. :)Скопировать базы на удалённый компьютер и отсылать туда же только запросы, которые изменяли бы содержание баз на филиалах. Что скажете? 1) База должна быть одна! - на серваке. 2) Клиенты(магазины) посылают запросы для каждой операции непосредственно к серваку(канал это позволяет). 3) В экстримальной ситуации(обрыв связи), клиенты создают временную базу транзакций, которую отправляют сразу, как только связь восстановлена. Если требуется поддержка базы на клиентах(содержать информацию о работе магизина непосредственно в нем) то, необходима "темпоральная" поддержка, в данном случае таблица(ы) с ID тех таблиц/записей(транзакций), которые еще не отправлены на сервер. Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: Karl-Philipp от Сентябрь 03, 2009, 19:47 неправильно понял! :)
удалённый компьютер создаётся только для выполнения анализа изменений, которые происходят в маганинах. Под анализом подразумевается обработка данных (например, привоз-продажа товара в разные филиалы в разное время и сравнение с данными, поступающими с других баз других филиалов магазинов). Анализировать часто надо все таблицы базы каждого из филиалов периодически (каждые 2-10 минут). Напомню, что базы данных находятся на филиалах, там ведется учёт товара :) Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: spectre71 от Сентябрь 03, 2009, 20:39 неправильно понял! :) Ну и что это меняет?удалённый компьютер создаётся только для выполнения анализа изменений, которые происходят в маганинах. Под анализом подразумевается обработка данных (например, привоз-продажа товара в разные филиалы в разное время и сравнение с данными, поступающими с других баз других филиалов магазинов). Анализировать часто надо все таблицы базы каждого из филиалов периодически (каждые 2-10 минут). Напомню, что базы данных находятся на филиалах, там ведется учёт товара :) - Держите общую базу на сервере. - Выполняете необходимые запросы к ней(на сервере) и обрабатывайте результаты. Устаревшие данные с сервера можно удалять(если требуется) - Получайте от клиентов только новые данные(способ не важен). Клиенты отпраляют только обновление. - Про экстримальную ситуацию для клиентов я писал. Название: Re: создание алгоритма взаимодействия клие Отправлено: Karl-Philipp от Сентябрь 03, 2009, 20:54 Ну, собственно да, спасибо, Spectre.
upd: >> - Получайте от клиентов только новые данные(способ не важен). Таки важен! В продолжение вопроса создаю тему (http://www.prog.org.ru/topic_10509_0.html)/ Название: Re: создание алгоритма взаимодействия клие Отправлено: spectre71 от Сентябрь 05, 2009, 08:41 Ну, собственно да, спасибо, Spectre. Под "способ не важен", подразумевалось любой удобный для вас(и ваших клиентов) способ.upd: >> - Получайте от клиентов только новые данные(способ не важен). Таки важен! В продолжение вопроса создаю тему (http://www.prog.org.ru/topic_10509_0.html)/ Название: Re: создание алгоритма взаимодействия клиент-сервер Отправлено: Wawan от Октябрь 12, 2009, 20:09 мне разработали crm систему (http://clientbase.ru) с учетом моих пожеланий и особенностей бизнеса.
|