Я реализовал сервер веб-сокетов, используя сетевые сокеты Alchemy, и теперь я пытаюсь подчеркнуть его. Я написал следующий метод в C# для создания многочисленных клиентов для подключения к серверу и отправить некоторые данные:Сообщения веб-сокета не все получаются
private void TestWebSocket()
{
int clients = 10;
long messages = 10000;
long messagesSent = 0;
String host = "127.0.0.1";
String port = "11005";
WSclient[] clientArr = new WSclient[clients];
for (int i = 0; i < clientArr.Length; i++)
{
clientArr[i] = new WSclient(host, port);
}
Random random = new Random();
var sw = Stopwatch.StartNew();
for (int i = 0; i < messages; i++)
{
clientArr[i % clients].Send("Message " + i);
messagesSent++;
}
sw.Stop();
Console.WriteLine("Clients " + clients);
Console.WriteLine("Messages to Send" + messages);
Console.WriteLine("Messages Sent " + messagesSent);
Console.WriteLine("Time " + sw.Elapsed.TotalSeconds);
Console.WriteLine("Messages/s: " + messages/sw.Elapsed.TotalSeconds);
Console.ReadLine();
for (int i = 0; i < clientArr.Length; i++)
{
clientArr[i].Disconnect();
}
Console.ReadLine();
}
Однако сервер получает меньше сообщений (даже с небольшим числом, например, 100). Или иногда несколько сообщений принимаются в виде одного сообщения, например:
Сообщение1 = а message2 = Защита
Received As = ABCDEF
Я пытаюсь более или менее повторить пример, показанный here , На данный момент сервер и клиент работают локально. Любые идеи о том, что проблема или о том, как улучшить метод тестирования?
Хорошо, так что это не проблема на моем конце, спасибо за помощь, я попробую использовать альтернативную реализацию веб-сокета. – Matt