
Alexey
12.10.2018
06:51:44

Andor
12.10.2018
06:51:54
у него видимо не по хешу

Alexey
12.10.2018
06:52:14
у меня по хешу....

Andor
12.10.2018
06:52:21
proxy_cache - не "новый путь", а костыль, который может взорваться в непредсказуемый момент

Google

Alexey
12.10.2018
06:52:28

Andor
12.10.2018
06:52:35
ну загружай с контейнера в CDN например

Alexey
12.10.2018
06:53:01
Задача просто пережить 1-2 часа без явного старого js. proxy_cache решит.

Andor
12.10.2018
06:54:29
да сложи на cdn

Alexey
12.10.2018
06:54:32

Andor
12.10.2018
06:54:42
или забить? :)

Alexey
12.10.2018
06:55:14
ну, хочется декларативности, как yml. apply а остальное делает кто-то другой. proxy_cache сам чистит.
так то понятно, что всегда забивали и можно продолжать.

Andor
12.10.2018
06:57:35
не ну если ты этот proxy_cache будешь предсказуемо заполнять и вычищать, то можно наверное сделать более-менее нормально
(или нет)

Let Eat
12.10.2018
06:58:16

Alexey
12.10.2018
06:59:31

Google

Andor
12.10.2018
07:00:20
ключевое слово: предсказуемо
там же ттл на каждый урл, насколько я помню, поэтому они будут в разное время отваливаться
и может случиться так что часть уже отвалилась, а часть ещё лежит в кеше

Alexey
12.10.2018
07:01:12
вероятность того, что ни один пользователь за 24 часа не загрузит второй чанк крайне мала. А отвалится сначала основной.

Let Eat
12.10.2018
07:02:20

Alexey
12.10.2018
07:02:44

Let Eat
12.10.2018
07:04:38

Alexey
12.10.2018
07:05:08
*заранее.
и сказать, что это можно взять даже в offline и будет ок.

Andor
12.10.2018
07:05:54
смотри карочи, у тебя index.html грузится с приложения бекенда, а статика с соседних контейнеров, так?

Vadim
12.10.2018
07:06:16

Alexey
12.10.2018
07:06:24
нет, я сейчас кладу assets рядом с беком там, где всплывает такой кейс. SSR и тп.

Let Eat
12.10.2018
07:06:26
Ну я про то, что ваш nginx может тоже в кеш браузера положить что хочет заранее , т.е. задачу можно решить не привлекая жс программистов воообще

Andor
12.10.2018
07:06:39

Alexey
12.10.2018
07:07:08
ну он отдаёт статику в надежде, что nginx сверху разрулит нагрузку эту.

Andor
12.10.2018
07:07:31
что такое "кладу ассетс рядом с беком"?

Vadim
12.10.2018
07:08:33
на истио в чистом k8s это проще делать, ну и велосипеды конечно же

Alexey
12.10.2018
07:08:36

Google

Let Eat
12.10.2018
07:09:16

Andor
12.10.2018
07:09:17
а, ты просто хочешь добавить кеша для ассетов, а ориджин этих ассетов всё равно будет на том же самом поде бекенда?
тогда норм будет

Alexey
12.10.2018
07:09:41

Andor
12.10.2018
07:09:53
s/если/когда/

Vadim
12.10.2018
07:10:45
http://brandon.dimcheff.com/2018/02/rainbow-deploys-with-kubernetes/ если совсем кратко

Anton
12.10.2018
07:10:48
блять, мимо

Georgy
12.10.2018
07:10:53
лол

Alexey
12.10.2018
07:12:56
тогда норм будет
я понимаю и кажется это простое решение и должен быть image готовый под это, про это и спрашивал изначально.
можно server snipet (вроде) написать на ingress кажется и проксить самого себя. Но хотелось бы volume монтировать под это.

Andor
12.10.2018
07:14:18
можно кастом шаблон для ингресса всегда сделать

Let Eat
12.10.2018
07:14:34

