Leonid 🦇
Я думал может тупо пробовать резолвить локальный сервер, нашёлся - юзаем
Leonid 🦇
Ключи для его аутентификации раздавать с облачного. Тот уже сертификатом аутентифицируется
IC
мы когда-то давно подобной фигнёй занимались для региональных провайдеров. ставили файлопомойку и бутстрапили её с hdd. остальное она докачивала уже с нашего мастера по требованию.
Alexander
Alexander
можно ещё свою проксю всегда делать вместо локального
Leonid 🦇
Ещё нужно теперь файл трансфер в обе стороны поверх асинхроненького протокола. Может поверх вебсокетов
Alexander
filetransfer over websocket
Alexander
это почти как file transfer over IRC private messages
Alexander
кто-нить так делал кстати?
IC
там же встроенное
Leonid 🦇
Ну а чо? Шли кусками
Alexander
там DCC
IC
одна фигня
Leonid 🦇
Что такое дцц?
Alexander
нет, а. нужно прямое соединение б. ты платишь за траффик до клиента
IC
Что такое дцц?
https://en.wikipedia.org/wiki/Direct_Client-to-Client
Alexander
а по приватным сообщениям ты платишь за траффик до сервера, когда интернет был дорогим - разница была существенная
Alexander
если сервер в локальной сети (как у нас был)
IC
не, если есть vpn over dns то фтп через приваты уже не так удивительно
Leonid 🦇
Оно же через нат не работало
Alexander
угу, не работало
Alexander
ещё вроде через ICMP можно в payload слать, а оно тоже не тарифицируется
Alexander
(но это я не пробовал)
Leonid 🦇
Короче, мне нужно чтобы локальный сервер подключался к облачному и его уже слушался. Т. Е. Инверс клиент-сервер
Leonid 🦇
Городить свой фрейминг лень
IC
тогда вебсокеты
IC
у них дата фреймы есть
Leonid 🦇
Вебсокеты у админов проблем не вызывают
Alexander
ну там же в датафреймах все равно нужно base64 кодировать и все такое?
Leonid 🦇
Нет
Alexander
разве?
Leonid 🦇
Ага. Это в ранних версиях нельзя было
IC
текстовые должны быть валидным UTF8, но мне кажется это довольно условно
IC
особенно если ты оба конца контролируешь
Leonid 🦇
https://tools.ietf.org/html/rfc6455#section-5.6
Leonid 🦇
Binary The "Payload data" is arbitrary binary data whose interpretation is solely up to the application layer.
Alexander
да, да, я чего-то запутался т.к. у нас по протоколу json бродил
Alexander
и из-за этого конвертировать надо было
Leonid 🦇
а может проще впн пробросить с облака в локалку?
Leonid 🦇
и тогда будет везде тупохттп
Leonid 🦇
хотя нет, это может оказаться непосильно эникейщику
Alexander
в postgresql-simple есть функции для проверки статуса коннекшона?
Leonid 🦇
select 1; ?
Alexander
оверкильно как-то
Leonid 🦇
ну вообще в libpq есть PQping. но что оно делает под капотом х.з
Leonid 🦇
хотя нет, это другое
Alexander
PQstatus(conn) == CONNECTION_BAD) что-то такое хочу
Leonid 🦇
ну вообще pgs это проверяет само вроде
Leonid 🦇
если тебе пинги нужны то это не оно
Alexander
у меня такое ощущение, что в пуле дохлые треды есть
Alexander
коннекшены т.к.
Alexander
*т.е.
Alexander
хотелось бы как-то проверить на уровне Haskell и потом долго материть того, кто сделал криво
Leonid 🦇
https://www.postgresql.org/docs/10/static/protocol-flow.html в протоколе вроде ничего нет
Leonid 🦇
@qnikst ну попробуй, но я думаю не поможет
withMVar (Database.PostgreSQL.Simple.Internal. connectionHandle con) Database.PQ.status
Alexander
Database.PQ это откуда?
Leonid 🦇
libpq
Alexander
пасиб
Alexander
ещё бы придумать как это грамотно с postgresql-simple объединить
IC
Leonid 🦇
Тем что мне нужно из он прем сервера файлы таскать, а не с облачного
Leonid 🦇
Как проксить в локалку учитывая тупого админа? Нужен считай зероконф, не считая сертификата
Leonid 🦇
Впн помог бы конечно
Leonid 🦇
Или ssh туннель
Anatolii
Товарищи,а есть где-то пакет чтобы я мог "5s" в DiffTime парсить?
Anatolii
ну и всякие "10m"
A64m
TTG вмерджили таки.
A64m
ну, не первый раз
Cheese
TypesToGo?
Cheese
а! Trees That Grow!
A64m
да
Cheese
как это отразится на пользователях?
Leonid 🦇
будет больше тормозить?
A64m
как это отразится на пользователях?
никак, фичи для пользователей больше не добавляют же
(отразится на авторах тулов, ну вернее одном авторе, других авторов тулов вроде больше нет)
A64m
будет больше тормозить?
не сильно. там было несколько вариантов, они выбрали между тормозным, но обходящим баги 8.0 и более быстрым, но не работающим раньше 8.2, выбрали второе, фича переехала из 8.4 в 8.6 поэтому
Leonid 🦇
а где обсуждение?
A64m
https://github.com/ghc/ghc/commit/1aa1d405d8212a99ac24dcfd48024a17c3ffd296
A64m
там куча ссылок
Leonid 🦇
спасибо
Cheese
who reverts reverted?