@oop_ru

Страница 471 из 785
Sergey
24.01.2018
23:04:23
а примеры смотреть - ну ты научишься делать ровно то же самое но ничего нового не усвоишь)

Артур Евгеньевич
25.01.2018
09:59:00
@fesor ты одно время форсил идею, что дубляж кода, это не всегда плохо.И в ряде случаев он допустим, ка кэто называется по умному и есть почитать на эту тему?

Alexandr
25.01.2018
10:01:11
https://hackernoon.com/this-is-not-the-dry-you-are-looking-for-a316ed3f445f

Aleh
25.01.2018
10:03:02
http://verraes.net/2014/08/dry-is-about-knowledge/

Google
Sergey
25.01.2018
10:12:10
ну уже скинули ссылки

Arky
25.01.2018
10:21:01
Что такое кохижен? (гугол знает только колижен)

Danil
25.01.2018
10:21:14
cohesion

Sergey
25.01.2018
10:21:52
Arky
25.01.2018
10:22:37
кк, пасиба

Andrew
25.01.2018
10:54:32
Ребята, такой вопрос. Существует ли какой-то единный стандарт для health-check сервисов?

Борис
25.01.2018
11:03:35
Roman
25.01.2018
11:04:43
500 - это вообще пиздец

Maksim
25.01.2018
11:05:15
Andrew
25.01.2018
11:05:19
ну смотри. Есть быстрый чек - Statsus Code 200/500 Есть более глубокая проверка. Чекнуть доступность базы, кэшеров, доступность других сервисов и все такое.

Вот пока такое что-то более менее адекватное нашел - https://github.com/hootsuite/health-checks-api

Roman
25.01.2018
11:05:50
шта?
500 - это пизда вебсерверу

Google
Andrew
25.01.2018
11:06:05
Тогда уже 5XX

Maksim
25.01.2018
11:06:08
500 - это пизда вебсерверу
круто. а 400 не напомнишь о чём говорит?

Maksim
25.01.2018
11:06:23
и как он соотносится с хэсчеком?

Борис
25.01.2018
11:06:25
400 хотя бы
400 это ошибка клиента, братан. В данном случае \то значит что твой HealthChecker работает неверно

Tex
25.01.2018
11:06:30
круто. а 400 не напомнишь о чём говорит?
следуя логике - пизда запросу

Bohdan
25.01.2018
11:06:38
и шлёт всякую фигню

Roman
25.01.2018
11:06:42
Bohdan
25.01.2018
11:06:51
типа "эй мен, че ты гонишь" = 400

Maksim
25.01.2018
11:06:59
л - логика...

Tex
25.01.2018
11:07:12
Но не веб-серверу
а хелсчекаешь ты сервер или запрос? 400 ответ на запрос вполне может быть и при корректной работе сервера

Roman
25.01.2018
11:07:26
У тебя может nginx быть поднят, а вот приложение за ним, к которому он запросы проксирует - лежать.

Serge
25.01.2018
11:08:09
503 ?

Maksim
25.01.2018
11:08:16
коды ответов < 500 - не проблема "здоровья" сервера

Aleh
25.01.2018
11:10:42
ну как, если хелсчекер получил 4хх, то это говорит о проблеме тоже

поменялся интерфейс и хелсчекер не обновили(а может еще что не обновили, проблемка) или просто почему-то этот интерфейс, который раньше работал, теперь не работает, надо смотреть

Maksim
25.01.2018
11:11:23
это говорит о том, что клиент рукожопый, или ему надо чуток подождать (в случае ограничения числа запросов)

Google
Maksim
25.01.2018
11:11:39
что тоже говорит о том, что клиент рукожопый

Aleh
25.01.2018
11:12:21
это может говорить о том, что вы в api наделали BC и какие-то клиенты теперь отваливаются

Maksim
25.01.2018
11:12:57
ток к хэлс чеку это отношения не имеет. ты хочешь мониторить доступность сервиса, или тестировать его?

Aleh
25.01.2018
11:12:58
т.е. 4хх это не ошибка клиента, это ошибка запроса, а вот где ошибка еще надо посмотреть

Maksim
25.01.2018
11:13:42
а запрос из вохдуха берётся, да?) его не клиент составляет?)

Aleh
25.01.2018
11:14:02
а в апишке объекты из воздуха берутся, они не из запроса парсятся?

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

Maksim
25.01.2018
11:15:29
ошибка может быть как в разборе запроса, так и в составлении
если есть ошибка разбора, значит была ошибка составления

Maksim
25.01.2018
11:15:46
пример

Sergey
25.01.2018
11:16:11
Ребята, такой вопрос. Существует ли какой-то единный стандарт для health-check сервисов?
нет, не существует, так как тема слишком обширная. Скажем для твоей http api было бы неплохо статус страничку сделать которая плюется либо 200 когда все хорошо либо 500/0. Она же может еще и чекнуть состояние зависимостей и вернуть чуть другой статус код или больше деталей. НО это уже для людей.

