@proGO

Страница 439 из 1674
Roman
30.01.2017
21:04:19
Фил, ты всегда так неформализовано отвечаешь?

Phil
30.01.2017
21:05:04
Нет. Я не совсем понимаю что ты не понимаешь. Я хочу периодически чистить базу от мусора. Выкидывать ключи с истекшей expire_date

Roman
30.01.2017
21:06:15
Чем тебе lmdb не нравится?

Тебе нужны вторичные ключи?

Google
Phil
30.01.2017
21:06:39
Не

Roman
30.01.2017
21:06:44
Бери тарантул или монго

Quet
30.01.2017
21:06:46
Roman
30.01.2017
21:06:59
plz no
А что с ней не так?

Quet
30.01.2017
21:07:00
бери что-то нативное эмбедед

Phil
30.01.2017
21:07:05
Бери тарантул или монго
блин, я как раз хотел облегчить

Quet
30.01.2017
21:07:45
А что с ней не так?
нативной нет, ебаться с сишным кодом за сомнительный профит

Roman
30.01.2017
21:07:50
Не
Чо не? У тебя либо kv, либо вторичные ключи

Phil
30.01.2017
21:07:55
бери что-то нативное эмбедед
угу. бунтдб. и мой сервис сможет выдавать и рефрешить ключи, но все ресурсы воспользоваться этим не смогут

Quet
30.01.2017
21:07:55
так-то сама по себе отличная база

Phil
30.01.2017
21:08:38
Чо не? У тебя либо kv, либо вторичные ключи
а. ну да. я немного не туда подумал. ещё раз - я просто хочу чистить устаревшие данные

Google
Phil
30.01.2017
21:09:03
болтдб или левелдб нативный
и что я буду с ними делать за рамками сервера авторизации?

Quet
30.01.2017
21:09:13
чистить путём итерации по всем ключам раз в хз сколько

Phil
30.01.2017
21:09:25
Какие все? Яндекс? Мылру?
нет. мои /resource, которые конечно же будут отдельными сервисами

Quet
30.01.2017
21:09:42
ничего, а зачем? сервер авторизации пусть и менеджит все

Phil
30.01.2017
21:09:45
wtf "устаревшие данные"?
данные, у которых expire_date < NOW()

Quet
30.01.2017
21:09:57
нехер кем-то ещё лазить в базу

Phil
30.01.2017
21:10:01
ничего, а зачем? сервер авторизации пусть и менеджит все
эм, а токен я как использовать потом буду?

Quet
30.01.2017
21:10:32
сделай апи отдельный у сервера для этого

Roman
30.01.2017
21:10:33
Фил, ну сформулируй что ты хочешь строго и потом уже спрашивай

данные, у которых expire_date < NOW()
Где эта expire_date хранится?

Phil
30.01.2017
21:11:12
сделай апи отдельный у сервера для этого
я не очень понимаю что я тогда вообще выиграю. не, есть токен интроспекшн конечно

Где эта expire_date хранится?
ну так это зависит от. вообще это payload токена

Quet
30.01.2017
21:11:53
я не очень понимаю что я тогда вообще выиграю. не, есть токен интроспекшн конечно
если дашь кому-то ещё лазить в базу это хорошим не закончится

kuznetsovin
31.01.2017
04:22:10
Никто не сталкивался с годным GUI для go? Пробовал sciter, но он сыроват. Про биндинги qt вообще молчу...

Alexander
31.01.2017
05:17:01
Хочу сделать для oauth2 отдельный сторадж токенов. Всё ничего, но это не простой k/v, а мне нужен флаг "активный" и две даты - expire и remove. Ну или в минимуме хоть какую-то дату. Или я зря мучаюсь и брать тот же *SQL?
можно сделать же структурку, во внутреннем состоянии будет kv с ключами, слайс с ними же отсортированный по выгоранию. наружу будет торчать интерфейс с Get, Set. В New.. формируешь эту структуру, и запускаешь горутину, которая будет содержать большой for - select с ответами на запросы, и переодическими проверками надо ли что-то удалить (берешь первый элемент в слайсе и смотришь раньше он или позже).

