@nodejs_ru

Страница 766 из 2748
Сева
17.05.2017
13:13:43
ребят, а никто не пробовал https://www.totaljs.com/? я сейчас наткнулся, выглядит... подозрительно, но интересно

Maks
17.05.2017
13:18:45
я пробовал на примере eShop. Не зашло. На любителя.
можешь поподробнее? в чем была проблема?

Konstantin
17.05.2017
13:19:23
можешь поподробнее? в чем была проблема?
Не проблема. Синтаксис не зашел. Работает вроде шустро.

Google
Alisa
17.05.2017
13:19:44
всем привет, есть какие-то супер ниндзя техники для ужимания размера node_modules?

Evgeny
17.05.2017
13:22:46
меньше зависимостей использовать. меньше зависимости использовать

Vladimir
17.05.2017
13:22:59
Лучший способ

Evgeny
17.05.2017
13:23:56
можно еще depcheck прогнать

Konstantin
17.05.2017
13:24:13
webpack stats

посмотри че там тянет

Alisa
17.05.2017
13:29:07
а, я only=prod забыл х) такс, уже в 2 раза сократил, осталось еще ваши советики заюзать и вообще всё отлично будет

dshm
17.05.2017
13:31:36
Подскажите пожайлуста. У меня есть большое колличесвто документов разного типа. В монго их лучше хранить в разных колекциях и все в одной на с разным полем type? Что правильней?

Alisa
17.05.2017
13:32:51
https://t.me/MongoDBRussian

dshm
17.05.2017
13:33:28
Спасибо

Google
Mikhail
17.05.2017
13:36:39
как в коа остановить поток?

downstream

shadowjack
17.05.2017
13:41:58
По реакту есть чат?

Yan
17.05.2017
13:42:37
пин прочти

Nick
17.05.2017
13:42:48
Yan
17.05.2017
13:42:52
там все есть

dshm
17.05.2017
13:42:57
https://t.me/react_js

shadowjack
17.05.2017
13:43:34
Спасибо

Nurik
17.05.2017
14:21:39
Всем привет. Использую sockJS для вебсокетов. Тут решил попробовать socket.io для небольшого средненагруженного проекта. Раньше помню, у него было много всяких болезней. Но это было где-то года 2-3 назад. Как обстоят дела сейчас ?

Главное это production ready без всяких утечек памяти. Удовлетворяет ли socket.io этим требованиям ?

Rafael
17.05.2017
14:26:51
Утечки памяти в js?

Кроме удаления листенера, и всяких таймеров их вообще можно как-то получить?

Rafael
17.05.2017
14:28:06
легко!
Можно пример?

Konstantin
17.05.2017
14:28:18
Rafael
17.05.2017
14:28:36
И где там утечка мб быть?

Konstantin
17.05.2017
14:29:14
И где там утечка мб быть?
https://auth0.com/blog/four-types-of-leaks-in-your-javascript-code-and-how-to-get-rid-of-them/

вот самые популярные

Vint
17.05.2017
14:35:42
Главное это production ready без всяких утечек памяти. Удовлетворяет ли socket.io этим требованиям ?
Переходи, у меня на синтетике не течёт совсем, в бою пока не проверял. Вот и проверишь) Тем более, они недавно сами на uws в движке перешли, что хороший знак.

Никита
17.05.2017
14:40:08
Google
Никита
17.05.2017
14:40:19
Но это не утечка, строго говоря.

Nurik
17.05.2017
14:41:18
Переходи, у меня на синтетике не течёт совсем, в бою пока не проверял. Вот и проверишь) Тем более, они недавно сами на uws в движке перешли, что хороший знак.
Вот именно, что не хочется проверять все в последний момент на проде. Все-таки проектик простой, нужна надежность. Чтобы поставить и забыть + периодически мониторить состояние.

Rafael
17.05.2017
14:42:37
Ещё можно строки конкатенировать.
И с чего бы этому быть утечкой?

Vint
17.05.2017
14:42:38
Круче своего опыта ничего нет, всё равно. Ведь даже если сокеты не текут, то течь может твой код поверх.

Rafael
17.05.2017
14:42:56
Старая строка такто помечается на удаление

Никита
17.05.2017
14:43:08
И с чего бы этому быть утечкой?
Ну так это и не утечка, но память заполнить всю и упасть так запросто можно.

Никита
17.05.2017
14:43:55
Ну тогда остальное тоже не утечки же.

Суть в том, что конкатенацией строк ты можешь засрать память гораздо быстрее, чем думаешь.

Rafael
17.05.2017
14:45:17
Суть в том, что конкатенацией строк ты можешь засрать память гораздо быстрее, чем думаешь.
Ну ты же понимаешь, что это не утечка: GC будет сам подчищать старые строчки

На которые больше никто е ссылается

Никита
17.05.2017
14:45:51
Ну так и остальное тоже не утечка — это всё тоже подчистится гц, когда станет недостижимым.

