И это всё МОЁ

Собственно сабж. Можно даже с алишки.








 , ,








И это всё МОЁ

Имеется бэкенд на springboot. Работа с БД осуществляется посредством spring-data-jpa.
Еще есть фронтенд на vuejs.

Захотелось мне реализовать обновление страницы при изменении данных на сервере, для чего я завел websocket (sockjs, stomp).
Вебсокет планирую пока использовать только для оповещения сервером всех заинтересованных об изменении данных.

Вопрос первый, об организации каналов оповещения.
Допустим у меня есть четыре сущности: A, B, C, D.
Еще есть три компонента:

  • cAB, его состояние зависит от сущностей A и B
  • cCD, его состояние зависит от сущностей C и D
  • cABC, его состояние зависит от сущностей A, B и C

Сущности могут изменяться на сервере в рамках одной транзакции в различных комбинациях.
Хотелось бы минимизировать число обновлений компонентов при изменении данных на сервере.

Допустим вызов одного ресурса производит изменение сущностей A, B, C. В итоге я хотел бы чтобы в результате все три компонента обновились по одному разу.

Вариант первый: создать по каналу на сущность и при изменении каждой сущности постить в соответствующий ей канал сообщение. Каждый компонент подписывается на каналы сущностей, от которых зависит его состояние. Но тогда компонент cAB обновится два раза, первый раз по сообщению от канала A, второй раз по изменению по сообщению канала B.
Решить эту проблему можно заведя таймер, который сбрасывался бы получив каждое сообщение. По таймауту происходило бы обновление.
Таким образом следующие друг за другом сообщения приводили бы к одному единственному обновлению.
Но тут надо во vuejs реализовывать эту логику на таймерах.
И вообще нормальные ли это решение?

Вариант второй: сообщение об обновлении постилось бы в один единственный канал, сообщение содержало бы список сущностей, которые изменились.
Минус один и существенный на мой взгляд: любой клиент получал бы сообщения об обновлении сущностей, которые ему даже не интересы в этот момент. А у меня есть сущности, которые обновляются раз в 5 секунд.

Какие есть более оптимальные варианты на ваш взгляд?

Вопрос второй. Так как клиенты не будут слать серверу никаких сообщений по вебсокету, аннотации @MessageMapping @SendTo для меня бесполезны, ибо отправка сообщений будет происходить из контроллеров rest посредством вызова SimpMessagingTemplate.this.template.convertAndSend
Но транзакция закрывается при выходе из транзакционного метода. Получается даже если я вызываю convertAndSend в конце метода контроллера, данные еще не зафиксированы, а я уже шлю сообщение клиентам. Каким образом организовать отправку сообщения клиентам после успешной фиксации транзакции? Этот вопрос может быть связан со следующим.

Если подход с отправкой сообщения об изменении сущностей в канал соответствующий этой сущности является оптимальным, то я хотел автоматизировать отправку сообщений, чтобы в каждом методе контроллеров не приходилось вести учет сущностей, который я меняю. В голову пришла такая мысль: обрабатывать фиксацию транзакций, в каждом событии анализировать сущности, которые были повержены изменению, постить в каналы соответствующие этим сущностям сообщения. Это возможно технически? Отследить успешный коммит транзакции и перебрать измененные сущности в этой транзакции?
И насколько кошерен этот подход?

Буду рад любым комментариям и советам.








 , , , ,








И это всё МОЁ

Удалил VirtualBox 5.2.

Скачал с офсайта VirtualBox 6.0.4.

При установке возникает ошибка.

В логах написано, что синтаксическая ошибка при трансляции.

Что это такое? Как исправить?

Потому что при попытке установить VirtualBox 5.2 возникает та же ошибка.








 ,








И это всё МОЁ

Rosa Linux - это российский дистрибутив, основанный на Mandriva и развиваемый компанией НТЦ ИТ РОСА. У дистрибутива есть версия для сервера и для обычного компьютера. Кроме свободной и бесплатной версии дистрибутива есть сертифицированные в ФСТЭК и Министерстве обороны РФ дистрибутивы. Что касается окружения рабочего стола, то официально выпущены сборки для таких окружений, как KDE 4, Plasma 5, LXQT, XFCE. В этой статье мы рассмотрим, как проходит установка Rosa Linux редакции для дома (Fresh) самой последней версии (R11). Разберём особенности установщика и подготовки системы. Системные требования Rosa Desktop Вот основные системные требования для Rosa с оболочкой KDE Plasma: Место на жёстком


