@proelixir

Страница 905 из 1045
Dmitriy
12.03.2018
11:07:41
Если база существует - и каждый раз при тестах ее нечем создавать, то в mix.exs из alias для теста можно удалить ecto.create
спасибо! так и сделал. Теперь норм, тесты запускаются и прогоняются без ошибок. БД не совсем рельсовая, она сама по себе в отдельном докер-контейнере. Просто все миграции в рельсах, а не в фениксе.

Артем
12.03.2018
11:43:20
сброкер прям норм

sbroker_example:start_link/0 will start an sbroker with queues configured by QueueSpec. This configuration uses the sbroker_timeout_queue callback module which drops requests when they have been in the queue for longer than a time limit (200 milliseconds). To use this sbroker:

Dmitry
12.03.2018
11:44:34
Всем привет! Вопрос, среди тех, кто работает в Европе, у кого какие новведения в связи с GDPR?

Google
Yuri
12.03.2018
12:18:05
За невыполнение закона накладывается штраф 20 000 000 EUR

Всем привет! Вопрос, среди тех, кто работает в Европе, у кого какие новведения в связи с GDPR?
че они хотят в итоге по этому закону? чтобы не сливали базы никому?)

Dmitry
12.03.2018
12:22:14
@yurgon Ага.

Безопасность пользовательских данных как само собой разумеющееся.

Это влечет последствия для тех, кто системы разрабатывает, которые работают с данными пользовательскими.

Buckler
12.03.2018
15:25:14
Hello, Александр! Please, calculate: 65+87=... If you don't answer - you'll get banned from the channel... Good luck!

Hello, Sergo! Please, calculate: 8+76=... If you don't answer - you'll get banned from the channel... Good luck!

Vlad
12.03.2018
17:44:39
Разработка высоконагруженного WebSocket-сервиса https://habrahabr.ru/post/351012/

Занятная статейка, интересно было увидеть реальные графики)

Alexey
12.03.2018
17:46:55
получается, что 800к коннектов - это 10 машин

то есть, приблизительно, по машине на 100к вебсокет коннектов

и да. сейчас там гошники униматься не будут )

Vlad
12.03.2018
17:52:31
Ждём холливара?

Google
Alexey
12.03.2018
17:53:29
интересно то, что упиралось и в процессор на 45% загрузки. я бы не стал в кластер добавлять машин, а поглядел предел возможностей одной ноды

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

субъективно, мне кажется, что 100к коннектов на одну машину - это не предел.

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

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

Vlad
12.03.2018
17:59:49
Похоже на Postgress, согласен, мне тоже кажется она и окажется ботлнеком если нужно будет ещё расширяться)

Dmitry
12.03.2018
18:31:59
Ребят, кто шарит в докере

Пытаюсь сделать дев окружение для эликсира себе

Как при docker-compose up не запускать ничего, но как бы сам контейнер, чтобы к нему можно было приаттачиться

Aleksey
12.03.2018
18:33:38
вроде docker-compose run NAME sh | bash

Dmitry
12.03.2018
18:34:11
run запускает какую то копию контейнера и почему-то не пробрасывает мне порты

Т.е. вместо app запускает myapplication-app-1 контейнер

И порты не экспоузятся

Aleksey
12.03.2018
18:36:16
Т.е. вместо app запускает myapplication-app-1 контейнер
не совсем понял, а разве это неправильно?

Dmitry
12.03.2018
18:36:47
Я хз, может и правильно

А как тогда порт пробросить

Aleksey
12.03.2018
18:37:39
должен сам пробрасываться, если в docker-compose.yml прописан можно и руками вроде https://docs.docker.com/compose/reference/run/

Dmitry
12.03.2018
18:38:07
Ща секу, скину ps

Aleksey
12.03.2018
18:38:37
хотя, кажется, надо указать --service-ports для портов

Dmitry
12.03.2018
18:41:38
web: build: context: ./docker/dev dockerfile: Dockerfile container_name: web ports: - 4000:4000 volumes: - type: bind source: . target: /asdf/app - ~/.ssh:/asdf/.ssh depends_on: - mongodb - postgres - elasticsearch - redis

Google
Dmitry
12.03.2018
18:41:47
Вот конфига для веба

Aleksey
12.03.2018
18:42:37
попробуй docker-compose run --service-ports web bash

Dmitry
12.03.2018
18:43:49
$ docker-compose ps Name Command State Ports ------------------------------------------------------------------------------ elasticsearch /usr/local/bin/docker-entr ... Up 9200/tcp, 9300/tcp mongodb /run.sh Up 27017/tcp, 28017/tcp postgres docker-entrypoint.sh postgres Up 5432/tcp redis docker-entrypoint.sh redis ... Up 6379/tcp web /bin/bash Exit 0