Rafael
17.05.2017
14:46:26
И вот это в памяти копится

Например в цикле пихать листенеры и не закрывать их

Сергей
17.05.2017
14:46:51
Утечка, это когда ты что-то открыл, но явно закрыть забыл
это когда ты насоздавал кучу объектов, а ссылки не занулил

Rafael
17.05.2017
14:47:29
это когда ты насоздавал кучу объектов, а ссылки не занулил
Нук, чет мне сходу трудно представить ситуацию, когда их забыл занулить

Google
Сергей
17.05.2017
14:47:56
сделал циклические ссылки

Rafael
17.05.2017
14:48:15
сделал циклические ссылки
Кстати GC в js разве такое не может разруливать?

Сергей
17.05.2017
14:48:20
{ const a = { b: null } const b = { a } b.a = a }

Кстати GC в js разве такое не может разруливать?
вот тот что я сейчас пример скинул, да легко Но что-то сложнее и он не будет

v8 очень умен но вот то что в firefox и ie точно не может

Rafael
17.05.2017
14:49:44
вот тот что я сейчас пример скинул, да легко Но что-то сложнее и он не будет
Да, чем я затупил, только сегодня такой пример в голове крутил

Никита
17.05.2017
14:53:50
@Fl0pZz Я говорил не столько об утечках (потому что утечек в явном виде таки нету, и определение утечки не такое, как выше дали), а о вообще проблемах с памятью. Вот пример: const count = 100; const length = 1e7; const storage = []; for (let i = 0; i < count; i++) { console.log(`Strings: ${i} | Ops: ${i * length / 1e6} million | RSS: ${process.memoryUsage().rss / 1e6} MB`); let part = ''; for (let j = 0; j < length; j++) { part += 'a'; } storage.push(part); } Скажи, не запуская, какое будет отношение количества операций к занимаемой памяти?

Admin
ERROR: S client not available

Никита
17.05.2017
14:54:22
это когда ты насоздавал кучу объектов, а ссылки не занулил
Ога. Ты в курсе, что под твоё определение попадают нужные объекты, которые тебе в процессе работы нужны?

Вообще-то, утечка в нормальном определении — это когда мы указатель продолбали, а память не очистили.

Никита
17.05.2017
14:56:43
ты о чем-то другом говоришь
Я говорю, что твоё определение не корректно.

Сергей
17.05.2017
14:56:49
Вообще-то, утечка в нормальном определении — это когда мы указатель продолбали, а память не очистили.
утечка, это когда перестаешь пользоваться объектом, а память не освободил. и так раз за разом

Алексей
17.05.2017
14:57:04
нет, это null pointer exception
нет, это утечка в языках без GC

Никита
17.05.2017
14:57:09
нет, это null pointer exception
Чего?? Перечитай ещё раз. null pointer это наоборот.

Никита
17.05.2017
14:57:42
в языках с GC такое невозможно
Это если ничего не сломано, лол.

Сергей
17.05.2017
14:57:53
лол

Алексей
17.05.2017
14:58:02
Это если ничего не сломано, лол.
я даже не представляю как можно сломать GC

Google
Vladimir
17.05.2017
14:58:15
Ну о том и речь, что в язых с GC не бывает утечек памяти

Никита
17.05.2017
14:58:20
я даже не представляю как можно сломать GC
Ой, да запросто. Сишный код, например.

Никита
17.05.2017
14:58:37
Алексей
17.05.2017
14:58:46
Ой, да запросто. Сишный код, например.
Ой простите, я то думал, что это чат по NodeJS.

Vladimir
17.05.2017
14:58:59
разве?
Да, в исходном смысле этого выражения

Никита
17.05.2017
14:59:20
Ой простите, я то думал, что это чат по NodeJS.
А с каких пор там нет плюсового кода?

Алексей
17.05.2017
14:59:40
Утечка - это когда объект больше не нужен, а память под него не осовбождается. Вся мякотка состоит в определении "не нужен".

А с каких пор там нет плюсового кода?
С таких, что в 99% случаев никто не лезет в C++ код

Никита
17.05.2017
15:00:11
Не очень.
Там, правда, тоже была не утечка. Там огроменные тлс сертификаты на стороне ноды не сообщали гц в8 о своём размере, и он их не учитывал.

И не запускал марк-свип

Vladimir
17.05.2017
15:00:43
Ну эт понятно. Я вообще не фанат GC в v8

Сергей
17.05.2017
15:00:45
Да, в исходном смысле этого выражения
нда, перечитал сейчас. ты прав а что на счет утечек с "помощью" DOM?

Никита
17.05.2017
15:00:47
сертификаты накапливались в памяти, прилетал оом, всё дохло

Никита
17.05.2017
15:02:06
@sergeysova Ты тоже кстати ответь на задачку выше.

Страница 766 из 2748