Запись Установка Rosa Linux впервые появилась Losst.






@темы: Инструкции

И это всё МОЁ

Есть лицензионный CD с фильмом. На коробке обозначен Mpeg4-DivX, но не виден *.dat файл.

Вывод df -h /media/cdrom0 даёт:

Файловая система Размер Использовано  Дост Использовано% Cмонтировано в
/dev/sr0 9,8M 9,8M 0 100% /media/cdrom0

В то же время, *.dat где-то прячется:

 udisksctl info -b /dev/sr0 | grep -i size
Size: 561829888
Size: 0

Как можно найти, воспроизвести этот потерянный *.dat ? Инструменты из пакета vcdimager диск VCD не узнают :(

Те, почти 10Мб занятые в iso9660 - это программная оболочка и декодер divx для оффтопика








 , ,








И это всё МОЁ

Пускай вместо зондов, веб-майнеров и мегатонн кривой скриптоты случайным жертвам их деятельности отдаётся 404. Не чокаясь!








 , ,








И это всё МОЁ

Имеется кусок код вида:

<div class="container-fluid p-4">
<h3 class="mb-4"><b-breadcrumb :items="pagePath"/></h3>
<div class="row">
<device-types-component class="h-auto mb-4 mr-4"/>
<android-client-update-channels-component class="h-auto mb-4 w-auto"/>
</div>
</div>

Выглядит это вот так.

Вопрос первый: как сделать так, чтобы один из блоков занимал всю оставшуюся ширину?
Вопрос второй: как сделать так, чтобы оба блока занимали всю оставшуюся ширину?
Вопрос третий: как сделать так, чтобы блоки занимали всю оставшуюся доступную высоту?

Извиняюсь заранее за нубские вопросы. Я в вебе не силен.








 , ,








И это всё МОЁ

Вопрос таков: если использовать инструмент под LGPLv3, то можно ли считать произведенные им результаты «work based on»?


https://choosealicense.com/licenses/lgpl-3.0/


https://www.gnu.org/licenses/gpl-3.0.en.html



A “covered work” means either the unmodified Program or a work based on the Program.




To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.



Например, подпадает ли код (текст) написанный в Qt Creator (Community) под определение «covered work»? Причем, код не использует Qt.









 , , ,








И это всё МОЁ

31 марта 2019 года, спустя 5 лет после предыдущего релиза, вышла новая версия компилятора языка Dylan — Open Dylan 2019.1.

Dylan — это динамический язык программирования, реализующий идеи Common Lisp и CLOS в более привычном синтаксисе без скобочек.

Основное в этой версии:

  • стабилизация LLVM-бэкэнда для архитектур i386 и x86_64 на Linux, FreeBSD и macOS;
  • к компилятору добавлена опция -jobs для ускорения сборки за счет использования нескольких процессов;
  • исправление ошибок, выявленных со времени выхода предыдущей версии.







 , , ,








И это всё МОЁ
Компания Google представила вторую бета-версию открытой мобильной платформы Android Q. Релиз Android Q, который скорее всего будет поставляться под номером Android 10, ожидается в третьем квартале 2019 года. Для оценки новых возможностей платформы предложена программа бета-тестирования, в рамках которой экспериментальную ветку можно установить и поддерживать в актуальном виде через штатный интерфейс установки обновлений (OTA, over-the-air), без необходимости ручной замены прошивки. Обновления доступны для устройств Pixel, Pixel XL, Pixel 2, Pixel 2 XL, Pixel 3 и Pixel 3 XL.



И это всё МОЁ

Каталоги с ценными файлами у меня хранятся в томе VeraCrypt, этот том я зеркалю на Яндекс Диск. Но VeraCrypt раздражает своей gtk3-мордой и рядом недочётов. Хотелось бы использовать Plasma Vault. Но оно использует CryFS, где хранилище выглядит как гора файлов на 16 Кб. Яндекс Диск такое синхронизировать отказывается - клиент повисает и ничего не делает.

Как мне получше завернуть кучу мелочи от CryFS в один большой файл?








 , , ,








И это всё МОЁ

Друзья, заметил, что в тегах «Россия» превращается в «россия». Возможно стоит это исправить.








 








И это всё МОЁ

Здравствуйте. Стоит следующая задача:
На роутере на линукс нужно iptables FORWARD трафик отпралять в user-space, там в своей программе его изменять и отпралять в ядро для дальнейшей отсылки.
То есть мне надо научится делать что-то типа прозрачного прокси, изменяющего на определенных портах некоторые данные.
Как подойти к такой задаче? Есть для этого API в user space? Если нет, то какое API в ядре надо использовать что бы написать свой драйвер, отпраляющий трафик в user-space и возвращающий данные из него?








 , ,








И это всё МОЁ

Главный центр инженерно-технического обеспечения и связи Федеральной службы исполнения наказаний (ГЦИТОиС ФСИН) намерен приобрести 7782 персональных компьютера, выделив на эти цели 302,1 млн руб.

В ТЗ заказчик указал, что устанавливаемая операционная система должна:

  • быть включенной в Реестр отечественного ПО при Минкомсвязи
  • иметь в составе ядро Linux версии не ниже 4.15
  • иметь актуальный набор драйверов для совместимости с имеющимся у заказчика периферийным оборудованием

Прием заявок начался 28 марта и продлится до 15 апреля текущего года. Торги намечены на 19 апреля.

Подробности

Перемещено Shaman007 из russia








 ,








И это всё МОЁ

Приветствую.

Есть файл 'name.txt' с кириллицей:

file -i name.txt
name.txt: text/plain; charset=iso-8859-1

Выполняю:

iconv -f iso-8859-1 -t utf-8 -o name2.txt name.txt

-- получаю в файле «name2.txt' кодировку 'charset=utf-8' и ... нечитаемый русский текст.

Если выполняю:

iconv -f  windows-1251 -t utf-8 -o name2.txt name.txt

-- получаю в файле 'name2.txt' кодировку 'charset=utf-8' и всё хорошо.

Получается, команда 'file -i' неверно определяет кодировку файла?
Или в чем дело?








 , , ,








И это всё МОЁ

После блокировки экрана, все как должно быть показывает GDM и экран темнеет (Или же уходит в сон, в обоих случаях эта ошибка). Если я хочу разблоикровать экран, я например нажимаю любую клавишу, ноутбук как-бы просыпается, но вижу черный экран и курсор. ctrl+alt+f2(3,4) работает. Если сменить сессию (ctrl+alt+f1) то вижу GDM и могу зайти обратно.








 , ,








И это всё МОЁ

На данный момент я пользователь предустановленной windows 10. С некоторого времени, браузер Firefox перестал открывать некоторые страницы. Иногда это google.com, youtube.com, facebook.com и много других. Во всех случаях Firefox обьясняет это неправильной конфигурацией на сайтах либо, какой-то особенной настройкой установленного антивируса. По результатам собранной информации как вариант буду рассматривать переход на самый простой вариант ос линукс. В других программах сайты не блокируются.








 , ,








И это всё МОЁ
Компания Jolla, основанная бывшими сотрудниками Nokia с целью разработки новых смартфонов, построенных на базе Linux-платформы MeeGo, объявила о слиянии операционной системы Sailfish и открытого проекта Mer. В настоящее время компания Jolla, использующая Mer в качестве системного окружения мобильной платформы Sailfish, является основным локомотивом разработки Mer и наиболее активным сторонником данного проекта. Многие разработчики Mer, в том числе основатели проекта, являются сотрудниками Jolla.



И это всё МОЁ

На ноуте установлен Debian 9 и virt-manager.
Интересует следующий вопрос: возможно ли работать с виртуалкой в отдельной X-сессии ?
Собственно для чего нужно: на хост системе у меня только виртуалки, для работы и учебы отдельные системы, не совсем удобно между ними переключаться, особенно при работе в полноэкранном режиме. Хочу сделать так чтобы на хосте залочил экран, нажал ctrl+alt+f4 и попал в гостевую систему.

Тут http://dmzik.blogspot.com/2013/05/virtualbox-tty.html автор проделал то что мне нужно с virtualbox-ом , как такое реализовать в qemu/virt-manager ?








 








И это всё МОЁ

Дано:

  • Оригинал изображения хранится в базе (Alfresco CE)
  • Ползователю показывают через сайт (Alfresco CE) preview c watermark

Задача:
Обеспечить печать оригинала на утвержденные принтеры (1, 2,3 ) без скачивания его на ПК пользователя

  • В наличии 3 шт. МФУ
  • Нужно к preview добавить кнопку печать1, печать2, печать3

Цель: Защита электронной копии изображения оригинального качества.








 ,