Это ps

Ща попробую с портами

Да, супер, походу работает

$ docker-compose ps Name Command State Ports ---------------------------------------------------------------------------------------- myapi_web_run_1 bash Up 0.0.0.0:4000->4000/tcp elasticsearch /usr/local/bin/docker-entr ... Up 9200/tcp, 9300/tcp mongodb /run.sh Up 27017/tcp, 28017/tcp postgres docker-entrypoint.sh postgres Up 5432/tcp redis docker-entrypoint.sh redis ... Up 6379/tcp web /bin/bash Exit 0

Aleksey
12.03.2018
18:45:26
?

Dmitry
12.03.2018
18:45:52
А нельзя сделать, чтобы он web запускал?

Aleksey
12.03.2018
18:46:20
в смысле полноценно запускал + консоль отдельно?

Dmitry
12.03.2018
18:46:47
Ну хз

Чтобы в ps было только web

И он всё время работал, а я к его консоли приаттачивался и отключался

Aleksey
12.03.2018
18:47:33
это тогда вообще не run вроде

Dmitry
12.03.2018
18:48:01
Ну понятное дело

Только вот как

Aleksey
12.03.2018
18:48:07
docker-compose up [-d] потом посмотреть id контейнера и docker exec -it ID /bin/bash

ну или просто bash, наверное, тоже сработает, если в run работает

Dmitry
12.03.2018
18:51:16
Как то сложно

Ну и хрен с ним

Google
Dmitry
12.03.2018
18:51:29
Главное - работает

Статью наверное напишу, а то ещё ни одной не нашёл нормальной

Aleksey
12.03.2018
18:52:15
почему сложно?

docker exec в конкретном контейнере выполняешь команду, заходишь в консоль

Dmitry
12.03.2018
18:53:20
Ну docker exec -it b8c220ded9bd /bin/bash Error response from daemon: Container b8c220ded9bd0e512074c80d0ee8b2fac017c00911019869f5a13a1d7be247f7 is not running

Aleksey
12.03.2018
18:53:21
может есть проще способ, но я не знаю

Dmitry
12.03.2018
18:53:25
Вот по этой причине

Aleksey
12.03.2018
18:53:34
а как ты этот id нашел?

Dmitry
12.03.2018
18:53:46
Через docker ps

Aleksey
12.03.2018
18:54:07
ну, может не то скопировал так не может быть

Dmitry
12.03.2018
18:54:23
Возможно в контейнере надо что-то запустить долгобегущее

Чтобы он не умер

И тогда к нему можно приклеиться

Aleksey
12.03.2018
18:55:24
ну, там ведь сервер должен запускать разве нет?

Dmitry
12.03.2018
18:55:55
Ну нет

Сервер я вручную хочу запускать

Aleksey
12.03.2018
18:56:27
в конфиге для web должна быть command какая-то

Dmitry
12.03.2018
18:57:00
Ну у меня баш остался

От докерфайла

Он сразу и умирает

Google
Aleksey
12.03.2018
18:57:43
а зачем сервер вручную запускать?

Dmitry
12.03.2018
18:58:01
Ну, чтобы логи смотреть

Чтобы дебажить

Прямо там

Это же яксир

Тут можно код прямо в работющую ВМ вставлять

Я всегда так делаю

Aleksey
12.03.2018
19:00:16
а чем тогда вариант с run не подходил?

Dmitry
12.03.2018
19:00:42
Ну он подходит

Просто 2 контейнера создаётся

web типа мёртвый висит

Так я подумал может есть варианты

Aleksey
12.03.2018
19:03:32
думаю, есть, но я про них не знаю я у себя двух контейнеров вроде не замечал

Alik
12.03.2018
23:55:45
Смотрите доклад Николая Сверчкова с казанского митапа по Elixir — Из Ruby в Elixir (и обратно): прагматичный взгляд: http://amp.gs/f17u Слайды: http://amp.gs/f17D
Доброго времени суток. Это видео появлялось выше в беседе. Я смотрел его около недели назад, так что могу не помнить всех ньюансов. Суть: в видео прозвучала мысль что запускать elixir-овские приложения внутри docker-контейнеров не есть хорошо и вроде как на эту тему есть какие-то доклады. Знаете ли вы какой-то доклад на эту тему, или возможно у вас есть своё мнение почему нельзя так делать? Потому что статей как это сделать достаточно, да и это довольно удобно, учитывая сложности при разворачивании приложений на elixir.

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