Aleh
25.01.2018
11:16:15
раньше можно было посылать { a: ["a"] } решили добавить еще возможность посылать числа в массиве, но строки сломали

Sergey
25.01.2018
11:16:21
конечно нет
но тогда это не 4xx

либо сервер не сказал про формат

нехороший сервер

Aleh
25.01.2018
11:16:53
что сломали парсинг строк на сервере? Даж не знаю

Google
Sergey
25.01.2018
11:17:04
Aleh
25.01.2018
11:17:15
это вопрос совместимости
я так и написал изначально)

Sergey
25.01.2018
11:17:16
если клиент не обновился - его проблемы

Maksim
25.01.2018
11:17:29
блин... рест фул апи, рест фул апи... вон даже с кодами наркомань устраивают...

Sergey
25.01.2018
11:17:47
зависит
политику не надо сюда приплетать. У тебя есть content negitiation для подобной херни

Aleh
25.01.2018
11:19:03
Sergey
25.01.2018
11:19:30
блин... рест фул апи, рест фул апи... вон даже с кодами наркомань устраивают...
нет никакой наркомани. 400 - запрос получен но не могу его обработать, попробуй послать мне нормальный запрос. Вот тебе в заголовках что я принимаю на вход (accept), вот тебе OPTIONS что бы можно было узнать как со мной общаться.... 418-ый хороший пример - ты шлешь запрос а сервер тебе говорит "я чайник, попроси кого другого, не я виноват что ты шлешь запросы чайнику"

Admin
ERROR: S client not available

Aleh
25.01.2018
11:20:11
у меня тож нет никакой наркомании

у Сергея все правильно записано)

Sergey
25.01.2018
11:20:52
но возвращаясь к теме дискуссии - для health check надо 2xx и 5xx

или только 2xx + json ;)

Maksim
25.01.2018
11:21:17
+1 хэлсчеку срать на 4** он не тестирует, он проверяет доступность

Sergey
25.01.2018
11:21:20
или просто порт можно проверить

Bohdan
25.01.2018
11:21:39
ну порт это уже более специфично по идее

Sergey
25.01.2018
11:22:10
+1 хэлсчеку срать на 4** он не тестирует, он проверяет доступность
смотря что он тестирует. - сервер, как ты там? - ох, сча узнаю.... чет почки, ой то есть база шалит, версия миграций не актуальная, и вообще чето как-то лэтенси до рэдиса большая.... ну то есть жить буду но такое

Bohdan
25.01.2018
11:22:12
если висит апач/нгинкс/you name it на порту, а за ним пусто - порт ведь занят будет

слейв упал - почку удалили :D

Google
Sergey
25.01.2018
11:23:19
слейв упал - почку удалили :D
сервер знает только о двух почках которые закрыты балансером. Почек под копотом может быть и больше и даже если у тебя последний слэйв сдох - балансер может перекинуть на мастер

серверу будет казаться что у него все еще две почки

хотя он уже лежит в ванне со льдом

Bohdan
25.01.2018
11:23:43
как выгодно иметь под капотом много почек...

Sergey
25.01.2018
11:24:19
хэлстчеки это как логи или мониторинг. Кто-то знает тут какие-либо стандарты? врядли так как все зависит от системы

Bohdan
25.01.2018
11:24:31
сразу спрошу, пока умы здесь есть какой-то the right way для построения апи?

Sergey
25.01.2018
11:24:48
и почитай про идемпотентность

Bohdan
25.01.2018
11:25:01
сердце такое "да ты чо, да я хз"

вкратце знаю, что имеется ввиду

Maksim
25.01.2018
11:25:19
как сделаешь, так сделаешь) универсальной вундервафли всё равно нет)

Sergey
25.01.2018
11:25:45
вкратце знаю, что имеется ввиду
ну то есть руководствоваться надо... девелопер эксприенс. Стараться делать побольше идемпотентных методов....

почитай еще про http verbs (в спецификации http а не на каком-нибудь бложике где post это create)

Bohdan
25.01.2018
11:26:26
да мне больше вопросы в плане заковык всяких нет у меня нормального девелопер экспириенса по апи для spa) о том, какие из них идемпотентны, какие нет - читал где-то

Sergey
25.01.2018
11:26:27
ну или просто возьми jsonapi или рекомендации мелкософта по построению API

https://github.com/Microsoft/api-guidelines

можешь с этого начать, как по мне оч годно

Bohdan
25.01.2018
11:26:59
уже нарыл, спасибо

Sergey
25.01.2018
11:27:44
послал запрос - он зафэйлился (интернет затупил), можешь послать еще раз и ничего страшного не случится

Bohdan
25.01.2018
11:28:24
mdn в качестве спеки по http сойдет? w3 все же читается сложнее

Страница 471 из 785