Pull to refresh
31
0
Александр @cherkalexander

Пользователь

Send message

Сейчас не вспомню уже, но если вам интересно могу проверить

А пока мы ждём статью можете подсказать какими паттернами вы пользовались?

Классно, но как разработчику не хватило кода. Какие подходы/паттерны вы использовали при разработке компонентов, чтобы сделать их достаточно кастомизируемыми для использования в разных продуктах? Слоты, как материл UI (в реакте просто render-props) или Compound Components? State Reducer Pattern? Было бы очень интересно узнать

Круто! Можно было бы сделать подобную штуку для анализа пул реквестов, но тут уже нужен токен гилаба/гитхаба, чтобы получить доступ на чтение

А как считается "время ожидания влития" по коммитам, если у нас нет тут доступа к пул/мерж реквестам? ?

С частичным применением всё верно. В моем примере - реализация, которая может принимать любое количество аргументов, и частично примененная функция будет принимать на переданное количество аргументов меньше.

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

Осталось только обернуть всё в observable и всё готово ?

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

Рассказали бы лучше, как так у вас в веб-приложении единоразово аж 8 гигабайт памяти выгружается, что за юз кейс такой.

Тут не могу всё раскрывать. Но если в двух словах - мы позволяем пользователю описывать визуально бизнес процесс визуально, диаграммами. И также позволяем его отлаживать, прямо как в дебагере. Отладчик не очень оптимально работает сейчас, он хранит все значения для каждого шага процесса. У пользователя был огромный бизнес процесс, с множеством циклов. И так как мы храним все значения дебагера, это требовало 8 ГБ оперативки.

В итоге мы перестали хранить все данные, для циклов, храним только значения для 5 операций. И теперь потребляется все 1 ГБ оперативки.

Спасибо. Да, читал об этом, но не особо углублялся

Не совсем понял, что значит «Емнип в GC Server по куче накажите ядро»

Проверил. Эти настройки как-то особо не влияют в данном случае. System.GC.RetainVM по-умолчанию - false, поэтому память по-умолчанию должна отдаваться операционной системе

https://learn.microsoft.com/en-us/dotnet/core/runtime-config/garbage-collector

RetainVM: true
RetainVM: true
RetainVM: false
RetainVM: false

Мы решили, что это не такая уж проблема, потому что, если системой пользоваться - то память освободится, память не освобождается только в состоянии простоя.

А чем ждут то не угодил? ?

Спасибо за упоминание VMMap ?

Утечки памяти были банальные, мы подписались на событие а при удалении объекта, забывали отписаться. Эти утечки памяти не влияют на данную статью, к тому же не хотелось её делать слишком большой.

Information

Rating
Does not participate
Location
Курск, Курская обл., Россия
Registered
Activity