@proelixir

Страница 900 из 1045
Dmitry
06.03.2018
15:40:59
Это оптимальный вариант

Я уж не говорю о том, что можно вообще использовать просто hackney

Dmitry
06.03.2018
15:43:48
@Virviil Ну так решение заброковали, что вообще tcp-порт открывается, нужно запросы раньше ловить чем в они в hackney уйдут.

Dmitry
06.03.2018
15:48:12
Я думаю что exvcr через макросы останавливает hackney и запускает свой собственный клон hackney, который идёт в tcp только когда обновляет кассеты

Google
Dmitry
06.03.2018
15:48:43
@Virviil Он мокает hackney модуль.

Посмотрел под капотом.

Dmitry
06.03.2018
15:49:40
А я так понял, что проблема была не в том, что кто-то ходит в в интернет, а в том, что для тестов приходится держать все время запущенным мок-сервер

Т.е. решение с другой стороны забраковали

Dmitry
06.03.2018
15:50:25
Можно же http сервер поднимать внутри тестов.

Dmitry
06.03.2018
15:51:00
Ну, ему надо выдавать порт

Dmitry
06.03.2018
15:51:08
Ага.

Dmitry
06.03.2018
15:51:11
Или может ребята до такого не дошли

Azat
06.03.2018
16:06:54
Ну, по крайней мере есть некоторый выбор среди либ

Dmitry
06.03.2018
16:10:06
С tesla - в отличие от HTTPoison / hackney не понятно как со стриминг суппортом, как принимать асинхронно (в особенности чтение больших данных, и декодинга их на лету). @AzatMurtazin У вас синхронные вызовы?

Azat
06.03.2018
16:12:38
Синхронные вроде как, консольная утилита делает свою работу и отправляет результат на сервер

Alex
06.03.2018
18:29:31
А что, появились потоковые парсеры json?

Dmitry
06.03.2018
18:37:22
@nwalker : jsx.

Google
Dmitry
06.03.2018
18:37:38
Мы используем jason для всего и пока jsx для потокового.

abc
07.03.2018
07:11:38
Сталкивались ли вы с такой ошибкой (FunctionClauseError) no function clause matching in :ssl_cipher.hash_algorithm/1 ?

Вроде OTP собран как обычно ошибок не было

А при HTTPoison.get("https://google.com") получаем ошибку

Ох это баг в OTP!

https://bugs.erlang.org/browse/ERL-568

2 дня назад пофиксили. вот он стабильный Erlang )))

Azat
07.03.2018
09:42:31
Этот баг только для hackney или для всех остальных (типа httpc или ibrowse) тоже?

Dmitriy
07.03.2018
09:55:06
Добрый день! Кто-нибудь работал с вебсокетами на фениксе? У меня phoenix без фронта, а просто как апи. Настроил каналы, тесты проходят. Теперь пытаюсь протестировать вебсокеты сторонним клиентом. В defmodule ChatWeb.Endpoint socket "/socket", ChatWeb.UserSocket Запустил локально сервер приложения. Пробую приконектиться сторонним клиентом по адресу: ws://localhost:4000/socket но соединение не проходит. Может там адрес сокета в фениксе другой нужно указывать?

Azat
07.03.2018
10:28:15
вроде такой же порт должен быть

Dmitriy
07.03.2018
10:35:26
оказывается нужен такой путь подключения: ws://localhost:4000/socket/websocket?token=undefined&vsn=2.0.0

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

Alexey
07.03.2018
10:39:48
Примерно так

Dmitry
07.03.2018
10:41:27
socket/websocket

И после подключения json по дефолту

Но можно что угодно

Можно вообще все везде как угодно

Кроме постфикса websocket в роуте

А ещё у большинства клиентов 1 версия протокола

Google
Dmitry
07.03.2018
10:42:47
А в 1.3 фениксе - вторая

И в Phoenix js все работает

А если самому - то нет

Dmitriy
07.03.2018
10:51:37
видимо действительно клиент использует старую версию протокола. Потому что пробовал и так и эдак

А если самому - то нет
а формат сообщения такой все-таки? { "topic":"room:id", "ref":"", "payload":{ }, "event":"event:example" }

Dmitry
07.03.2018
10:55:08
Понятия не имею

Yura
07.03.2018
11:33:42
Гайз, короче такая фигня. Допустим есть список диалогов и к каждому нужно присобачить последнее сообщение. Прелоад ясное дело с лимитом не работает. Пока придумал два варианта: первый - просто на каждый диалог делать запрос, второй - получить весь список идшников диалогов, одним запросом получить всё сообщения и вставить их на своё место. Но мне кажется, это такие дичайшие костыли. Есть какой-то нормальный вариант?

Dmitry
07.03.2018
11:36:17
Чёт вопрос плохой

Vladimir
07.03.2018
11:36:47
Чёт вопрос плохой
тоже не понял