выгорание происходит не четко в указанное время, но в ближайший период (как настроишь таймер для проверки "есть ли что на удаление")

Alexander
31.01.2017
06:08:18
мне показалось, что она не нужна ?

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

Google
Phil
31.01.2017
07:09:41
Да не, есть там всякие buntdb. Они даже вроде индексы умеют. Но тут получается странная пепяка - я сервис (сервис авторизации), который хочу упростить, превращаю в сильно нагруженные не масштабируемый сервис из-за эмбедед дб. Возможно это даже правильно - собственно проверка токенов сервисами ресурсов никуда не денется - будут они в базу лазать, или к тому же сервису авторизации ходить. Но косяк - нерасширяемость. Т.е. если сервис авторизации начнет "чихать", то сделать с этим я решительно ничего не смогу

Phil
31.01.2017
07:17:28
Мне кажется, что мы с тобой говорим на разных языках. Я хочу чистить протухшие ключи. У каждого ключа стоит срок его дейтвия. По окончанию я хочу его почистить

Я не знаю как это ещё сказать

да, я при этом хочу задавать информацию о client (это термин oauth такой), брать её и хотеть расширяемость сервиса авторизации

Denis
31.01.2017
07:20:21
mongodb ttl

anydb TTL

Alexey
31.01.2017
07:20:35
да, я при этом хочу задавать информацию о client (это термин oauth такой), брать её и хотеть расширяемость сервиса авторизации
А чо, там меганагрузка будет? Я бы SQL взял и не парился. Только в интерфейс все завернул бы, чтоб потом легко поменять можно было.

Denis
31.01.2017
07:20:38
+google

Phil
31.01.2017
07:22:19
Срок действия сколько? Год? Два? Миллион лет?
30 секунд, 5 минут, месяц. чистить можно реже конечно 30 секунд. просто у oauth база ключей растет достаточно быстро даже на маленьких инсталяциях и пускать это на самотек нельзя. можно на пустом месте получить 2Gb тухлых токенов

Phil
31.01.2017
07:23:16
+google
ну если mongo, то это уже такая бд-бд, я в таком вариате и sql поставлю, нахер мне монга

Roman
31.01.2017
07:24:12
Можно по сессии на диске, можно пачку в 1 файл

Phil
31.01.2017
07:24:33
Файл на диске.
у файла на диске очень маленький запас по конкурентности. и 0 по масштабируемости.

Phil
31.01.2017
07:24:53
Можно по сессии на диске, можно пачку в 1 файл
собственно в текущей панельке у меня так сессии работают :))))))

Alexander
31.01.2017
07:25:06
а что нагрузка уже завтра попрет бешенная? сделай сейчас самый просто in-memory storage, как я описал выше и делай дальше задачи. времени - пара часов

Google
Phil
31.01.2017
07:27:29
Srsly?
да. он же точка блокирования. и да, для уменьшения эффекта его надо будет жестко чистить. ну или как эмбедед - без блокировок и перечитыаний, но я потерял смысл при наличии эмбедед дб

Phil
31.01.2017
07:28:58
Какая еще точка блокирования?
ммм... чтобы писать нужна ведь блокировка? а писать уда прстоянно будут

погодь. есть решение - mysql. любое другое должно быть чем-то лучше

Phil
31.01.2017
07:30:10
Писать что именно?
новые токены

Roman
31.01.2017
07:31:11
новые токены
1 токен - 1 файл

Alexander
31.01.2017
07:31:13
какие требования (список) есть к этому новому сервису? говорить лучше/хуже и обсуждать что-то можно только при наличии этих требований

Admin
ERROR: S client not available

Phil
31.01.2017
07:33:30
1 токен - 1 файл
т.е. бд это фс. не вижу чем это лучше mysql. да, я наверное хотел приобщится к миру nosql, на котлрыц все так дрочат. но видимо как и с нотовыми либами - опять мимо )))

какие требования (список) есть к этому новому сервису? говорить лучше/хуже и обсуждать что-то можно только при наличии этих требований
да обычный oauth2. весь инет в нем. понятия не имею какая нагрузка будет. модели просчитываемой нет. но если 10 приложеной одновременно ломануцо, хочется даже не заметить этого

