Это рефлексия. У тебя неизвестный тип класса Class type. Далее тебе нужно создать новый экземпляр его для этого и используется динамическое создание класса type.newInstance().
При обычном раскладе это было бы так MyDataClass type. и соответсвенно type = new MyDataClass();
Крайне удобная штука это корпоративная почта яндекса, там и личные ящики доменные и общие контакты и чат по xmpp. Сейчас уже сделали 2.0. но что там нового пока не вкурсе даже.
С софтовой стороны thunderbird(почта\чат\календарь\контакты\rss).
GIT ставите любой удобный но все же намного лучше использовать онлайновые к примеру bitbucket(до 5 пользователей халявно).
Всякие wiki\crm и т .д. как правило вообще нафиг ненужны и врядли кто то ими пользоваться будет, только что под палкой можно заставить будет. Да и кроме того все это в конечном счете выльется в постоянный допил этих сервисов вместо собственно работы.
Свой сервак лучше оставьте себе же для разработки под докеры и т.д. а важные вещи типа чата\почты\календарей\контактов\git намного удобнее и надежнее доверить гиганту просто в целях того чтобы это все в самый нужный момент не умерло и не упало.
Единственное что можно сделать это поднять свой маленький asterisk, загнать в него мультифон от мегафона. Профит будет от автоответчика\приветсвия\запись звонков\информатора и самое главное дабы распараллелить входящий звонок на всех. Еще не маловажное единый номер многолинейный и это исключит момент того что какойто заказчик вдруг внезапно захочет что то спросить и позвонит в 3 часа ночи(обычно те кто без своей АТС страдают от таких звонков т.к. пользуются личными телефонами и им потом начинают названивать).
1) Для начала отключить все ненужные девайсы через биос(встроенная сетевушка\звук...). 2) Выкинуть любые сетевушки и поставить нормальную от интела(bsd и вообще линуксовые да и вообще все очень любят интеловские карточки).
3) Покопаться в биосе и включить что то типа "interrupt swizzling"
Собственно ответ вы уже нагуглили, лучшее конечно netty. В ней есть абсолютно все необходимое, многопоточная и очень быстрая.
Другой вопрос если нужно что то в пару строк, то есть "обвязки" поверх той же netty к примеру kryonet.
Почитай про менеджеры компоновки. Если описываешь все в коде то смотри в сторону GridBagLayout. Если пользуешься визуальными редакторами ui то там вероятнее всего будет SpringLayout.
Совсем немного информации можно получить через Runtime.getRuntime().методы() но верить им крайне не рекомендуется!
Был еще замечательный проект SIGAR но кажется он умер.
И самый верный способ это написать нативную либу(dll\so\dylib) под нужную платформу а затем зацепить ее через JNI.
rb-750 и "клиентов ... ибо их будут сотни" как то не вяжется. Реализация тиковского ovpn желает оставлять лучшего ибо нет udp и lzo и скорость будет ужасающей но зато пинги будут лучше чем на wrt прошивках.
Теоретически можно попробовать следующее(не уверен что сработает):
1) На тике настраиваете сервер ovpn в режиме ethernet
2) Для тех кто будет подключаться массово по 1 ключу\паролю делаете единую учетку и раздаете адреса из пула1(к примеру 192.168.51.0/24) для них. В фаирволе рубите любые конекты(к примеру ваша lan 192.168.50.0/24) кроме нужного до "одного ПК"(к примеру 192.168.50.100).
3) "Другие клиенты которые должны видеть всю сеть", делаете уникальные учетки для них и ручками назначаете индивидуальные ip каждому но в пределах единого пула(к примеру 192.168.52/0.24) Фаирволом естественно рубить уже ничего не надо для них.
Фаирволл в любом случае придется задействовать иначе будет дыра в виде того что шибко умный сможет прописать роут на подсеть локалки и получить к ней доступ. Фаирвол в тиках очень приятный и разобраться в нем не составит никакого труда совсем(во всяком случае в нем в разы проще разобраться с нуля чем iptables).
Судя по графикам отваливаются клиенты. Отвал идет сразу у 3х клиентов разом или каком то одном?
Как варианты возможного решения:
1) Почистить логи и счетчики(очень редко но бывает что проблема тут кроется)
2) Если не задан жестко канал и частота то задать. Возможно АР или клиенты пытаются спрыгнуть на менее зашумленный канал поэтому пробуй жестко задать везде одинаковую частоту и канал.
3) Попробуй помониторь сигнал от АР в моменты провалов, не пропадает ли сигнал от нее. Возможно проблема железная и радиомудуль начал глючить.
В каждый офис своя подсеть, между тиками впнки на любой вкус, трафик заворачивайте обычными роутами по подсетям каждого филиала, остальной трафик также заруливаете по желанию куда угодно.
Может как вариант сделать PPPoE? Ведь полюбому позже одному из начальников придет "светлая" мысль продавать скорость чуть больше чем есть базово у всех =)
А вообще да, то что вы написали в виде отдельного dhcp и очереди будет достаточно для такой задачи. Хотя как другой вариант можно убрать очереди и выпускать в инет через правило фаирвола урезая скорость на внешку но как по мне это еще большее зло чем очереди.
1) Тут есть теги для кода.
2) Лучше используйте конструкцию try-with-resources
3) До конца не уверен т.к. желательно понять как именно приведенный код используется но сильно вероятно что проблема именно с ресурсами, что то закрыл или не открыл.
3.1) Еще не менее вероятно проблема в проксях, возможно дохлая прокси и соединение по таймауту не отшибается и тупо начинает ждать когда же он придет.
3.2) Проверяй responseCode . Сначало делаешь conn.connect(). затем conn.getResponseCode(). Смотри что бы код ответа был правильным.
3.3) Обязательно задай вручную таймаут conn.setConnectTimeout(милисекунд) и только после уже все манипуляции в т.ч. получение responseCode;