@jvmchat

Страница 2599 из 2890
Marat
27.06.2018
18:36:15
либо корс отключай, либо корректно эти методы вызывай

Sergey
27.06.2018
18:36:23
Как пирог построить я его могу и без синглтонов.
@dmsol итак? Зачем мне трушные синглтоны для луковичной/пирожной архитектуры, или что вы там имели ввиду?

Mikhail
27.06.2018
18:36:25
да, нужно его выкидывать

Tolegen
27.06.2018
18:36:32
Он юзает спринг!!11 Гоните его, насмехайтесь над ним!!
Давайте без толстоты. По существу дискуссия идёт же.

Google
Mikhail
27.06.2018
18:36:37
посты работает, геты работаеют

Митко Соловец?
27.06.2018
18:36:50
что значит корректно?
Миша, у тебя есть спринг секьюрити?

Georgy
27.06.2018
18:36:58
что ты имеешь в виду?
Ну тебе нужно масштабировать горизонтально приложение, а там есть стейтфул синглтоны

Митко Соловец?
27.06.2018
18:37:06
вообще-то нет

код писать надо без состояния

Mikhail
27.06.2018
18:37:23
Миша, у тебя есть спринг секьюрити?
сам я его не ставил, может где-то в буте зарыт

Митко Соловец?
27.06.2018
18:37:30
а если ты его завел - ССЗБ

Alexander
27.06.2018
18:37:36
Давайте без толстоты. По существу дискуссия идёт же.
Смысла в ней нет, все останутся при своем мнении, как и всегда

Берял
27.06.2018
18:37:38
Ну тебе нужно масштабировать горизонтально приложение, а там есть стейтфул синглтоны
опять непонятно, как стейтфул код связан с наличием или отсутствием в проекте спринга

Митко Соловец?
27.06.2018
18:37:40
используй внешние кэши

Mikhail
27.06.2018
18:37:42
override fun addCorsMappings(registry: CorsRegistry?) { registry!!.addMapping("/**").allowedOrigins("*") }

Google
Tolegen
27.06.2018
18:37:53
Ну тебе нужно масштабировать горизонтально приложение, а там есть стейтфул синглтоны
Можно пользоваться sticky sessions. И масштабироваться вне спринга.

Митко Соловец?
27.06.2018
18:37:53
не взлетает?

Mikhail
27.06.2018
18:38:02
нет

Georgy
27.06.2018
18:38:02
код писать надо без состояния
Так а зачем тебе стейтлесс синглтон тогда?

Митко Соловец?
27.06.2018
18:38:03
у тебя Котлин?

Mikhail
27.06.2018
18:38:08
угу

это как-то мешает?

Alexander
27.06.2018
18:38:27
Митко Соловец?
27.06.2018
18:38:43
это как-то мешает?
иногда неожиданные баги всплывают

Tolegen
27.06.2018
18:38:51
В общем вопрос масштабирования - это вопрос сбоку.

Mikhail
27.06.2018
18:39:04
верный конфиг
причем на тестовом сервере работает, а на проде - нет

