Я использую Golang с FreeTDS, используя драйвер ODBC от brainman (http://code.google.com/p/odbc)
Все отлично работает, пока не тестирую коробку.
Затем я получаю следующую ошибку:
{01000} [unixODBC] [FreeTDS] [SQL Server] Невозможно открыть сокет SQLDriverConnect: {08001} [unixODBC] [FreeTDS] [SQL Server] Невозможно подключиться к источнику данных
Кажется, что когда я пытаюсь запустить несколько одновременных запросов к драйверам FreeTDS / unixODBC, это не удается. Это что-то работоспособное, или unixODBC и FreeTDS нельзя использовать в производственных средах?
odbc
удерживает сокеты TCP, содержащиеся в создаваемых им объектах подключения, до тех пор, пока они не будут собраны мусором. Не могли бы вы это проверить? 1) Увеличить ограничение на количество открытых файлов для пользователя, чья учетная запись используется для запуска стресс-теста; 2) Используйтеnetstat
илиss
, чтобы проверить, сколько ожидающих TCP-соединений у вашего приложения. И, наконец, подумайте о том, чтобы добавить его в список рассылки Go и показать исходный код. - person kostix   schedule 05.11.2013