Комментарии 44
https://www.opennet.ru/opennews/art.shtml?num=44564
dom.ipc.processCount = равным кол-ву ядер или больше
extensions.e10sBlockedByAddons = false
Статус можно посмотртеть в about:support → «Многопроцессные окна»
Just go to about:config and toggle browser.tabs.remote.autostart to true. On your next restart, e10s should be active. To verify that it is active, go to about:support and look for a number higher than 0 in «Multiprocess Windows».
Если используются расширения, то — you can create and set to true a pref called browser.tabs.remote.force-enable.
речь не идет о разделении процесс-на-вкладку
К слову, в Chrome/Chromium не совсем «процесс-на-вкладку» — вкладки группируются, один процесс обрабатывает несколько вкладок. Причём часто — не связанные между собой сайты. Это можно увидеть в диспетчере задач браузера, или когда несколько вкладок падают одновременно из-за проблем на одной из них.
Как в Edge — не могу сказать.
одного домена
Вы в этом моменте уверены? Во-первых, у меня группируются вкладки с разных доменов.
Во-вторых, см. https://habrahabr.ru/post/282880/.
Картинка, на всякий случай:
Но да, примерно понятно, каким образом они связаны между собой — если одна открывается из другой, а дальше в ней переходим куда-то ещё (на другой сайт) — они остаются в одном процессе.
Например, только что открыл Google, набрал в поиске слово «пример», понажимал средней кнопкой на первые пять ссылок — они все оказались в одном процессе.
Не связанные между собой сайты, обрабатываемые в разных процессах, всё равно могут упасть одновременно (при ошибке в корневом процессе браузера, управляющего коммуникацией песочниц с GUI).
При этом упадёт всё целиком, скорее всего — и таких ошибок я не видел что-то, емнип.
А вот падающую группу вкладок (которые работали в одном процессе) — вполне.
Да-да, всё именно так.
Но отсылкой на конец того комментария вы как бы утверждаете, что падения вкладок вместе происходит в основном от ошибок в корневом процессе, но на самом деле обычно это просто группа вкладок (возможно с разных сайтов), которая была открыта в такой последовательности, что они все обрабатываются в одном процессе.
Вопрос выглядел как
Это особенно заметно, когда в случае сбоя одновременно «падают» сразу несколько вкладок с разных сайтов.
А это обычно случается не из-за ошибки в управляющем процессе, а просто от того, что эти несколько вкладок с разных сайтов работали в одном процессе, поэтому и упали вместе.
Мозилла то хочет, но не так просто это, занимает моного времени. Поэтому они идут маленькими шажками.
Забавная картинка: со стороны серверов хотят уменьшать число процессов/потоков у сервера до числа физических ядер (плюс минус HT) и асинхронно процессить больше число запросов, подключений. И это даёт выигрыш в производительности. Для HTTP серверов это применимо в полной мере.
А вот со стороны тех, кто к ним подключается все хотят видеть всё в точности до наоборот :) Да, в одной вкладке может быть несколько подключений, но самих вкладок тоже может быть много.
По мне, так в мозилле раздражает именно тормоза GUI, если кто-то затормозил вкладку. Это можно вынести в отдельный процесс (собственно — уже). А вот вкладки было бы неплохо процессить на пуле воркеров. ИМХО.
Да это понятно. Вообще проблема 10K (или уже 1M актуальна?) известная тема. Интересно посмотреть на развитие варианта Мозиллы: процесс на GUI, процесс (судя по всему пул процессов в перспективе) для страниц. Судя по всему они почти серверный вариант и собираются делать.
Меня лично в Мозилле раздражали(ют) только фризы GUI, фризы на реакцию при вводе текста на странице, падения от планинов. Второе починили, а вот падения вообще у меня случаются в год несколько раз, но по пальцам пересчитать можно — не слишком беспокоит.
За полтора года, что я пользуюсь FF браузер не падал ни разу. Вкладок несколько сотен (правда выгружаются неиспользуемые). Лично для меня многопроцессность не добавит стабильности. Что там ещё из плюсов? Безопасность? Вынести все вкладки в один процесс, запускающийся в песочнице — будет достаточно безопасно.
Сейчас FF кушает свой гигабайт памяти и не раздражает меня кучей процессов в «диспетчере задач» в отличии от хромообразных.
Главный плюс здесь — скорость. С момента обновления на FF 46.0.1 включил этот многопроцессный режим и с тех пор не выключаю, т.к. теперь вкладки наконец перестали тормозить UI.
Раньше стоило лишь загрузить что-то громоздкое, как весь UI начинал еле ворочаться. Например, панель управления MS Azure не позволяла браузеру работать с чем-то ещё — если уж она открыта, скроллинг тормозил на всех вкладках.
Или вот Skype for Web, сравните его поведение в Chrome и FF без этой фичи. Во втором случае невозможно же пользоваться: начинает казаться, что они мне в браузер полный эмулятор .NET framework, написанный на JS, подгружают. А ведь мессенджер — это такая вещь, которая всегда должна быть открытой. И значит, браузер будет тормозить на постоянной основе, во всех вкладках.
Вот поэтому и нужно разделение, чтоб тяжёлые вкладки висели отдельно и не мешали всему остальному, включая UI.
Я понимаю, что «Электролиз», но прочитал поначала как электролис. И подумал, что такое название очень подходит к идее )
Веб-браузер Mozilla Firefox 48 beta получил возможность разделения процессов