У меня есть приложение для сокетов TCP, которое на стороне клиента отправляет огромные строковые сообщения на сервер одновременно. И сервер получает эти сообщения, записывая их в Access DB. Так что, если есть так много клиентов, серверная сторона не может правильно обрабатывать каждого клиента икогда-нибудь сервер сам закрывается.Я хочу спросить, есть ли способ сообщить клиенту поток перед отправкой сообщения, ожидающего очереди, если в очереди находится другой клиент. С этим сервером не нужно обрабатывать, например, запрос клиента 30 одновременно.
Дляпример;
- Клиент отправляет сообщение => Сервер обрабатывает 1 запрос клиента
- Клиент ожидает выполнения 1 запроса клиента, чем 2 Клиент отправляет сообщение => Сервер обрабатывает 1 запрос клиента
- Клиент ожидает выполнения 2 требований клиента ......
Моя проблема возникает при использовании доступа к базе данных.При открытии подключения для доступа сохранение данных в таблицы и закрытие базы данных занимает время, а сервер теряет работоспособность :) Если я не использую базу данных доступа, я могу без проблем получать огромные сообщения.