@rubylang

Страница 672 из 1684
Llll
22.11.2016
12:47:45
Не

Антон
22.11.2016
12:47:47
yopp
22.11.2016
12:47:51
яб тоже

надо мрт сделать

Google
Andrey
22.11.2016
12:48:15
И кстати, мне одному кажется что перед новым годом не самое лучше время менять работу? Я с фриланса заметил закономерность что перед нг и летом очень обычно идет спад работы.

В вакансиях есть что-то такое?

I
22.11.2016
12:48:31
я предлагал Антону спину обследовать да и всем остальным советую с нашим рабочим ритмом

Llll
22.11.2016
12:48:44
А так лучше в Португалию сгоняйте, а не к невропатологу

Татьяна Аква
22.11.2016
12:48:48
Москва Только офис Деньги до 200 Спасибо за подсказку)

Alex
22.11.2016
12:48:53
В вакансиях есть что-то такое?
Есть вариант "так получилось"

ⰿⰰⰾⱏ
22.11.2016
12:50:21
Alex
22.11.2016
12:51:11
Я бы по эликсиру побежал бы в чатик по эликсиру

Konstantin
22.11.2016
12:53:24
ага

эликсир

а по факту фуллстек angular/rails

Google
trickster
22.11.2016
12:54:12
:D

expectiation - reality

Alex
22.11.2016
13:12:10
def fetch_api(retries, retry_time) retries.times do |i| resp = Typhoeus.get(API_URL) break JSON.parse(resp.body) if resp.success? break if i == retries - 1 # return nil # try again sleep retry_time next end end Мне немного стыдно за этот блок, можно его как то покрасивше оформить?

Не считая готового гема.

yopp
22.11.2016
13:12:55
break if i == retries - 1

но зачем

Alex
22.11.2016
13:13:20
но зачем
к примеру retries = 3. Тогда блок возвращает эту цифру

Поэтому поставил чтобы возвращал nil.

yopp
22.11.2016
13:13:42
но зачем?

Alex
22.11.2016
13:14:00
Мне нужно либо получить Json либо получить nil и я буду знать что апишка недоступна.

это адекватный способ решения проблемы? или можно лучше?

Антон
22.11.2016
13:25:40
а сколько таких запросов вообще будет?

по-моему ты досишь себя

и это не отвечает на вопрос жива ли щас апишка

это какой-то плохой дизайн видится мне

Alex
22.11.2016
13:28:41
Дергается внешняя апишка которая публична.

Дергается фоновым процессом по дизайну.

Антон
22.11.2016
13:29:08
сколько раз в какое время?

I
22.11.2016
13:29:16
а API имеет там версионирование?

Alex
22.11.2016
13:29:16
Каждые 15 минут.

Google
Alex
22.11.2016
13:29:20
Нет.

I
22.11.2016
13:29:24
отстой(

Антон
22.11.2016
13:29:52
Каждые 15 минут.
а не проще дергать каждые 1 минуту и возвращать nil если апишка недоступна?

Alex
22.11.2016
13:30:00
Слишком много данных.

Берутся с публичной апишки данные и строится график.

Антон
22.11.2016
13:30:14
эээ

Alex
22.11.2016
13:30:18
чаще получать данные нет смысла.

Антон
22.11.2016
13:30:30
а ретраи потому что апишка падучая?

Alex
22.11.2016
13:30:44
Обрабатываю вариант что она может упасть.

Например апишка VK падучая.

Т.к апи мне не принадлежит, то я просто делаю ретраи. Это плохая идея?

Антон
22.11.2016
13:31:58
я бы ретраил сайдкиком, чтобы не подвешивать таску после 15 минут ретраев убивал бы

Alex
22.11.2016
13:33:01
У меня просто пока идея в крон поставить задачу которая будет раз в 15 минут получать данные.

Антон
22.11.2016
13:33:03
sleep в процессе имеет право на существование - но лучше отказаться если можно отказаться

Alex
22.11.2016
13:33:28
Т.е ты считаешь что ретрай надо выкинуть из враппера и обрабатывать по месту?

Антон
22.11.2016
13:33:45
У меня просто пока идея в крон поставить задачу которая будет раз в 15 минут получать данные.
так есть венвар, есть clockwork которые запустят тебе что надо когда надо

Alex
22.11.2016
13:33:56
знаю про whenever, я упрощал.

Я пока планирую этот минипроект потом на heroku захостить.

Там крон доступен?

Антон
22.11.2016
13:38:54
там clockwork

Google
Антон
22.11.2016
13:39:23
clock как воркер, за него платить надо

Alex
22.11.2016
13:39:35
вот чорт.

s
22.11.2016
13:46:50
на хероку есть бесплатно resque scheduler

точнее, можно использовать шедулер для resque

ну, года 3-4 назад точно можно было)

