Оцените задумку

Discussion in 'Болталка' started by cupper, 11 Dec 2010.

  1. cupper

    cupper Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    369
    Likes Received:
    92
    Reputations:
    5
    Делаю щас небольшой проект в качестве самообучения.
    Цель: картотека персона-адрес. В БД храняться пользователи, адреса, и они както там связаны между собой. Можно получить пользователя, получить его адреса. Добавить удалить и т.д. что взбредет в голову.

    Реализация:
    клиент - сервер - БД

    Про БД уже написал.
    Цель сервера: в нем реализованы сущности описывающие персону, адрес, связи между ними, и прочие второстепенные классы. Сервер запрашивает у БД нужные данный, представляет их в какойто виде, делает с ними чтото (например сжимает, шифрует...) и отсылает клиенту.
    Цель клиента: клиент, ничего не знает о БД, он обращается только к серверу получает от него данные и показывается пользователю, чтото делает, и отправляет обратно серверу или нет.

    Зачем оно все так сильно закручено.
    1. Отделить клиентскую часть от БД, от того что и как в ней реализованно, и оперировать только с конечными сущностями.
    2. Сервер выступает в качеств прослойки, таким образом при любых изменяниях в БД или самом сервере сущности отсылаемые клиенту не меняются и как бы не нужно обновлять все клиентов.
    Так же сервер может выступать в качестве жирного клиента, и производить например сложные какието манипуляции с данными, снимая нагрузку с БД и с клиента.
    Можно развернуть несколько таких серверов на разных серверных станциях таким образом разделив нагрузку между ними.
    3. Клиент когда конектиться к серверу получает степень загруженности сервера и данные для конекта к менее загруженному серверу. таким образом нагрузка распределяется равномерно между всеми серверами.
    Схематично это можно нарисовать так
    Code:
    клиент клиент клиент клиент
      |   /          /       /
       сверер   сервер   сервер
         \       |        /
                БД
    
    Что скажите, не слишком надуманный пример ?)
     
  2. EviJI

    EviJI Banned

    Joined:
    8 Jun 2009
    Messages:
    81
    Likes Received:
    39
    Reputations:
    2
    Интересно, но зачем изобретать велосипед? Это уже сделано до вас раз этак 9999...
     
  3. cupper

    cupper Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    369
    Likes Received:
    92
    Reputations:
    5
    Делаю щас небольшой проект в качестве самообучения.
     
  4. AnGeI

    AnGeI Elder - Старейшина

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    SQL_SERVER
     
  5. cupper

    cupper Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    369
    Likes Received:
    92
    Reputations:
    5
    что SQL_SERVER ?
     
  6. cupper

    cupper Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    369
    Likes Received:
    92
    Reputations:
    5
    заебись, может тогда вообще не парится и пойти капать картошку ?
     
  7. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    Впринципе ничего тут сложного нет, писал подобное=)
    Главный вопрос как реализовать связь между сервером и клиентом, вариантов много...
     
  8. cupper

    cupper Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    369
    Likes Received:
    92
    Reputations:
    5
    boost::serialization + boost::asio
     
  9. waik

    waik Elder - Старейшина

    Joined:
    2 Nov 2008
    Messages:
    405
    Likes Received:
    163
    Reputations:
    12
    Ну и что что велосипед.
    Все ведь по разному эти велосипеды делают.Чем их больше(велосипедов) тем лучше!
     
  10. mrxh8

    mrxh8 New Member

    Joined:
    16 Apr 2009
    Messages:
    69
    Likes Received:
    4
    Reputations:
    0
    я тоже люблю велосипеды! самообучение вещь хорошая!
    тема правда изъезженная... я бы посоветовал, что-нибудь менее распространенное придумать! просто, на стадии формирования идеи проекта неплохо бы подумать, а как и кто, и будет ли вообще это вот использовать! "на полку" не очень хорошо что-то делать, не интересно...