• Как сервер отправляет данные клиенту?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    У TCP есть не только IP-адрес, но ещё и порт. Как со стороны сервера, так и со стороны клиента. Если со стороны сервера порт обычно задан статически (например 80), то со стороны клиента он выбирается динамически из не занятых. В результате, каждый клиент получает свою уникальную пару IP-порт, по которым сервер и отправляет пакеты клиентскому сокету. Тем самым мы можем иметь кучу клиентских соединений на одном компьютере, различающиеся разными клиентскими портами на каждое соединение к одному серверу.
    Ответ написан
    Комментировать
  • Как подключить floppy-дисковод к современному ПК?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Переходников нет. Легче купить новый, например usb.
    Ответ написан
    Комментировать
  • Как мониторить изменение прав доступа к файлам linux?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Комментировать
  • Как реализовать проверку четырехугольника на вырожденность в Java?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну, если хоть одна узловая точка совпадает - прямоугольник вырожденный!
    Arraylist points = new Arraylist();
    points.add(p1);
    ..
    points.add(p2);
    
    Iterator<String> iter = points.iterator();
    while(iter.hasNext()){
     Point p = iter.next());
     iter.remove();
     if(points.contains(p)) return true; // здесь определяем, что точка равна еще какой-то точке.
    }
    Ответ написан
    Комментировать
  • При чтении файла в java программа компилируется, но результата нет, что делать?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Вот почему, ну почему, на любых курсах по программированию, не важно ява или какой другой язык, не учат пользоваться отладчиком, или хотя-бы принты расставлять во все места?!
    Господа и господицы, тичеры, тичерицы, коучеры, коучерицы - ну обучайте же в самую первую очередь на примере "Хелл программинг уорльд" отлаживать свои поделия всеми возможными способами.
    С явой отдельный разговор, в ней отладчик в каждой ИДЕ торчит немым укором, и кнопочка рядом - только бреакпоинт воткнуть.
    Ответ написан
    1 комментарий
  • Какие технологии повышенной надёжности нынче используют в оборонных/промышленных предприятиях?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    За оборонные не скажу, не знаю. А на промышленных предприятиях все очень просто. В мире контроллеров доминирует только один язык программирования - С!
    Что касается роботов и систем промышленной автоматизации, то очень часто используется блочное программирование на одном из языков МЭК/IEC типа 61131, 61499 и тэдэ. Все это интерпретируется в интерпретаторах на стороне контроллера и разрабатывается в каком нибудь SCADA. Интерпретаторы часто пишутся тоже на С, иногда C++ :)
    Все встроенные операционные системы и системы реального времени тоже написаны на С, изредка на С++.
    А чтобы все работало надежно, желательно, чтобы компания сертифицировалась на CMMI или ISO 11540 или ISO 33001 - https://ru.wikipedia.org/wiki/ISO/IEC_15504
    Часто, если системе позволяют ресурсы, разрабатывают на Java или Net. Иногда всякие разновидности паскаля, но это очень очень редко.

    Специальных языков типа forth, я вообще не встречал, ибо просто нет специалистов!
    Также не разрабатывают на на lisp, ибо та же беда - специалисты!

    Все знают С - с ним и колупаются. Даже C++ редко используют!
    Ответ написан
    4 комментария
  • Как перевести ПК в спящий режим при получении сигнала по USB?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну, коли в теме ARDUINO, то посоветую.
    1) Берете ардуинку
    2) ставите ее перед UPS
    3) подключаете ее к домашней сети
    4) как только напряжение пропадает, ардуинка приказывает долго жить
    5) с компа постоянно пингуете ардуинку
    6) ардуинка не пингуется - выключаем комп
    7) напряжение появляется - ардуинка снова на связи.
    Ответ написан
    1 комментарий
  • Как процессы используют мьютекс?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Вариантов три (в posix), настраивается через pthread_mutexattr_settype()
    - PTHREAD_MUTEX_NORMAL блокировка при попытке захвата - поток будет ждать, пока ресурс не освободится
    - PTHREAD_MUTEX_RECURSIVE рекурсивный захват - тот же самый поток сможет повторно захватить русурс
    - PTHREAD_MUTEX_ERRORCHECK вылет с ошибкой, если ресурс занят

    Ну и ненужно забывать, что есть еще и семафоры, у которых есть счетчик. Например, блокировать доступ, если уже 5 потоков или процессов захватили семафор.

    А , еще забыл, если процессы, то для этого есть shared memory - туда и помещать семафоры и мьютексы. С мьютексами не уверен точно, а вот семафоры туда нужно !
    Ответ написан
    Комментировать
  • Можно ли пользоваться флешкой (перекидывать файлы), если на ней будет установлена ОС?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, можно, если она не в формате ISO, к какой-то разумной файловой системы.
    Ответ написан
    Комментировать
  • Из за чего в Intel массивом на сервере, виден только один жесткий диск?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ваш ответ в вопросе 7!
    1) нужно точно знать марку и производителя контроллера RAID
    2) программу управления нужно брать от производителя контроллера, или производителя сервера (если контроллер наплатный)
    3) тип и марку можно посмотреть двумя путями
    - залезть в сервер фиизчески и посмотреть на установленные платы и марку материнской платы
    - посмотреть в "оборудовании" в системе
    или посмотреть на сам сервер, там на этикеточках обычно пишут, кто произвел и что стоит...
    4) поставить правильную утилиту управления и через нее, и только через нее, лезть в raid.
    Ответ написан
    Комментировать
  • Заменил коннектор, пропал интернет, почему?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Что за бесконтактный коннектор? Если дешевле 150 рублей за штуку, то можете его просто выкинуть. Позвоните провайдеру, тот придет с хорошей обжимкой и разъемами. Без обжимки или дорогих "полевых безобжимных" коннекторов работать не будет.
    Ну а по делу:
    - удалять нужно только внешнюю оболочку
    - оголять контактные проводники не нужно
    - нельзя расплетать жилы больше, чем на 3 сантиметра от разъема
    - после удаления, аккуратно выровнять все жилы, разложить по цветам пары проводов
    - цвета могут быть по annex A или по annex B (обычно второй), но они не взаимозаменяемы, лучше смотреть на другой стороне кабеля
    - две пары по annex B переплетаются в разъеме между собой бело-синий - синий и бело-зеленая - зеленая!
    - сами жилы по annex B: бело-оранжевый - оранжевый, бело зеленый - синий, бело-синий - зеленый, бело-коричневый - коричневый
    - разложенные пары по цветам ровно обрезаем и заправляем в разъем, если разъем полевой, то после вставки делаем дополнительную ровную обрезку, обжимаем или придавливаем крышку.
    - проверяем тестером или вставляем в порт компьютера
    Ответ написан
    5 комментариев
  • LVM уменьшить размер?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    XFS? А! Да, ее нельзя уменьшить, только расширить, в отличии от ext3/4.

    Вариант только один:
    - копируем данные
    - отмонтируем раздел
    - сносим логический том
    - создаем новый нужного размера
    - форматируем
    - копируем данные обратно

    И да, на будущее, XFS конечно же хороша (особенно автоматической дефрагментацией), но EXT4 совсем не хуже, что говорят те пол петабайта данных в наших рабочих хранилищах!
    Ответ написан
    7 комментариев
  • Безопасно ли хранить верификационные коды в БД?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Вообще-то лучше эти коды в базе не хранить, не потому, что несекурно, а потому, что там они вообще не нужны. Если хочется секурности, то шифруйте по ключу из приложения.
    Ну а хранить можно в redis например. Там на ключ можно прописать время жизни (TTL).
    Ответ написан
    2 комментария
  • Как спарсить данные из PDF таблицы?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Увы, извлечь нормально не получится. (на этот вопрос я регулярно здесь отвечаю)
    Ибо - pdf не знает про таблицы абсолютно ничего, он язык для препринта, в нем кроме текста, шрифтов, блоков и графических примитивов вообще ничего нет! Соответственно в нем данные абсолютно не структурированы.
    Ответ написан
  • Как запретить запись на диск для определенных программ в Linux?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Да можно. В разных дистрибутива могут работать немного различающиеся механизмы контроля доступа selinux (redhat и основанные на нем) и AppArmor (debian, Ubuntu и соплеменики). С другой стороны, все реализуется почти на одних и тех же механизмах ядра.
    Есть ещё отдельно castle grade Linux на rbacl от АНБ.
    Ответ написан
    2 комментария
  • Почему не выходит запустить html файл в docker?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    1) tomcat - сервер web-приложений, которые написаны на яве, да и сам сервер тоже написан на яве. В нем нельзя запускать html, а можно запускать war или jar-файлы!
    2) html вообще запускать нельзя! его можно только публиковать на web-сервер, который его будет отдавать. Рекомендую это делать например через nginx или apache http или nodejs.
    3) не рекомендую раздавать html через tomcat, если Вы не программируете на java и связанных с JVM языками программирования (kotlin, groovy, clojure и т.д.)
    Ответ написан
    4 комментария
  • Установка трёх ос на один ПК. Что требуется?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    А почему бы не работать в виртуалках? Ставите линукс основной системой, а остальные пускает в виртуалках под libvirt + kvm
    Ответ написан
    Комментировать
  • Какую систему мониторинга серверов используете вы?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Я использую связку grafana + influxdb + (telegraf/collectd).
    1) не нужно практически ничего настраивать, ну кроме самих графиков и url подключание я influxdb
    2) все ставится за 15 минут, с раскомментированием нужных модулей в конфигах.
    3) в telegraf полно плагинов для сбора статистики с практически любого ПО, в collectd также.
    4) если нужны оповещения ставлю kapacitor из то-го же стека. вот с ним нужно немного повозиться, чтобы слал что и куда нужно.
    5) да, все можно запустить в контейнерах
    Мониторю кластер из порядка 40 вычислительных серверов и хранилище CEPH.
    Ответ написан
    Комментировать
  • Почему так сильно лагает RDP на linux?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Поставьте или x2go или xspice, или и то и другое вместе. И не парьтесь с rdp под линухом.
    Ответ написан
    2 комментария
  • Как восстановить данные после dd?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Боюсь, что все очень, и очень плохо. Есть конечно утилиты, которые по содержимому выдитают информацию... Но, думаю, что дело - швах. Делайте бекапы в следующий раз....
    Ответ написан
    Комментировать