Далеко не везде такие скорости, к сожалению. У меня в Москве LTE Мегафона с 5/5 полосками выдает меньше мегабита днём из-за высокой нагрузки на вышку, а 50 мегабит и ночью даже близко не достигаются. Скорее всего это уникальное место, но даже в таком городе есть плохо покрытые точки, что уж там о других регионах
Первого и второго просто не будет. Второй не встанет рядом сам по себе, порты по своей природе используются эксклюзивно, и если два приложения захотят слушать на одном, то какому-то из них не суждено.
Сокет не получится записать в базу данных по другой причине, и циклы там не при чем. Опять же, по природе сокетов.
И редис пройдет. На всякий случай, объясняю:
Можно повесить несколько инстансов на разных портах за балансировщиком (nginx, к примеру), и между ними, в таком случае, будут распределяться клиенты (websocket'ы), но ни коим образом не сообщения в этих самых сокетах. Сокет однозначно связывает один инстанс сервера с одним инстансом клиента. В таком случае без изменений кода будет работать всё, за исключением мгновенных уведомлений. Выйдет так, что уведомление о новом сообщении получат только те же клиенты что связаны с тем же инстансом сервера. Это решается рассылкой уведомлений (событий нового сообщения) между инстансами серверов через Redis pub/sub.
Статье то уже 7 лет как) Нода сильно изменилась с тех пор, да и я был куда моложе. Убрал бы в черновики, но пусть лучше лежит тут для истории. «Продвинутый» он только для своего времени.
Если запустить второй инстанс, то он просто не заведётся так с ходу без модификации кода, странно было бы вообще ожидать что тут где-то должна была перебрасываться память. Во всяком случае, запросы пропадать никуда точно не станут.
Для масштабирования следовало бы использовать какой-нибудь Redis или любой другой удобный pub/sub. Но нужно было ли это вообще? Максимальный онлайн был на порядки ниже, чем вынес бы один инстанс.
У них свой софт, в основе которого лежит чужой, и в условиях использования того самого чужого кода оговаривается как его можно использовать, а как — нельзя. Это называется производное произведение и GPL требует чтобы все производные произведенияя имели совместимую лицензию.
Логика верно подсказывает что со своим произведением можно поступать как самому хочется, но не стоит забывать про чужой код и его условия использования.
Конечно, WSL упрощает работу для пользователей Windows, но так Microsoft закономерно снизит приток пользователей десктопных Linux, потенциальных *nix-разработчиков. Это может негативно сказаться на Linux в долговременной перспективе.
Ситуация в напоминает шаг embrace стратегии EEE, но надеюсь что волнуюсь зря.
Она не имеет отношения к вопросу. Никто им не мешает выкладывать исходный код, я говорил лишь о том, что они это сделать обязаны, если WSL(2) является производным произведением. Выше человек заявлял, что Microsoft в праве делать что угодно с их продуктом, и не обязаны предоставлять исходники.
Вы так уверенно заявляете, но я вижу что у них модифицированное ядро. В любом случае, вирусность распространяется не только в случае изменения самого ядра. Модули ядра, например, тоже заражаются. И ядро отказывается их принимать, если они под несовместимой лицензией, либо «портится» (tainted kernel).
Производной работой не считается обычное приложение в системе, так как оно связывается с ядром только в момент запуска и использования системных вызовов, что специально оговаривается.
Какие-то смутные аналогии на личных доводах тут не работают. В принципе, с этим и другими неявными моментами можете ознакомиться здесь.
GPL потому и называется вирусной, что обязывает производные произведения распространяться под той же или совместимой лицензией. Конечно, авторство у Microsoft никто не отнимет, но определённые ограничения на форму лицензирования это накладывает, и в таком случае Microsoft будет обязана предоставлять исходные коды желающим.
Вопрос в том, можно ли считать WSL производным. Насколько я понимаю, вполне.
Можно даже дальше пойти: если WSL при этом является не просто юзерспейс-приложением, а компонентом системы, если он использует какие-то уникальные возможности системы, заточенные именно для WSL, то и сама Windows обязана будет заразиться GPL.
Исключение заключается в том, что приложения не заражаются лицензией ядра при использовании системных вызовов. Без такого явного указания это было бы недопустимо. Однако, оно не затрагивает, например, модули ядра, которые обязательно должны быть GPL-совместимыми. Я не понимаю причем тут API Windows Hypervisor Platform.
Я полагал что WSL2 будет поставляться как компонент системы и тесно с ней интегрироваться, что нарушало бы GPL.
Вопрос был не в возможности получения исходного кода модифицированного ядра, он и так доступен. Вопрос в том, в праве ли Microsoft включать в состав дистрибуции проприетарной Windows ядро Linux, распространяющееся под GPL.
Разве подобное включение не нарушает GPL? Даже если ядро запущено в виртуальной машине, достаточно тесная интеграция одного с другим все равно может рассматриваться как динамическая линковка
2020 год. Основная ФС в винде теперь ext5, добавлена поддержка LVM, загрузчик теперь GRUB, появились первые Live-CD, браузер по-умолчанию теперь Firefox.
Далеко не везде такие скорости, к сожалению. У меня в Москве LTE Мегафона с 5/5 полосками выдает меньше мегабита днём из-за высокой нагрузки на вышку, а 50 мегабит и ночью даже близко не достигаются. Скорее всего это уникальное место, но даже в таком городе есть плохо покрытые точки, что уж там о других регионах
ufo, ну и где же ты?
Сокет не получится записать в базу данных по другой причине, и циклы там не при чем. Опять же, по природе сокетов.
И редис пройдет. На всякий случай, объясняю:
Можно повесить несколько инстансов на разных портах за балансировщиком (nginx, к примеру), и между ними, в таком случае, будут распределяться клиенты (websocket'ы), но ни коим образом не сообщения в этих самых сокетах. Сокет однозначно связывает один инстанс сервера с одним инстансом клиента. В таком случае без изменений кода будет работать всё, за исключением мгновенных уведомлений. Выйдет так, что уведомление о новом сообщении получат только те же клиенты что связаны с тем же инстансом сервера. Это решается рассылкой уведомлений (событий нового сообщения) между инстансами серверов через Redis pub/sub.
Если запустить второй инстанс, то он просто не заведётся так с ходу без модификации кода, странно было бы вообще ожидать что тут где-то должна была перебрасываться память. Во всяком случае, запросы пропадать никуда точно не станут.
Для масштабирования следовало бы использовать какой-нибудь Redis или любой другой удобный pub/sub. Но нужно было ли это вообще? Максимальный онлайн был на порядки ниже, чем вынес бы один инстанс.
У них свой софт, в основе которого лежит чужой, и в условиях использования того самого чужого кода оговаривается как его можно использовать, а как — нельзя. Это называется производное произведение и GPL требует чтобы все производные произведенияя имели совместимую лицензию.
Логика верно подсказывает что со своим произведением можно поступать как самому хочется, но не стоит забывать про чужой код и его условия использования.
Ситуация в напоминает шаг embrace стратегии EEE, но надеюсь что волнуюсь зря.
Вы так уверенно заявляете, но я вижу что у них модифицированное ядро. В любом случае, вирусность распространяется не только в случае изменения самого ядра. Модули ядра, например, тоже заражаются. И ядро отказывается их принимать, если они под несовместимой лицензией, либо «портится» (tainted kernel).
Какие-то смутные аналогии на личных доводах тут не работают. В принципе, с этим и другими неявными моментами можете ознакомиться здесь.
Так разве в этой ветке речь не о второй версии? Говорили выше "Microsoft внедрил ядро линукс", это же явно не к первой версии относилось.
Вопрос в том, можно ли считать WSL производным. Насколько я понимаю, вполне.
Можно даже дальше пойти: если WSL при этом является не просто юзерспейс-приложением, а компонентом системы, если он использует какие-то уникальные возможности системы, заточенные именно для WSL, то и сама Windows обязана будет заразиться GPL.
Я полагал что WSL2 будет поставляться как компонент системы и тесно с ней интегрироваться, что нарушало бы GPL.
Вопрос был не в возможности получения исходного кода модифицированного ядра, он и так доступен. Вопрос в том, в праве ли Microsoft включать в состав дистрибуции проприетарной Windows ядро Linux, распространяющееся под GPL.
исключение из GPL
Речь об открытости исходного кода, а не о том, коммерческий ли продукт