Как вы решаете проблему выкатки изменений в шаред коде? Например обновили ангуляр, нужно выкатить и хост и ремоут проекты одновременно, катятся они за разное время и получаем в продеи несколько минут когда ожидаемые версии ангуляра в проектах расходятся и функционал рандомно не работает.
Та же ситуация что выше, но вылезли на проде проблемы и надо всё откатывать. С 3-4мя ещё более менее норм, но потом их становится пара десятков. Как быть с массовым ролбэком? В промежутках там та же проблема расхождения версий шаред либ и неработающий функционал
В несколько раз дольше, т.к. вся бизнес логика и основная логика в шаблонах при апгрейде сохраняются, 95% кода у нас уже было на TypeScript. Так же полное переписывание не даст возможности вводить новый функционал одновременно с апгрейдом, гибрид это полноценно позволяет.
Речь не о статье, а о растекстовке доклада со слайдами. Смотреть 35 минут видео вместо того чтобы пробежаться за 5-10 минут по основным местам это как-то не очень.
если остановиться на доверии к магазину, то загружать js код только той рекомендательной системы которая будет использоваться для конкретно этого юзера
Как раз для описанного случая скрипт подходит прекрасно — в сочетании с другими мерами он повышает стоимость таких атак, прекрасно отсеивает мамкиных спамеров и упрощает жизнь модераторам сообщества.
HLS с буфером в 1 фрагмент дадут задержку в несколько секунд (3-6) на перекодирование RTMP потока с того же OBS на сервере + длительность одного фрагмента. С DASH думаю то же самое. Low latency реализовано например у http://beam.pro — транспорт через вебсокеты мелких фрагментов в несколько сотен милисекунд. С их пропатченным OBS можно получить реальную задержку в 100-200мс, без него вроде около секунды-двух.
Так же вставал выбор редактора. После первого осмотра имеющегося хотели использовать Medium Editor, но с виду его достаточно не удобно расширять. В итоге остановились на Quill который оказался прекрасным конструктором под любые запросы и полностью избавляет от проблем работы с хтмл, заменяя это работой с JSON представлением текста, которое уже однозначно рендерится в хтмл.
Учитывая переход на TypeScript лучшим вариантом имхо будет вот эта небольшая либа — ng-metadata. Она добавляет кучку декораторов и интерфейсов, совпадающих с ng2, и позволит избавиться от кучи проблем ng1-typescript, даст код практически целиком совпадающий по написанию с ng2 и позволит в дальнейшем очень просто на него перейти.
Текущий проект уже был на ng1 1.5, но при разрастании оказалось что поддерживать чистый js в ng1 окружении очень тяжело, наметился постепенный переход на TypeScript. С ng-metadata код тех же компонентов/директив/сервисов стал приятней чем был на ng1 что без typescript, что с ним.
Либа актуально обновляется, в скором времени введут поддержку @NgModule() из RC5 что позволит перевести на это и код инициализации всех частей приложения и максимально приблизит к ng2.
давно — гонять чанки по websocket. Beam.pro пытаются на этом выехать, но пока безуспешно(задержки в пару секунд не востребованы). А так обычный HLS/DASH с задержкой (с учётом буфера) 6-10с от лайва, давно прекрасно применяются.
Допустим в проекте есть сервис с данными пользователя(залогинен/гость и всякое разное) User. Проект разбит на независимые модули(например разделы сайта/функционала) и в разных модулях нам нужны данные пользователя. Логично что инжектить User на уровне приложения как-то не очень, тем более есть множество других случаев с более редкими сервисами используемыми в разных частях приложения(в разных модулях), поэтому мы его(их) инжектим внутри каждого отдельного модуля или уже конкретно на месте, в компоненте. И тут сталкиваемся с тем, что для каждого модуля(компонента) у нас будет свой инстанс этого сервиса, а нужен один общий синглтон, инициализированный единственный раз. Как быть?
В текущем проекте на ng1 гора подобных сервисов которые могут быть нужны в разных частях приложения, и офк их нельзя инжектить на уровне всего приложения.
з.ы. за статью спасибо, сходу по оф докам DI был не так прозрачен
вы не замечали, что подобных цитат от, скажем так, не глупых людей очень много, и они по большей части друг другу противоречат? ;) всё складывается из личного опыта, в общем виде для саморазвития на определённой стадии обучение других даёт профит и себе. вопрос в том кого обучать, чему и зачем
у всех приложений своя версия ангуляра? Если нет то как синхронизируется его обновление
Как вы решаете проблему выкатки изменений в шаред коде? Например обновили ангуляр, нужно выкатить и хост и ремоут проекты одновременно, катятся они за разное время и получаем в продеи несколько минут когда ожидаемые версии ангуляра в проектах расходятся и функционал рандомно не работает.
Та же ситуация что выше, но вылезли на проде проблемы и надо всё откатывать. С 3-4мя ещё более менее норм, но потом их становится пара десятков. Как быть с массовым ролбэком? В промежутках там та же проблема расхождения версий шаред либ и неработающий функционал
даже не смешно. Он будет стоять у полутора человек
Текущий проект уже был на ng1 1.5, но при разрастании оказалось что поддерживать чистый js в ng1 окружении очень тяжело, наметился постепенный переход на TypeScript. С ng-metadata код тех же компонентов/директив/сервисов стал приятней чем был на ng1 что без typescript, что с ним.
Либа актуально обновляется, в скором времени введут поддержку @NgModule() из RC5 что позволит перевести на это и код инициализации всех частей приложения и максимально приблизит к ng2.
В текущем проекте на ng1 гора подобных сервисов которые могут быть нужны в разных частях приложения, и офк их нельзя инжектить на уровне всего приложения.
з.ы. за статью спасибо, сходу по оф докам DI был не так прозрачен