Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.08;
Скачать: CL | DM;

Вниз

Программа с ограниченным числом пользователей   Найти похожие ветки 

 
Akim2   (2003-08-27 11:35) [0]

Привет народ.
Я пишу сетевую прогу и хочу ограничить кол-во одновремменно работающих копий программ в сети (лицензий).

Подскажите идеи (может кто сталкивался), как можна это реализовать и где лучше хранить информацию о кол-ве лицензий в данной сетке?


 
Reindeer Moss Eater ©   (2003-08-27 11:37) [1]

В общем случае это невозможно.


 
Delirium ©   (2003-08-27 11:40) [2]

Каждая из копий при запуске широковешательно кидает по UDP уникальный индетификатор и в течение работы накапливет идентификаторы от других копий, как только их количество превышает допустимое - выход.


 
Erik   (2003-08-27 11:46) [3]

Если нету сервера, то это сложно. Можно и сетевой шнурок выдернуть. Или надо организовывать постояное оповещение программ.


 
Reindeer Moss Eater ©   (2003-08-27 12:03) [4]

А если я другую сеть в том же физическом сегменте организую?
Кто ваши бродкасты пропустит к копиям работающим в другой сети?


 
Akim2   (2003-08-27 12:14) [5]

Я недосказал, сорри, приложение работает с базой FB, то бишь сервер существует.

И я могу проверить что-то на сервере или же запустить COM на сервере при старте клиентской машины и этот COM будет контролировать подключения. Реально ли это?

Или же, через сокеты, сервер - это сервер, а клиенты при старте регестрируются на сервере. И тот через некий промежуток времени перестукивает клиентов на предмет присутствия в сети (на случай некорректного выхода из проги).

Может так?


 
Reindeer Moss Eater ©   (2003-08-27 12:16) [6]

Я недосказал, сорри, приложение работает с базой FB, то бишь сервер существует.

Ставлю 100 серверов FB в сети.


 
Delirium ©   (2003-08-27 12:17) [7]

Гхм, если существует общий сервер БД, то может проще хранить таблицу подключений или использовать системную, если такая есть ?


 
Delirium ©   (2003-08-27 12:19) [8]

> Reindeer Moss Eater © (27.08.03 12:16) [6]

Зачем усложнять задачу, никто ведь не утверждает, что возможно осущёствить абсолютную защиту, но защититься так, чтобы на взлом было потрачено больше усилий, чем на официальную покупку - можно.


 
Reindeer Moss Eater ©   (2003-08-27 12:19) [9]

кол-во одновремменно работающих копий программ в сети (лицензий).

Сервер не поможет решить эту проблему. Если конечно сама проблема именно в этом.


 
Zacho ©   (2003-08-27 12:20) [10]

В FB SuperServer можно получить кол-во подключений к БД. Но если заменить его на Classic, то всегда будет выдавать 1.


 
Reindeer Moss Eater ©   (2003-08-27 12:21) [11]

Я думаю что автору не важно абсолютное количество запущенных экземпляров. В противном случае проблему не решить.


 
Reindeer Moss Eater ©   (2003-08-27 12:23) [12]

В FB SuperServer можно получить кол-во подключений к БД.
А если сервер обслуживает не только эту конкретную задачу автора?


 
Akim2   (2003-08-27 12:23) [13]

> Reindeer Moss Eater © (27.08.03 12:16) [6]
...
Ставлю 100 серверов FB в сети.

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


 
Zacho ©   (2003-08-27 12:30) [14]


> Reindeer Moss Eater © (27.08.03 12:23) [12]

Именно к конкретной БД, а не к серверу вообще.


 
Reindeer Moss Eater ©   (2003-08-27 12:32) [15]

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

А теперь посмотри на то, что ты спрашивал в начале.


 
Reindeer Moss Eater ©   (2003-08-27 12:40) [16]

Самое прямое и эффективное решение этой проблеммы - трехзвенка.


 
Akim2   (2003-08-27 12:40) [17]

Я же уточнил задачу:

>Akim2 (27.08.03 12:14) [5]
Я недосказал, сорри, приложение работает с базой FB, то бишь сервер существует.

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


 
Reindeer Moss Eater ©   (2003-08-27 12:44) [18]

Можно решить путем записи в базу
Что помешает приложению третьего лица тоже писать в базу?
(Устанавливать свои значения счетчиков, флагов и т.д)

MultyTier - вот что поможет лучше всего.


 
Akim2   (2003-08-27 12:46) [19]

...проблеммы - трехзвенка
Знаю, делал

MultyTier
А что это??? (Прощение за ламерский вопрос)


 
Reindeer Moss Eater ©   (2003-08-27 12:47) [20]

Это тоже самое, но на языке оригинала.


 
Akim2   (2003-08-27 12:50) [21]

Ж)
Спасибо за совет. Мои предположения на счет способов похоже оправдались.

Сенкс всем


 
Zacho ©   (2003-08-27 12:53) [22]

И все-таки, если FB SuperServer, то определить в программе кол-во подключений к БД можно. В IBX это TIBDatabaseInfo.UserNames


 
Akim2   (2003-08-27 12:56) [23]

А FB SuperServer платный?


 
Zacho ©   (2003-08-27 12:59) [24]

Нет. Но если эта программа на продажу, то никто не помешает покупателю поставит у себя Classic.


 
Akim2   (2003-08-27 13:11) [25]

За что боролись - на то и напоролись. Отож и оно.
Не совсем красивенько получится.



Страницы: 1 вся ветка

Текущий архив: 2003.09.08;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.022 c
7-24721
Alex-21
2003-06-20 21:22
2003.09.08
Завершение Windows


7-24730
Aeed
2003-06-25 15:57
2003.09.08
Как заппретить доступ к каталогу в win98


3-24353
AleksG
2003-08-19 11:25
2003.09.08
ADO и MSSQL


1-24455
ossa
2003-08-22 09:58
2003.09.08
Есть аналог static(си++) на дельфи, нужно чтоб при запуски


6-24581
Delpher_Gray
2003-07-02 19:38
2003.09.08
Скаячка файлов из интернета через HTTP протокол