Анастасия
07.03.2018
11:36:48
в прелоаде можно делать запрос

Marsel
07.03.2018
11:37:01
джойн кажется нужен

Dmitry
07.03.2018
11:37:01
Чёт список диалогов есть

На бумажке что-ли список

Последнее сообщение нужно присобачить

Но то что оно даже есть - не написано

Анастасия
07.03.2018
11:38:50
https://hexdocs.pm/ecto/Ecto.Query.html#preload/3-preload-queries

Alex
07.03.2018
11:51:00
зачастил народ с вопросами по Elixir, похоже он продвигается в массы

Roman
07.03.2018
12:06:20
в прелоаде лимиты не будут работать

ну т.е. не будут работать так, как нужно

Анастасия
07.03.2018
12:08:11
что значит не будут работать так как нужно

Google
Yura
07.03.2018
12:11:24
Note: keep in mind operations like limit and offset in the preload query will affect the whole result set and not each association.

вот что значит

Анастасия
07.03.2018
12:15:00
ну значит вариант ниже) https://hexdocs.pm/ecto/Ecto.Query.html#preload/3-preload-functions

Dmitriy
07.03.2018
13:37:43
а чтобы развернуть phoenix приложение на сервере (используются только вебсокеты channels), нужно проксировать через nginx?

Admin


Alexander
07.03.2018
14:05:20
нашёл применение эликсиру: скрипты писать, вместо баша, если надо что-то такое параллельно делать.

взять там мильярд урлов и посмотреть, кто из них имеет <link> rss, например

Alex
07.03.2018
15:49:45
а чтобы развернуть phoenix приложение на сервере (используются только вебсокеты channels), нужно проксировать через nginx?
Не обязательно, но и не возбраняется. Сервить статику им быстрее, tls termination эффективнее и проще

Aldar
07.03.2018
17:27:00
https://www.youtube.com/watch?v=Ko6knKmQ0PI

Dmitry
07.03.2018
19:22:37
Крутой доклад

Aldar
07.03.2018
19:45:19
Про тесты немного несогласен, если апишку пишешь - с тестами все отлично, наверное с hound человек намучался

И про дебаг тоже, дебаг в принципе на уровне в эликсире

Dmitry
07.03.2018
19:46:44
Зачем нужен Pry, если есть tracing в Elixir-е?

Артем
07.03.2018
19:50:30
https://www.youtube.com/watch?v=Ko6knKmQ0PI
спасибо ютубу за полуторную скорость

можно было бы это на живых конференциях включать

Dmitry
07.03.2018
19:54:21
Зачем нужен дебаг впринципе

Не понятно

Да и тестировать апишку легче всего через Postman

Прям идеальная штука дрюка

Google
Dmitry
07.03.2018
19:55:20
С кейсами, сценариями и тыды

Для полной интеграции

Stein
07.03.2018
20:26:42
не нравится постман, постоянно его отрендеренное окошко остается на экране, хотя я его сворачиваю

Dmitry
07.03.2018
20:43:18
не нравится постман, постоянно его отрендеренное окошко остается на экране, хотя я его сворачиваю
Но ведь можно написать разработчикам и сказать что тебе не нравится то то и то, может пофиксят

Sergey
07.03.2018
21:30:40
есть ещё такой(на Электроне) https://github.com/getinsomnia/insomnia

Alex
07.03.2018
21:35:44
мне вот тоже непонятны все дебаггеры в жрланге, потому что они просто не работают, например, через gen_server:call и прочие ожидания

ну прошел step over ты функцию одну, ок. а для кросс-процессного дебага нужен второй брейкпойнт, а потом на выходе из внутреннего процесса у тебя caller свалится по таймауту

в условиях, не покрываемых одним unit-тестом, дебаггеры просто не работают

Dmitry
07.03.2018
21:45:00
В том-то и дело, что tracing (не дебаггер) прекрасно работает, он не останавливает код, хоть локально, хоть на продакшене. И подобный трейсинг как в Erlang/Elixir достаточно уникальная вещь, которая 1) заменяет полностью (на мой взгляд) дебаг 2) одинакого хорошо работает и при разработке и в продакшене. Поэтому всякие debugger, Pry кажутся достаточно бесполезными штуками в сравнении с тем, что даёт beamVM.

Alex
08.03.2018
04:54:45
да тема интроспекции не раскрыта, видимо потому что ей нет аналогов в других языках, но проблемы, которые она позволяет решать есть у всех. может быть и не все элексирщики пользуются ей, пытаясь по старой привычке натянуть дебаг на свою систему

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

Nikolay
08.03.2018
05:46:22
про дебаг я согласен, я приплёл, крч, его просто потому что хз что ещё было ставить в минус эликсиру))

он скорее “другой”, чем “плохой"

но мне надо было седлать типа 3-3… ? я думал сказал что ecto хуже AR, но подумал что это ещё больше вызовет вопросов))

Страница 900 из 1045