Какие-то очевидные вещи хочу задать на уровне проектирования арзитектуры

Alexander
31.01.2017
07:36:48
я не знаю что такое обычный oauth. сколько запросов будет, требуется ли вообще что-то хранить, есть ли проблемы, если сервис упадет, а потом поднимется и вдруг ключей за последние 5-10 минут перед падением не будет

Phil
31.01.2017
07:36:57
чтобы на скаку не вспоминать, что я за чем-то записал токен как есть. как это делает 146% готовых библиотек кстати

Alexander
31.01.2017
07:37:10
на эти вопросы ответишь и у тебя уже какие-то решения отсекутся

а сейчас тупо на печи лежишь и растекаешься мыслью по древу :)

дело в общем-то хорошее, но к конкретному решению не приводящее

dypa
31.01.2017
07:39:23
чтобы на скаку не вспоминать, что я за чем-то записал токен как есть. как это делает 146% готовых библиотек кстати
я верно понимаю что уже делался обзор готовых решений? или же всё упирается в то что сложно разбираться с чужим кодом?

Google
Phil
31.01.2017
07:39:40
я не знаю что такое обычный oauth. сколько запросов будет, требуется ли вообще что-то хранить, есть ли проблемы, если сервис упадет, а потом поднимется и вдруг ключей за последние 5-10 минут перед падением не будет
1. требуется ли хранить в oauth что-то? ну вообще токены. да персистентно. но это не важно в моем случае - можно и не хранить. до вопроса персистентности мы ни разу не дошли. 2. сколько запросов будет я не знаю. может дальше тестов ничего не уйдет а может в день по 100 новых клиентов будет. собственно хотелось бы по возможности соломку подстелить. это нормальное желание и последние 20 лет оно мне сильно помогало

Phil
31.01.2017
07:43:36
я верно понимаю что уже делался обзор готовых решений? или же всё упирается в то что сложно разбираться с чужим кодом?
делался. большинство из них или сложно расширяемое (тот же fosite для гидры), или использует стремные мапы (какой-то странный танец с проецировнием структуры на базу в котором я честно утонул) и не масштабируем (из-за buntdb) go-oauth2, или osin... который сейчас по колу разбираю, чтобы выбросить универсальность и воткнуться в места записи, чтобы ключи засранец хэшами писал. а, ну и все конечно не умеют токены хэшами, или как есть пишут, или шифруют. 2017 год

возьми redis
ну вот кстати редис действительно. он вроде даже шардится умеет или пытался уметь

Berkus
31.01.2017
07:47:28
там был какой-то протокол https://redis.io/topics/cluster-tutorial

Phil
31.01.2017
08:02:11
я верно понимаю что уже делался обзор готовых решений? или же всё упирается в то что сложно разбираться с чужим кодом?
Если ещё помнить буду, может запилю поверзностный обзор. Ещё coreos/dex забыл. Он клевый. Но разбираться в нем сопоставимо с "написать всё с 0"

Denis
31.01.2017
11:03:18
https://github.com/murlokswarm/app

Phil
31.01.2017
11:04:14
что это?

Denis
31.01.2017
11:05:30
Package to build multiplatform apps with Go, HTML and CSS.

Alexei
31.01.2017
11:06:20
Какой моветон ))))

Viktor
31.01.2017
11:07:00
собирать мультиплатформу только на макоси? лол :)

Constantine
31.01.2017
11:07:13
мне кажется, что эти все фреймворки делают те, кто тестовые задания выполняет :D

иначе я не могу объяснить, нахуя их плодят

Denis
31.01.2017
11:07:28
?

Constantine
31.01.2017
11:07:48
я тут рест простой заводил, взял Chi посмотреть, посмотрел доку. ну нахуй, взял Echo снова, потому что мне нравится return c.JSON()

Alexei
31.01.2017
11:08:35
скорее это неосиляторство уже заслуженных и удобных средств

Phil
31.01.2017
11:09:18
Или они не такие удобные, раз их осиливать надо

Constantine
31.01.2017
11:09:32
они все похожие

80% фреймворков прокидывают тот же ResponseWriter

и только часть изобретает свой Context

Страница 439 из 1674