Митко Соловец?
27.06.2018
18:39:30
/**

Tolegen
27.06.2018
18:40:01
причем на тестовом сервере работает, а на проде - нет
Вот вам пример проблемы спринг конфигурации.

Mikhail
27.06.2018
18:40:09
если дергать этот delete из мобильного приложения, т.е. не посылая хедеры типа Origin, то работает

Tolegen
27.06.2018
18:40:11
Весьма типичная проблема.

Tolegen
27.06.2018
18:40:26
Сидишь ковыряешь, а что же там не так. Вроде все по доке сделал.

Митко Соловец?
27.06.2018
18:40:35
ща

Google
Митко Соловец?
27.06.2018
18:40:37
1 момент

Marat
27.06.2018
18:40:58
можешь вообще его рубануть нафиг, если не нужен: .cors().disable()

Georgy
27.06.2018
18:41:13
опять непонятно, как стейтфул код связан с наличием или отсутствием в проекте спринга
Никак. Тут писали о масштабируемости и спринг синглтонах, я поэтому и прицепился

Митко Соловец?
27.06.2018
18:42:25
это и плюс и минус одновременно

Georgy
27.06.2018
18:42:41
Митко Соловец?
27.06.2018
18:42:46
попробуй так

Marat
27.06.2018
18:42:50
а если нужен?
тогда правильные ориджины пропиши, и у тебя сервис через балансер наружу торчит?

Marat
27.06.2018
18:43:32
X-Origin-From пробрасывается корректный?

или в какие там хедеры это упаковывается (не помню уже)

Mikhail
27.06.2018
18:44:41
я сейчас пошел на сервак и локально выполнил запрос, та же херня, лоадбалансер никак не мешает

Sergey
27.06.2018
18:46:22
Кароч, ответа я не получил - резюмирую. DI контейнеры по подходам можно разделить на два типа - либо они инфу о том что нужно инжектить ищут в инжект-оунерах (autowired), либо дают какой то DSL для сборки конфигурации (Spring XML, Spring Java). Третьего не дано - где то эта инфу контейнер должен прочитать: я не видел никаких контейнеров которые не относятся к одной из этих двух категорий. Первый путь все каплит к чертям, второй не имеет никакого смысла, лишний оверхед. Контейнер не нужен для SOLID кода.

Mikhail
27.06.2018
18:46:46
/**
это куда писать? registry!!.addMapping("/**").allowedOrigins("*")

Митко Соловец?
27.06.2018
18:48:49
Google
Tolegen
27.06.2018
18:49:48
Это гадание на кофейной гуще с конфигом спринга?)

Убери то, попробуй так..

Mikhail
27.06.2018
18:50:08
убери allowedOrigins
по идее это никак не поможет: `The special value "*" allows all domains. By default, all origins are allowed`

Tolegen
27.06.2018
18:50:09
Вот так и работаем со спрингом.

Mikhail
27.06.2018
18:51:11
Вот так и работаем со спрингом.
угу, шаг в сторону и непонятно что делать, у меня с ним проблемы стабильно раз в пару месяцев вылезают

Marat
27.06.2018
18:51:22
указан
Хм, тогда хз, что-то с паттерн-матчингом не то, можно попробовать подебажить и посмотреть, че он пытается сравнить и с каким шаблоном

Tolegen
27.06.2018
18:51:27
Весь холивар. При этом люди продолжают говорить, что со спрингом все в порядке и даёт он больше, чем отнимает (вот тут довольно спорный момент).

Admin
ERROR: S client not available

Mikhail
27.06.2018
18:52:16
а что !! означают?
м? что за !! ?

а, котлиновская штука

Митко Соловец?
27.06.2018
18:52:31
registry!!

что делает?

Mikhail
27.06.2018
18:52:40
говорит компилятору, что там не null

Marat
27.06.2018
18:53:14
Спринг-секурити какие-то другие люди писали, его апи сильно отличается от остального фреймворка

Konstantin
27.06.2018
18:53:45
а что !! означают?
кинуть npe если null

забавно, почему бы просто не писать без nullable (?)

Tolegen
27.06.2018
18:54:40
через балансер
А что ж вы там все и не разруливаете? На уровне балансера/внешнего к прикладу сервера? У нас оно так и сделано. К нам приходит только проверенный запрос от внешнего Apache.

Митко Соловец?
27.06.2018
18:55:27
вроде все правильно

Google
Митко Соловец?
27.06.2018
18:55:38
вопрос, а нет ли других фильтров?

корсовых в проекте?

зацепка - почему только делит не отрабатывает да еще и на проде

Mikhail
27.06.2018
18:56:05
ок, что прописать в nginx, чтобы он дропнул лишние хедеры и сам отвечал на OPTIONS запросы?

есть еще пара фильтров, как они могут повлиять?

Tolegen
27.06.2018
18:57:26
зацепка - почему только делит не отрабатывает да еще и на проде
Возможно на проде крутятся совсем другие бины) из профиля production)

Митко Соловец?
27.06.2018
18:58:04
есть еще пара фильтров, как они могут повлиять?
если там среди них корс фильтр - он перекрывать может

я кода не вижу всего

Mikhail
27.06.2018
18:58:40
на стейдже же работает, есть фильтр авторизации

Митко Соловец?
27.06.2018
18:58:55
на стэйдже тоже энджинкс?

Mikhail
27.06.2018
18:58:57
есть интерсептор, который добавляет метадату запросу

да

Митко Соловец?
27.06.2018
18:59:23
allowedHeaders позволяет указать разрешенные хэдеры

Sergey
27.06.2018
18:59:24
Кароч, ответа я не получил - резюмирую. DI контейнеры по подходам можно разделить на два типа - либо они инфу о том что нужно инжектить ищут в инжект-оунерах (autowired), либо дают какой то DSL для сборки конфигурации (Spring XML, Spring Java). Третьего не дано - где то эта инфу контейнер должен прочитать: я не видел никаких контейнеров которые не относятся к одной из этих двух категорий. Первый путь все каплит к чертям, второй не имеет никакого смысла, лишний оверхед. Контейнер не нужен для SOLID кода.
Далее - вкрадце. EE подход (Сервисы обменивающиеся DTO) - говно, из-за лютого темпорал каплинга и слабой сплоченности методов внутри сервисов. Исключение - микросервисы. Runtime-retention аннотации - говно. В отличие от класса в коде, аннотация связана с исполняющим кодом неочевидно. Они создают иллюзию простоты, типа мы код меньше пишем, на самом деле результат с точки зрения поддерживаемости может быть непредсказуем. Они могут и скаплить все нахрен, сломать инкапсуляцию, SOLID похерить. Дебажить муторно. Разрабатывать действительно быстрее, но поддерживать - нет. Инфраструктура Spring, это наверное единственный условно позитивный момент. Почему только эту инфраструктуру надо было разукрашивать голимой магией, не особо понятно. Но да, есть кошерные вещи, типа того же реактора. Аргументировать не вижу смысла, вам все равно смотрю неинтересно. Но не говорите мне потом что это я неконструктивен.

Mikhail
27.06.2018
18:59:34
конфиг отличается только путями к базе

Далее - вкрадце. EE подход (Сервисы обменивающиеся DTO) - говно, из-за лютого темпорал каплинга и слабой сплоченности методов внутри сервисов. Исключение - микросервисы. Runtime-retention аннотации - говно. В отличие от класса в коде, аннотация связана с исполняющим кодом неочевидно. Они создают иллюзию простоты, типа мы код меньше пишем, на самом деле результат с точки зрения поддерживаемости может быть непредсказуем. Они могут и скаплить все нахрен, сломать инкапсуляцию, SOLID похерить. Дебажить муторно. Разрабатывать действительно быстрее, но поддерживать - нет. Инфраструктура Spring, это наверное единственный условно позитивный момент. Почему только эту инфраструктуру надо было разукрашивать голимой магией, не особо понятно. Но да, есть кошерные вещи, типа того же реактора. Аргументировать не вижу смысла, вам все равно смотрю неинтересно. Но не говорите мне потом что это я неконструктивен.
а что в реакторе хорошего?

Митко Соловец?
27.06.2018
19:01:01
ща про визардо начнется

Mikhail
27.06.2018
19:01:08
=D

Sergey
27.06.2018
19:03:06
а что в реакторе хорошего?
Реактор хотя бы имеет конкретную цель, решает конкретные задачи (реализует реактивный подход со всеми его достоинствами и недостатками). Достоинства/недостатки реактивного подхода обсуждать не возьмусь, на практике мало имел с ним дело

Dmytro
27.06.2018
19:03:11
Я два часа не читал, а вы до сих пор ведетесь на его троллинг. Ну емнип

Tolegen
27.06.2018
19:03:34
Аргументы то будут в ответ?

Страница 2599 из 2890