Менеджер лицензий
Добрый день.
Пишу менеджер лицензий. Опыт в сетевом программировании имеется, но очень мал. Как вы считаете: лучше, что бы клиент делал запрос на продление лицензии через определённый таймаут? или правильнее будет держать постоянно открытым соединение между клиентом и сервером? Может кто встречал освещение подобных тем. Подскажите пожалуйста :) |
А где собственно будет работать программа ?
Если в Internet, то связи от клиента до сервера лицензий может и не быть. Если же в локальной сети, тогда такая связь может быть, но постоянно держать соединение не вижу смысла. |
oszip, программа будет работать в локальной сети. Спасибо за совет.
На счет постоянного соединения. Накладные расходы, по идеи, там маленькие, зато можно будет чётко отследить если клиент, по каким-то причинам, отвалился и освободить лицензию. |
А в локальной сети что кратковременных перебоев не бывает ?
Свет мигнул, роутер перегрузился ? |
oszip, бывает.
Но сбой, теоретически, может произойти и в момент запроса по таймауту. |
Какого типа лицензии, на сколько выдаются?
1. если по времени (срок действия), то по окончанию клиент даёт запрос серверу на продление лицензии (пример - динамический DHCP) 2. если на очень короткий срок, с возможностью отозвать лицензию в любой момент - то в пример ICQ с постоянным подключением |
pva, возможность отзыва лицензии не нужна. Она выдаётся на то время которое необходимо клиенту. Ограничение - количество выдаваемых лицензий.
|
тогда достаточно проверять один раз при старте. Клиент соединяется и просит лицензию. Сервер помечает в нужном элементе массива дату окончания лицензии, выдаёт её номер и отсоединяет клиента. В следующий раз эту лицензию можно бдет взять только после её окончания. Короче как DHCP
|
Время в течение которого клиент использует лицензию заранее не известно.
|
Время: 23:58. |
Время: 23:58.
© OSzone.net 2001-