• Как проанализировать большие файлы json?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, ES однозначно подойдет!!! Есть одно маленькое НО - нужно (очень желательно) писать маппинг, хотя мапинг по умолчанию бывает очень ничего (у каждого поля есть .raw свойство: по которому можно искать полной фразой).

    С другой стороны, даже если сначала мапинг правильный не сделаете, всегда данные можно перелить в другой индекс с правильным мапингом.
    Ну и json-файлы с разной структурой заливайте в разные индексы. Искать можно сразу по нескольким индексам.
    Ответ написан
    1 комментарий
  • Где найти файл большого объема, с большой скоростью?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Для такого есть генераторы трафика, например iperf. Запускаете с одной и с другой стороны и смотрите скорость.
    Ответ написан
    Комментировать
  • HashMap Java суть использивания?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Это реализация словаря ключ-значение. Используется везде, например для сопоставления имени-значения, в качестве хешей, кешей и просто для хранения. Самое простое, хранение например пар значений имя_сервера- ip_адрес, мы всегда из словаря по имени можем получить ip.
    Ответ написан
    Комментировать
  • Как работают real time приложения в Java?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Тут все зависит от архитектора и архитектуры.
    Собственно, все практически тоже самое, берется очередь, и на нее сажаются воркеры.
    Сами очереди есть в любом JEE контейнере. Также в любом JEE контейнере можно запустить нужное количество воркеров. Т.е. это вот все уже заложено в саму спецификацию JEE, также есть куча разных реализаций как очередей, так и контейнеров, которые поддерживают единый API взаимодействия. Есть jboss, glassfish и еще добрый десяток реализаций. Это так сказать традиционный путь. Здесь мы получаем единый механизм управления, деплоя и взаимодействия в рамках экосистемы.
    Также можно все тоже самое реализовать и в связке с rabbitMQ и просто плодить процессы в качестве воркеров. А можно и из контейнера подцепиться к тому же самому rabbitMQ.

    Не знаю, получилось ли ответить на ваш вопрос.
    Ответ написан
    3 комментария
  • Как в PostgreSQL выбрать значения значения которые есть в массиве, но нет в БД?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Проще всего, и дешевле по ресурсам, это сделать не на стороне базы, а программно.
    Например, на питоне это займет всего одну строку
    >>> set([1,2,3,4,5,6,7]) - set([1,2,3,4,5])
    set([6, 7])
    >>>

    PS. вытащить все ID можно одним запросом select ID from mytable

    PPS. Сравнение на миллионе ID - заняло 166 милисекунды
    MacBook-Pro:~ leah$ python -m timeit 'set(range(1,1000022)) - set(range(1,1000000))'
    10 loops, best of 3: 166 msec per loop
    MacBook-Pro:~ leah$
    Ответ написан
  • По какой причине зависают все принтера в офисе?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Посмотрите, не гуляет ли у вас мультикаст с камер. И если гуляет, то или запретите его нафиг, или настройте IGMP-snooping на коммутаторах. Хотя последнее и так сделать надо бы. Ну и камеры бы в отдельную изолированную подсеть и VLAN (хотя с мультикастом это не поможет, только выносить за роутер или настройка IGMP)
    Ответ написан
  • Что не так с сетью?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Смотрите в сторону DHCP сервера. Если в качестве сервера выступал роутер, то следует перезагрузить ВСЕ компы и сетевые железки в офисе, что-бы они получили новые IP-адреса. Также, посмотрите на диапазон раздаваемых адресов, его банально может не хватать.
    Также, если рандомная машина перестала работать в сети, посмотрите ее IP-адрес и в этот самый момент попробуйте попинговать этот IP с соседней машины. Через таблицу arp выясните MAC-адрес машины, у которой совпадают IP.

    Если больше не хотите возиться с такой проблемой в дальнейшем, то включите на всех коммутаторах DHCP-snooping и уменьшите время аренды IP до 10-30 минут.

    PS. И да, при месячном зарплатном бюджете в 3.5 лям/руб можно позволить себе 3-5 управляемых коммутаторов, это не отъест и 10% от этой суммы. А размазав в годовые капитальные вложения, и вообще заметно не будет.

    И конечно же Zyxel keenetic lite 3, немного не та железка на такое количество оборудования, посмотрите на роутеры ubiquity или microtik хотя бы, тысшьь за 10-15, хотя можно задуматься и о простой сиське или юнипере.
    Ответ написан
    Комментировать
  • Откуда сайты для нахождения информации по IP берут информацию?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну, как-то так
    MacBook-Pro:~ leah$ host habrahabr.ru
    habrahabr.ru has address 178.248.237.68
    habrahabr.ru mail is handled by 10 mxs.habramail.net.
    MacBook-Pro:~ leah$ host toster.ru
    toster.ru has address 178.248.232.5
    toster.ru mail is handled by 10 mxs.habramail.net.
    MacBook-Pro:~ leah$ whois 178.248.232.5
    % IANA WHOIS server
    % for more information on IANA, visit http://www.iana.org
    % This query returned 1 object
    
    refer:        whois.ripe.net
    
    inetnum:      178.0.0.0 - 178.255.255.255
    organisation: RIPE NCC
    status:       ALLOCATED
    
    whois:        whois.ripe.net
    
    changed:      2009-01
    source:       IANA
    
    % This is the RIPE Database query service.
    % The objects are in RPSL format.
    %
    % The RIPE Database is subject to Terms and Conditions.
    % See http://www.ripe.net/db/support/db-terms-conditions.pdf
    
    % Note: this output has been filtered.
    %       To receive output for a database update, use the "-B" flag.
    
    % Information related to '178.248.232.5 - 178.248.232.5'
    
    % Abuse contact for '178.248.232.5 - 178.248.232.5' is 'abuse@qrator.net'
    
    inetnum:        178.248.232.5 - 178.248.232.5
    netname:        QRATOR-903
    descr:          0
    descr:          0
    country:        RU
    admin-c:        LA27-RIPE
    tech-c:         AA8879-RIPE
    status:         ASSIGNED PA
    mnt-by:         MNT-QRATOR
    created:        2012-11-09T15:11:32Z
    last-modified:  2012-11-09T15:11:32Z
    source:         RIPE # Filtered
    
    person:         Alexander Asimov
    address:        1-y Magistralnyy tupik 5A, Suite D/304
    address:        Moscow 123290
    address:        Russian Federation
    mnt-by:         MNT-QRATOR
    phone:          +7-499-241-81-92
    nic-hdl:        AA8879-RIPE
    created:        2010-06-17T17:01:11Z
    last-modified:  2017-05-12T11:55:33Z
    source:         RIPE # Filtered
    
    person:         Lyamin Alex
    address:        1-y Magistralnyy tupik 5A, Suite D/304
    address:        Moscow 123290
    address:        Russian Federation
    phone:          +7-499-241-8192
    nic-hdl:        LA27-RIPE
    mnt-by:         MNT-QRATOR
    created:        1970-01-01T00:00:00Z
    last-modified:  2017-05-12T11:58:17Z
    source:         RIPE # Filtered
    
    % Information related to '178.248.232.5/32AS197068'
    
    route:          178.248.232.5/32
    descr:          "HLL" LLC
    origin:         AS197068
    mnt-by:         MNT-QRATOR
    created:        2011-07-28T10:43:55Z
    last-modified:  2011-07-28T10:43:55Z
    source:         RIPE
    
    % This query was served by the RIPE Database Query Service version 1.90 (WAGYU)
    
    
    MacBook-Pro:~ leah$
    Ответ написан
    Комментировать
  • На базе какого ПО можно поднять службу отчетов для PostgreSQL?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Как-то давным-давно развлекался с eclipse birt, проект вроде бы активно развивается - www.eclipse.org/birt
    Дизайн отчетов делаете в эклипсе, и разворачиваете сервер, куда складываете ваши шаблоны и генерируете отчеты.
    Вот таблица сравнения - www.innoventsolutions.com/comparison-matrix.html
    Да, jasperreport тоже заводил, но остановился на birt, уж не помню почему, было лет 10 назад.
    Ответ написан
    Комментировать
  • В чем основные отличия mySQL от Postgre?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Алгоритмом работы (lock-based/ versioning), транзакциями, хранимыми процедурами, возможностями sql. Это по крупному, в мелочах - еще больше. Собственно, эти базы данных настолько разные, что сравнивать их напрямую нельзя. Каждая хороша для своего класса задач, хотя для магазина/cms обе будут примерно одинаковы.
    Ответ написан
    21 комментарий
  • Стоит ли полностью все приводить к классам?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Я чаще пользуюсь функциями, благо питон еще и функционален. Классы использую по необходимости, когда они сами просятся, например собрать состояние, или для одинаковых сущностей, или для наследования.
    И да, программирую и на яве, где каждый чих - объект.
    Ответ написан
    Комментировать
  • Как разобраться и собрать вместе PostgreSQL Django и Apache?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Не очень хороший выбор вы сделали. Меняйте apache на nginx, и будет вам щазтие.
    Вам нужен реверс-прокси сервер, что nginx делает в разы круче, проще и правильней, чем индеец. Индеец хорош, но не здесь.
    Во здесь например - https://www.digitalocean.com/community/tutorials/h...
    Ответ написан
    Комментировать
  • Сервер для перенаправления почты?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Рекомендую https://www.opensmtpd.org
    Очень простые конфиги, поддерживает все, что нужно, есть очередь, в отличии от nullmail и ssmtpd. Практически полностью заменяет большие мейлеры типа postfix/exim для задач маршрутизации и перенаправления. Поддерживает dkim, ssl/tls, это как раз для внешней отправки.
    Ответ написан
    Комментировать
  • Как правильно замапить или написать запрос?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Разбейте термы на ngram https://www.elastic.co/guide/en/elasticsearch/guid...
    Ответ написан
    Комментировать
  • Как сделать простой REST Api сервер?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Крома spark порекомендую ratpack.io - есть и под яву и под groovy
    Ответ написан
    Комментировать
  • Как сделать мост на Ubuntu?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    У вас есть одни сетевой адаптер и wifi? Если так, то:
    1) кросс кабель вам скорее всего не нужен, так как современные карточки сами автодетектят и делают кросс.
    Далее, два варианта, или делать бридж, ставите пакет bridge-utils, и или ручками без сохранения состояния через brctl, или прописываете настройки в /etc/network/interfaces
    Или второй вариант - делаете маскарадинг, для этогт просто поставьте пакет dnsmasq.

    PS. Кажется ничего не напутал.
    Ответ написан
  • Как реализовать авторизацию без sessions на бэкенде?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Передавайте jwt токены. Их можно передавать и с формой, и в http-хедерах, и даже подгружать через js.
    Ответ написан
    Комментировать
  • Что использовать для быстрого и "легкого" управление гуем Linux-a по сети из среды Windows без посредников?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Xming, и никакого vnc! Ну на крайний случай x2go. Но так как все в локалке, то выводите сами приложения на xming.

    Для всех и сразу!!!
    1) любое приложение в линуксе взаимодействует с терминальным сервером через сеть, будь то локальных X-server, или удаленный, в виде другого компьтера с запущенным X, в том числе и xming.
    2) соответственно, работать мы можем где угодно, при наличии Xserver
    3) чтобы получить полное сетевое окружение, с удаленным окошком логина/пароля, на удаленном компьютере достаточно включить в настройках дисплейменеджера протокол DMCP, это делается одной строкой, тогда просто запустив xserver и указав ip удаленного компьютера мы сразу получаем все его окружение, так как ВСЕ программы, начиная с окошка входа будут работать с внешним xserver.
    4) у нас будет полное окружение рабочего стола, нативная отрисовка, включая opengl!!! И аппаратное декодирование видео.
    Теперь по поводу VNC - эта хрень полностью перехватывает Отображение удаленного компьютера, при этом запускает виртуальный и куцый xserver, в который рандерит приложения, сжимает поток в в убогий jpeg, передает его по сети, и отображает на удаленном рабочем месте. В результате все в мыле, нет нормальных пропорций экрана, все глючит и тормозит.

    Уж извините, но если и ставить вместо xming, то x2go, который использует лучшие алгоритмы сжатия и стабильнее, чем любой vnc!!!
    Ответ написан
    5 комментариев
  • Есть ли Linux для embedded устройств с минимальными пакетами, только OpenGL?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Как раз этим и занимаюсь периодически последние лет 5. Терминалы удаленного доступа для работы на кластере серверов. Загрузка по сети, линукс и X, доступ по по ssh к кластеру. С проброской X-сессии. Гоняется opengl и не только, конструкторский и "архитектурный" софт в кластере.
    Сейчас терминалы обновляем до debian9, пришлось писать свой display-manager для авторизации, о чем обязательно напишу на хабре. Проблема в том, что с переходом на systemd + logind, текущий lightdm утратил возможность запускать несколько копий на разных vtX :-(
    Чтобы не ставить все зависимости, устанавливайте тлько xutils, glxutils и xorg. В настройках apt убирайте подтягивание рекомендованных пакетов.
    Да, забыл добавить, файловая система на терминалы отдается по nfs в режиме для чтения, но было время, когда система стояла на флешках в 1-4 гига.
    Ответ написан
    Комментировать
  • Неблокирующая запись логов в БД. Практики и критерии. Что делать?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    рекомендую redis, у него на ключик можно поставить время жизни, также есть механизм PUB/SUB, но и все остальное прокатит, в том числе и prostgres и mysql. Также можно использовать elastisearch +logstash для хранения логов.
    Ответ написан
    5 комментариев