Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
ilshatkin Member Откуда: Сообщений: 177 |
Коллеги, подскажите, приложение на asp.net и ms sql расположены на одном сервере. При регистрации пользователя указывается путь к ms sql. Могу прописать наименование этого компьютера или его ip. Подскажите, пожалуйста, если я укажу ip, то как будет происходить обращение. Вначале выход в интернет и возвращение обратно с какого то роутера или вообще запрос не будет выходить за пределы сервера? Интересует, есть ли разница. |
12 фев 21, 14:03 [22280007] Ответить | Цитировать Сообщить модератору |
komrad Member Откуда: Сообщений: 5495 |
ilshatkin, При указании имени хоста и использовании tcp, в общем будет произведено hostname resolution, что требует запроса к DNS. Если использовать localhost, hostname или что-то, внесенное в файл hosts, то, полагаю запроса к DNS не будет. При указании IP подключение будет прямое; в данном случае, выхода за пределы хоста не будет. |
12 фев 21, 15:05 [22280070] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8311 |
ilshatkin, можно использовать для SQL символическое имя . (точка) или (local) для подключения к локальному серверу. |
12 фев 21, 15:33 [22280094] Ответить | Цитировать Сообщить модератору |
ilshatkin Member Откуда: Сообщений: 177 |
komrad, то есть Data Source=??.206.14.184 или Data Source=Leibniz по сути разницы нет? |
12 фев 21, 17:01 [22280156] Ответить | Цитировать Сообщить модератору |
komrad Member Откуда: Сообщений: 5495 |
если у вас в консоли сервера команда hostname выдает Leibniz или эта пара (host&ip) прописана в файле hosts , то разницы нет только учтите, если этот IP динамический, то лучше использовать имя хоста и будет обращение к DNS за IP адресом Сообщение было отредактировано: 12 фев 21, 17:34 |
||||
12 фев 21, 17:39 [22280169] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8311 |
ilshatkin,
Насколько я помню, если в таблице маршрутизации прописан loopback на 127.0.0.1, то запрос в интернет не уйдёт. А он по умолчанию прописан. |
||
12 фев 21, 18:09 [22280178] Ответить | Цитировать Сообщить модератору |
ilshatkin Member Откуда: Сообщений: 177 |
Да, ip постоянный. Спасибо, ну в целом понял, что заморачиваться не нужно, писать везде ip и ладно. Так мне на самом деле удобнее, потому что бывает нужно зайти под пользователем и приходилось переписывать с имя хоста на ip, чтобы с тестового сервера шли запросы в БД куда надо. |
12 фев 21, 18:31 [22280194] Ответить | Цитировать Сообщить модератору |
komrad Member Откуда: Сообщений: 5495 |
ну раз удобно, то ок однако, обычно используют имя хоста или вообще DNS alias, во избежание зависимости от IP адреса (смена подсетей, переезд на другое железо и т.п.) |
||||
12 фев 21, 18:44 [22280200] Ответить | Цитировать Сообщить модератору |
uaggster Member Откуда: Сообщений: 950 |
Если приложение всегда будет на том же хосте, что и сервер, обращайтесь к нему через . (точку), и разрешите на сервере протокол shared memory (впрочем, он разрешен по умолчанию). Обращение к серверу будет идти быстрее. В случае множества мелких вызовов, типа "вытащить миллион записей по одной" - вообще на порядок, как не на пару порядков быстрее. |
||||
15 фев 21, 08:53 [22280926] Ответить | Цитировать Сообщить модератору |
ilshatkin Member Откуда: Сообщений: 177 |
uaggster, Спасибо за совет. Есть ли объяснение, возможно ли произвести замеры? |
21 фев 21, 12:58 [22284375] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8311 |
ilshatkin, объяснение чему? Что Вам мешает провести замеры? |
21 фев 21, 13:57 [22284393] Ответить | Цитировать Сообщить модератору |
ilshatkin Member Откуда: Сообщений: 177 |
Владислав Колосов, объяснение тому что через точку быстрее чем через ip. Я не знаю как делать замеры, поэтому и советуюсь здесь. |
21 фев 21, 15:09 [22284413] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8311 |
ilshatkin, натурным экспериментом, как же еще. Сделайте вставку миллиона строк с тем или иным протоколом с замерами времени. |
21 фев 21, 16:10 [22284429] Ответить | Цитировать Сообщить модератору |
uaggster Member Откуда: Сообщений: 950 |
В случае, если приложение и сервер находятся в пределах одной машины, и для mssqlserver разрешен протокол shared memory - обращение происходит через него, минуя стек tcp/ip. Ускорение заметно, прежде всего, если приложение интенсивно порождает множество коротких транзакций. Например 1C сервер приложений очень такое любит. Точнее, программисты 1С, которые любят обработать эдак миллион строк в стиле "от записи к записи". |
||||
21 фев 21, 19:14 [22284507] Ответить | Цитировать Сообщить модератору |
ilshatkin Member Откуда: Сообщений: 177 |
uaggster, понял, спасибо! Перевожу на точку. |
22 фев 21, 12:31 [22284681] Ответить | Цитировать Сообщить модератору |
invm Member Откуда: Москва Сообщений: 9633 |
|
||||
22 фев 21, 13:09 [22284710] Ответить | Цитировать Сообщить модератору |
Dimitry Sibiryakov Member Откуда: Сообщений: 52443 |
Через латентность канала общения с сервером. |
22 фев 21, 14:54 [22284761] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8311 |
ilshatkin, точка тут не при чём. Это псевдоним. Включите протокол Shared Memoryв конфигураторе сервера и передвиньте его наверх в списке. |
22 фев 21, 15:42 [22284776] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8311 |
На продолжительность неявной транзакции (а это происходит при единичных вставках, как правило) задержки подачи команд не оказывают никакого влияния. |
||||
22 фев 21, 15:45 [22284778] Ответить | Цитировать Сообщить модератору |
invm Member Откуда: Москва Сообщений: 9633 |
И то на локальном сервере разница будет практически незаметной. |
||||
22 фев 21, 16:09 [22284787] Ответить | Цитировать Сообщить модератору |
uaggster Member Откуда: Сообщений: 950 |
Именно так 1С сервер себя и ведет. А вот по поводу "незаметной" - не согласен. Там разница - процентов 30 набегает. |
||||||||
23 фев 21, 17:54 [22285242] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |