• Как легко обмениваться сообщениями между Java приложениями?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Если нужна минимальная задержка то нужно отказываться от json в пользу бинарников, например protobuf. Максимально все урезать в сообщениях оставив только действительно важное. Желательно задействовать чистый udp по возможности, или если критичны потери взять tcp.

    Как вариант действительно простого решения можно попробовать kryonet, там и сериализатор из коробки довольно удобный.
    Ответ написан
    Комментировать
  • Как организовать ldap на базе ubuntu server?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    По хорошему как минимум нужно отказаться от убунты в сторону centos\debian\rhel, курить тонны манов и делать как надо. Как таковой универсальной инструкции не найти чтобы раз и заработало, будет куча подводных камней и несостыковок.
    Вариант чуть проще взять OpenSUSE, у нее есть графические оснастки для управления таким дерьмом не вникая в конфиги.
    Еще есть Zentyal но там могут быть проблемы с лицензией, когда трогал ее то там все очень интересно было в этом плане.
    Еще есть такая штука https://www.turnkeylinux.org/domain-controller , но лично я ей не пользовался, очень тепло о ней отозвался знакомый.
    Ну и как вариант на чем угодно поднять контроллер и налепить сверху webmin у которого есть дополнения для домена.
    Ответ написан
    Комментировать
  • Как смонтировать папки в Linux as Non root?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Смотри права и найдешь правду.
    Ответ написан
  • Как выучить java на углубленном уровне?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Раз коснулись строк то:
    - как они хранятся в jvm
    - где они хранятся в jvm
    - почему так сделали
    - чем отличается создание строки через String str = "stroka" от String str= new String("stroka")
    - много много таких же особенностей о которых нужно знать.
    Касательно строк в целом очень строго необходимо понимать как они работают т.к. с ними придется часто работать, кроме того незнание как они работают крайне сильно бьет по производительности программы.
    Ответ написан
    4 комментария
  • Java ключевое слово this, как работает?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Если я правильно настроился на волну тс то разжую доступными словами.
    Для начала нужно чтобы было правильное понимание происходящего в java а именно:
    1) в java всё есть объект, вот прям все все* . Это означает что абсолютно что угодно отнаследовано от класса Object
    2) есть(могут быть) различия того что именно содержится в классе в исходном коде и коде при выполнении программы а также после ее компиляции. Если простым языком то это может предстать так
    - в коде у класса есть только метод foo()
    - после компиляции оказывается что в нем после некоторых событий типа аннотаций появляется еще и метод bar(). Тут важно то что он появится * у всех инстансов от этого класса
    - при выполнении может оказаться так что метод foo() будет подменен другим кодом. Это уже рефлексия.
    - при выполнении может оказаться что у НЕКОТОРЫХ инстансов класса внутри окажется еще и метод mymethod(). Т.е. не у всех а именно у некоторых инстансов.
    3) при выполнении программы * для абсолютно всего ВСЕГДА создается явно или не явно инстанс, даже для статического класса. Т.е. ты в коде может и не создавал инстанс явно через new, это было сделано рантаймом гдето в недрах явы!
    4) статический класс отличается от обычного только тем что статический всегда указывает только и только* на 1 единственный инстанс
    5) super() , означает что будет вызов метода\конструктора РОДИТЕЛЯ
    6) super , БЕЗ СКОБОК, означает переход к переменным РОДИТЕЛЯ. Также можно вызвать и метод РОДИТЕЛЯ.
    7) this всегда указывает именно на текущий инстанс класса. Другими словами представь что класс это область видимости и когда ты пишешь this ты явно говоришь что это относится именно к этому инстансу а не классу.

    *гуру молчите что это не совсем так в особенных фундаментальных моментах
    инстанс - экземпляр класса, т.е. грубо говоря он создается через new явно или не явно

    Если всеравно непонятно то могу набросать примером простеньких. Также рекомендую почитать
    это и примеры тут

    Обобщая выше сказанное(с нюансами):
    - в java ВСЁ и ВСЕГДА это инстанс какого либо класса
    - исходя из пункта выше ВСЕГДА на любой класс существует хотябы один инстанс
    - исходя из пункта выше часто бывают случаи когда необходимо обратиться к переменной\методу родителя через super. Также возникают необходимости обратиться к методу\переменной именно этого конкретного инстанса или передать этот инстанс куда либо дальше не имея ссылки на этот инстанс.
    Ответ написан
  • Существуют ли платформы для обучения системному администрированию?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Виртуалки. Если хочется убить сразу много зайцев то устройся на работу подкопи рублей 15-20, купи xeon ядер на 10 и все остальное к нему у китайцев. Получишь:
    1) Неплохой комп себе любимому
    2) Пощупаешь безопасно серверное железо
    3) Надрочишься с виртуалками, а это нынче очень важно
    4) Сделаешь любой стенд в виртуалках и потыкаешь в ней все что хочется.
    Ответ написан
    1 комментарий
  • Что делают программисты на Unity целый день на работе?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Все как и везде. есть некий внутренний ресурс типа гитлаба в котором есть списки задач и списки багов. Тот кто старше рисует и назначает задачи, вот это джунам а это мидлам, так же с багами. Кодер пришел, открыл гитлаб и берет себе задачу или баг и бодается с ним.
    Сами задачи соответсвенно распределяются по сложности тем самым джунам\мидлам и т.д.
    В день необходимо сделать N задач а как ты их будешь делать уже твои проблемы. К примеру знаю что в эпаме такая ситуация, сделал быстро можешь даже домой свалить а если не успел то будь добр ишачь до последнего.
    Ответ написан
    Комментировать
  • Какие АТС у провайдеров связи?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Абсолютно разные, начиная от древних и заканчивая современными, так же и астериски\фрисвитчи и им подобные.
    Ответ написан
  • Когда подключать обработчики событий в JavaFX, если цели событий появляются динамически?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    А в чем сокральный смысл перетыкивать и создавать кучи обработчиков? Судя по коду у вас абсолютно одинаковый результат т.е.
    1) Нажали плюсик, появилась кнопка-картинка
    2) Нажали кнопку-картинку , выбрали картинку, появилась кнопка "ок"
    3) Кнопка "ок" делает System.out.println("Add activity");

    Отсюда следует что смысла так городить тоже нет потому как проще пойти другими путями =) Какими рекомендую пораскинуть мозгами самим. Только подскажу наводкой, классы можно переопределять и наследовать, можно хранить ссылку на выбранный объект и плясать от нее, можно объявить EventHandler и просто давать ссылку нужным компонентам а не создавать и плодить кучи EventHandler'ов.
    Ответ написан
  • Что можно использовать на VPS для быстрого развертывания из git репозитория?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    git pull && npm run build && /etc/init.d/supervisor restart site
    По желанию обернуть это в скрипт. Т.е. создать текстовый файл с расширением .sh внутри написать
    #!/bin/sh
    git pull && npm run build && /etc/init.d/supervisor restart site

    Дальше запускать его командой ./имя.sh . Желательно дать права на выполнение перед этим chmod +X имя.sh
    && управляющий оператор, т.е. если git pull выполнится без ошибок то выполнится npm run build, если npm run build выполнится без ошибок значит выполнится /etc/init.d/supervisor restart site. Если на любом этапе команда завершится ошибкой то последующие команды не будут запускаться.
    Ответ написан
    Комментировать
  • Как автоматически примонтировать папку после авторизации пользователя?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Autofs.
    Ответ написан
    Комментировать
  • Общий номер с переадресацией и минимальными вложениями?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Никак, забесплатно нынче даже навоза ненайдешь..
    Ответ написан
    2 комментария
  • Возможно добавить AUR или Arch linux репозиторий?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    В целом можно к любой но это будет крайне сложно и костыльно, кроме того работать также как в арче оно не будет по большей части т.к. очень вероятно что после установки гит версии какойнибудь мезы или llvm система вообще помрет.
    У каждого GNU/Linux своя философия и особенности устройства внутри. Все эти особенности какраз в том какое ядро и опции в нем, а также весь остальной софт с утилитами вокруг ядра. Отличается набор утилит, их версий и версий зависимостей при сборке.
    Ответ написан
    Комментировать
  • Как очистить таблицу TableView.Java?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    TableView только отображает данные из коллекции, следовательно отчисть коллекцию и все. Если пихаешь данные странными образами то коллекцию можно вытянуть и и почистить типа такого tableView_твой_инстанс.getItems().clear()
    Ответ написан
    2 комментария
  • Линукс, как написать свой "паровозик"?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Самый простой способ.
    1) Считаем число символов в терминале по высоте и ширине.
    2) Прикидываем сколько кадров будет анимация.
    3) Рисуем(пишем в блокноте) анимацию символами\буквами\цифрами с максимальной шириной и высотой полученными на шаге 1 и в числе кадров полученными на шаге 2.
    4) Получится к примеру 2 кадра.
    5) Пишем простой скрипт в котором используется минимальное число простейших консольных комманд в следующем виде:
    for (цикл равный числу кадров)
       clear (отчистить экран)
          for (цикл равный числу строк в кадре)
             echo (строка кадра)
       sleep (время в секундах которое надо подождать до следующего кадра)
    Ответ написан
    Комментировать
  • Как оптимизировать Unity проект для Samsung Gear VR так, чтобы при повороте головой ничего не тормозило (высокополигональных моделей нет)?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    1 Occlusion Culling
    2 Frustum Culling
    3 Не делать супермешы в которых вообще все. Плохой пример, один меш в котором весь декор комнаты. Хороший, каждому элементу декора комнаты свой меш.
    4 удалять в мешах неведимые полигоны. Как пример ящик, если не предполагается что он может быть перевернут то значит необходимо в его меше удалить всю нижнюю часть.
    5 меши которые будут созданы динамически заранее подгружать.
    Ответ написан
    Комментировать
  • Как вывести значение в ячейку TableView?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    nameM.setCellValueFactory(new PropertyValueFactory("имя_поля_в_MusicStruct"));
    Ответ написан
    3 комментария
  • Как с библиотекой java jlayer player проиграть отрывок песни?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Открыть документацию.
    Ответ написан
    Комментировать
  • Какая безопасная ОСь подойдет под мои нужды?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Самый самый простой способ во всех планах с наименьшим числом телодвижений:
    1) Купить Kingston DT2000/16GB или аналогичное. Хардварное шифрование, пинкод чтобы расшифровать, если пинкод ввели 10 раз неправильно данные уничтожаются без возможности восстановления.
    2)* Взять любой удобный дистрибутив и желательно заточенный под liveusb. Можно собрать самому или взять нечто готовое https://en.wikipedia.org/wiki/List_of_Linux_distri...
    3) Поставить и настроить в этом дистре весь необходимый софт.
    4) Перенести в tmpfs все что необходимо (с помощью overlayfs\unionfs).

    *можно затолкать все в cpio при должной сноровке но вопрос удобства обновлений\перенастройки\установки софта будет неудобным. В этом плане overlayfs\unionfs которая W делает в tmpfs намного удобнее, надо что то обновить\перенастроить\установить то просто отмонтируем оверлей и все.

    При желании для хранения пользовательских файлов можно кудалибо смонтировать через EncFS (на раздел этой же флешки\хард\да хоть на webdav от какого нибудь яндекса) нужную директорию.
    Ответ написан
  • Какую офисную мини-АТС выбрать? Panasonic NS500, Samsung 7200, 7070 или другую?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Глядя со своей колокольни как работающий с большим зверопарком разных цатс.
    1) сименс - ооочень крут, космически дорог(лицензии на каждый чих и каждую плату, даже бп и те с лицензиями), надежней не бывает, очень сильно сложен в конфигурировании. Если нужно докинуть плату спустя годы то это огромное приключение в виде обновлений системы и поисках именно нужной платы которую сложно найти и еще сложней купить. О ручном ремонте плат можно забыть, сервисов нет. Много подкапотных особенностей, к примеру такой что если пропал поток е1 то порт, упс, отключается програмно и надо его поднимать.
    2) самцы - по крутости так себе, дорог(лицензии на каждый чих и плату). Разобраться как конфигурировать в целом можно довольно быстро если есть познания терминов и понимания устройства телефонки. Сервисы можно найти. Комплектухи валом везде, с лицензиями намного сложнее в плане поисков и покупки. Ручной ремонт ну с сильным натягом выполним, недавно пару блоков питания оживили. Иногда бывают веселые глюки в самых неожиданных ситуациях.
    3) Протон-ССС Вектор (алмазы не щупал к сожалению). Дешевые, сертифицированные, делают в таганроке, сервис отличный. Вариаций плат под разные задачи валом и цена не кусается. Конфигурируется очень легко. Ремонтопригодность своими руками ну прям за милую душу. Лицензий нет как определения, воткнул плату и она работает. По стабильности (опыт с более чем 20 такими) интересный, в целом работают годами (до первых проблем гдето около 5-7 лет). Очень забавно с платами, производитель не штампует одну схемотехнику годами а находится в постоянной модернизации, т.е. можно купить пачку плат сразу или докупить через пару месяцев и все они будут отличаться схемотехникой координально, к слову схематически все просто супер и легко изза чего так просто ремонтировать своими силами за копейки. Есть подводные камни в конфигурации, в основном связанные с ДВО, достаточно часто есть вещи которые вроде бы есть и настраиваются но не работают или делаются абсолютно по другому. Отдельно замечу что документация довольно ущербная, с ошибками, многих моментов в ней нет но тем неменее разобраться даже без нее просто.

    В общем я бы рекомендовал протон вектор просто потому что в конечном счете дешевле, на всякий случай сертифицированы, есть платы для любой дичи(е1\3х пр\4пр и т.д.). Системники от lg\lg-ericson. Легко а главное быстро ремонтировать или воспользоваться сервисом(даже если срок уже вышел или нет договора). Конструктивно просто как кирпич из стали. Лишних свистоперделок нет. Запчасти в виде плат очень просто купить даже спустя годы т.к. они делают отличную совместимость(с некоторыми оговорками конечно).
    На вскидку для вашей задачи понадобится шасси, бп на 220в( или 48в\60в если захотите и промышленный ибэп цеплять), БУК (мозги), БАК 3 штуки(на каждой по 10 АК, абонетские платы), модуль БИКМ (для е1). По желанию КСТА (для системников) , КСЛА (8 СЛ комплектов). Еще можно вместо БАК набрать КСАЛ(2 СЛ + 6 АК).
    Ответ написан
    1 комментарий