Denis
Александр
Daniel
Все - процессы
С одной стороны - спасибо, кэп. С другой - ну херня же
Denis
да и гемор там будет с lost resources
Denis
тоесть типа мне нада за последние сутки вывести графк. там будет куча говна, с ноликами.
Roman
Oleksandr
ну в лискавери не обязательно всё пихать :)
Oleksandr
можно топ 5 распарсить
Oleksandr
хотя они же меняться будут, да
Denis
топ 5 на текущий момент времени
Denis
вот вот
Oleksandr
да, я понял
Denis
Daniel
Roman
Denis
Oleksandr
почему?
Roman
А это - сектантство
Дедлоки, лайвлоки, повреждения памяти, невозможность корректно прибить тред.
даня
Лайвлоки, ничего себе, даже слова такого не встречал
Daniel
Denis
Daniel
Ну и для jvm
Daniel
Зачем?
даня
Может пользователь захотел приостановить работу или вовсе закрыть программу.
Roman
Зачем?
Допустим, код в треде сошел с ума/зациклился/мы хотим горячую замену кода
Daniel
Для этого не надо убивать тред, для этого надо научить его завершаться
Roman
Daniel
Это я это неуправляемо написал? Сдайте меня в дурку тогда...
Roman
Это я это неуправляемо написал? Сдайте меня в дурку тогда...
Ок, чтобы быть ближе к реальности: вот нам льется где-то 1тб всяких разных файлов и на первоначальном этапе надо определить тип файла. Для этого есть libmagic и он хорошо работает, но на некоторых файлах его клинит и он может жевать файл несколько часов.
Daniel
Давайте его попатчим, чтобы он научился прерываться?
Roman
Память и дескрипторы
Daniel
А мы на каком языке пишем?
Daniel
А либмеджик на каком написан?
Roman
Roman
Daniel
Точно не перл
Daniel
А с явой - надо смотреть, что там какие ресурсы выделяет, и как
Daniel
Может оказаться проще этот либмеджик отдельным процессом запускать
Daniel
Тогда у вас нет тредов
Roman
И мы правда просто пускаем это в пуле воркеров-камикадзе
Daniel
В смысле - В чем разница между тредом и процессом?
Roman
Daniel
Перловый. Перл говно
Svyat
и да начнется Холиварэ)
Александр
Ява говно
Александр
Вот и спора нет
Dmitrii
Все ваши холивары говно, по сравнению с тредами про PHP )
Александр
Dan
1. Threads are easier to create than processes since they
don't require a separate address space.
Dan
2. Multithreading requires careful programming since threads
share data strucures that should only be modified by one thread
at a time. Unlike threads, processes don't share the same
address space.
Dan
3. Threads are considered lightweight because they use far
less resources than processes.
Dan
4. Processes are independent of each other. Threads, since they
share the same address space are interdependent, so caution
must be taken so that different threads don't step on each other.
This is really another way of stating #2 above.
Dan
5. A process can consist of multiple threads.
Dan
у меня всё
Daniel
Рома в курсе, я тоже :)
Dan
я на всякий случай )))))
Dan
вдруг кто не знал 😱
Dmitrii
Все такие типа эксперты.
Dmitrii
Померились, теперь можно дальше идти пива пить )
Roman
попатчить libmagic можно было, но это надо будет ей подменять malloc/free и отслеживать вызовы.
Roman
а с процессами проще: можно между ними передавать fd вместе с состоянием и т.о. делать апгрейд кода
Nick
Простите за ссылку на хабр, но я прочитал там что-тот душераздирающее. https://m.habrahabr.ru/post/283548/
Kirill
Александр
Атмосфера так себе там
Ilia
Из 500 человек "девопсов" нет никого из ТМ?
Nick
да я знаю к кому там обратиться, но они и сами все знают про свои мобильные версии
Denis
Кстати, какова мотивация делать мобильную версию сайта на поддомене m?
Ilia
Это серьёзный вопрос?