Andor
12.10.2018
07:14:51
https://github.com/kubernetes/ingress-nginx/issues/739 вон тут предлагают так и сделать
и цвет прямо в графану выводить!
@alexesDev https://stackoverflow.com/questions/47135256/kubernetes-nginx-ingress-controller-caching-static-assets

Vadim
12.10.2018
07:16:16

Alexey
12.10.2018
07:16:29

Andor
12.10.2018
07:16:31
кажется не очень сложно

Let Eat
12.10.2018
07:18:55

Google

Let Eat
12.10.2018
07:19:15
(в теории)

Alexey
12.10.2018
07:20:22
нужно тестить, до конца не понимаю

Let Eat
12.10.2018
07:23:42
При отдаче страницы по http2 сервер передаст браузеру и другие ассеты , они осядут в кэше и когда понадобятся к серверу никто не пойдет

Andor
12.10.2018
07:24:17
угу, только бекенд должен как-то сообщить что надо пушить в клиента

Let Eat
12.10.2018
07:25:34
Прям в ингресс контроллере можно, значение взять из аннотаций

Andor
12.10.2018
07:26:05
а он откуда узнает?
ну смысле оно же может быть разное для разных урлов

Let Eat
12.10.2018
07:26:25
(Имхо nginx не поддерживает http2 до бекендов , так что вряд ли получится этим с бекенда рулить)

Andor
12.10.2018
07:26:31
ваще не очень понимаю как этот пуш работает

Let Eat
12.10.2018
07:27:12

Andor
12.10.2018
07:28:06
у тебя в одном урле один набор ассетов, а в другом - другой
а потом новая версия приложения вышла и всё поменялось
ты каждый раз будешь ингресс перенастраивать?

Let Eat
12.10.2018
07:29:19
(ingress != Ingress controller если вдруг о разных вещах говорим)
https://nginx.org/en/docs/http/ngx_http_v2_module.html#http2_push

Andor
12.10.2018
07:30:16
как всё было просто во времена сайтиков с пхп
@rossmohax разработчик не хочет ничего знать, он хочет раздеплоить новую версию контейнера
а так придётся брать чувака который шарит как настроить ингрессы

Let Eat
12.10.2018
07:31:39
Они и не должен ничего знать. CI пайплайн сам все может сделать
Понять что это деплой с ассетами, заглянуть в контейнер взять имена, прописать в ingress аннотации

Google

Andor
12.10.2018
07:32:53
ну технически это конечно возможно
чтобы всё само
да, ты прав, вполне норм тема
пойду в прод хуярить :)

Let Eat
12.10.2018
07:34:06
Можно попросить разработчиков при билде оставлять артефакт с именами ассеты. Можно http2_push_preload заюзать тогда nginx вообще все сам
(но тогда это будет работать только на первом уровне, т.е. со страницы index.html)
А не, оно же через header (https://blog.cloudflare.com/http-2-server-push-with-multiple-assets-per-link-header/) вообще отлично - nginx с ассетами сам может сказать что предзагрузить
Т.е. можно рулить с бекенда
Т.е. CI пайплайн даже трогать не надо

Project Daemon
12.10.2018
07:45:24

Sergey
12.10.2018
07:48:16
Бодрый день, впрос такой - а python использует cgroups для определения лимитов, когда бегает в k8s?
сталкивался кто?

Let Eat
12.10.2018
07:48:54
Написал, чем пользуюсь :) kubespray не пользуюсь , для меня показательно, что у них до недавнего времени тейнты на нодах не работали, потому что они scheduler запускали со своим древним конфигом зачем-то. С другой стороны баги есть везде и кто знает сколько всего не работает в моей наколенной поделке? :)

Banschikov
12.10.2018
07:50:59
Народ, кто нибуть юзал вот этот мануал, для починки Helm?
https://medium.com/@valercara/helm-stuck-in-pending-update-and-how-to-fix-it-13c4b2eaf9f7

Sergey
12.10.2018
07:52:20
Вообщем бегают у меня с 10 jyputer'ов, и я не могу сообразить - понимает ли питон лимиты пода в котором бегает
если он cgroups не поддерживает - то получается что не понимает, и радостно жрет оперативку как не в себя