|
Получение ID
|
|||
---|---|---|---|
#18+
есть web-сайт, отслеживающий посещения и действия пользователей (клики, переходы). Есть база MS-SQLServer 2000, в которой все эти данные храняться. Изначально все это крутилось на одном сервере. Возникла необходимость разнести по отдельным серверам сайт и базу, да еще и отказаться от непосредственных запросов к базе со страниц сайта. Но проблема в том, что когда на сайт заходит новый пользователь, соответственно начинается новая сессия, надо в базе создать новую запись про эту сессию и вернуть идентификатор созданной сессии. Как бы сделать так чтобы идентификатор вернулся как можно быстрее, а запись в базу была асинхронной? Использовать что-нибудь типа кэша ID или что-нибудь еще посоветуете? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2005, 14:04 |
|
Получение ID
|
|||
---|---|---|---|
#18+
Вы уверены, что один запрос к БД на другом сервере критичен для производительности? Если да, то либо 1. Огромная посещаемость, десятки тысяч хитов в сутки. Ух, хотелось бы поучаствовать в таком проекте! 2. Что-то где-то не совсем оптимально? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2005, 19:18 |
|
Получение ID
|
|||
---|---|---|---|
#18+
а что ГУИД не подходит? генеряем где-то ГУИД, отдаем кому надо, а потом как-нибудь после асинхронно записываем его в БД ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2005, 19:26 |
|
Получение ID
|
|||
---|---|---|---|
#18+
tan_kyКак бы сделать так чтобы идентификатор вернулся как можно быстрее, а запись в базу была асинхронной? Использовать что-нибудь типа кэша ID или что-нибудь еще посоветуете? Ну если уж ТАК критична скорость записи (что не верится), то на сервере, где крутится web-сайт, запускайте отдельный процесс, который: 1) получит идентификатор и сразу его вернет web-сайту 2) запишет в базу все что нужно (уже после возвращения идентификатора) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2005, 16:11 |
|
|
start [/forum/topic.php?fid=33&msg=33307411&tid=1549551]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
142ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 260ms |
0 / 0 |