Сейчас я экспериментирую с этим кодом (знаю, что он не подходит). Я попытался отправить из 3 источников одновременно (UDP Test Tool), и это кажется нормальным, но я не хочу знать, как это будет вести себя, если из этих 10K возможных клиентов 2K отправляют одновременно? Пакеты имеют размер примерно 70 байт. Я должен проделать несколько простых операций с содержимым и записать результаты в базу данных.
public class Test {
public static void main(String [] args){
int PACKETSIZE=1400;
int port=5555;
byte[] bytes = new byte[PACKETSIZE];
//ByteBuffer bb = ByteBuffer.allocate(4);
//Byte lat=null;
try
{
DatagramSocket socket = new DatagramSocket(port);
System.out.println("The server is runing on port " + port +"\n");
while (true)
{
DatagramPacket packet = new DatagramPacket(bytes, bytes.length);
socket.receive(packet);
System.out.println("Packet length = " + packet.getLength());
System.out.println("Sender IP = " + packet.getAddress() + " Port = " + packet.getPort());
for(int i=0; i<=packet.getLength();i++){System.out.print(" "+ packet.getData()[i] + " ");}