Igor
22.11.2016
14:38:20
https://www.nomadproject.io/docs/job-specification/ephemeral_disk.html

вот это технологии 21 века :)

Антон
22.11.2016
16:00:27
вот если вы не хотите много данных рендерить каким статусом ответить клиенту - данных дохера 4?? ?

I
22.11.2016
16:01:07
413

Антон
22.11.2016
16:02:07
так размер ответа слишком большой а не запроса

Admin
ERROR: S client not available

Антон
22.11.2016
16:02:28
ниужели везде надо отвечать 422?

I
22.11.2016
16:04:04
хм, есть идея ответить 403

Антон
22.11.2016
16:04:20
тогда уж 402 :)

I
22.11.2016
16:04:34
ну не, это зашквар)

тут имеется ввиду, что запрещено запрашивать такой объем

Антон
22.11.2016
16:05:03
запрашивать можно, можно не вернуть

I
22.11.2016
16:05:21
а 422 - это запрос/сущность не валидна. А она у тебя валидна, просто жирненькая

Антон
22.11.2016
16:05:41
так вот на 422 за что же тут не так отвечает какраз сервер

энтити может быть и размером результата

Google
I
22.11.2016
16:07:14
короче, тут можно по-разному посмотреть

Антон
22.11.2016
16:07:44
403 не подходит потому что в общем случае разрешено

I
22.11.2016
16:08:52
а это на post такой ответ?

просто интересно, а почему ответить-то так нельзя?

Антон
22.11.2016
16:14:39
просто интересно, а почему ответить-то так нельзя?
потому что если запрещено значит нельзя спрашивать а спрашивать можно, но можно иногда не получить ответ

I
22.11.2016
16:14:55
не, я не про 403

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

Антон
22.11.2016
16:15:16
отдать первую страницу с заголовком пагинации?
ахаха, я конечно не говорил что csv, но csv с пагинацией это хорошо

I
22.11.2016
16:15:58
не, я просто о том, почему бы не ответить пользователю все-таки тем, что он хочет?

Антон
22.11.2016
16:16:50
не, я просто о том, почему бы не ответить пользователю все-таки тем, что он хочет?
потому что память может кончится поэтому я предварительно считаю или отдаю или не отдаю

I
22.11.2016
16:17:11
ну так надо отвечать чанками

s
22.11.2016
16:17:39
если не хочется отвечать, то само собой 422

т.е. контент есть, но клиенту его не получить

хоть станцуй, но сервер его отдавать не хочет

I
22.11.2016
16:17:56
http://smsohan.com/blog/2013/05/09/genereating-and-streaming-potentially-large-csv-files-using-ruby-on-rails/

Антон
22.11.2016
16:18:02
I
22.11.2016
16:18:15
ну вот пример того, что люди отвечают стримами огромных csv

ну а на той же node.js такие ответы - это норма

Vladislav
22.11.2016
16:19:23
Есть люди на чат ботах в яндексе?

Антон
22.11.2016
16:20:15
ну вот пример того, что люди отвечают стримами огромных csv
вопрос не стоит "как отдать дофига данных", вопрос стоит "как не отдать если не хочу" :)

да и... эм... данные могут измениться в процессе выполнения так что тут я бы еще подумал бы долго

Страница 672 из 1684