
Roman
28.08.2018
13:53:50

Igor
28.08.2018
13:54:18

Alexey
28.08.2018
13:55:19
с большой буковки
Та эт понятно) Типо смириться с тем что можно будет создать объект и не указать в него нужные параметры?

Roman
28.08.2018
13:55:43

Google

Igor
28.08.2018
13:55:49

Alexey
28.08.2018
13:56:04
Ну ни кто не обещал что будет легко)
Спасибо) Бедем крутиться)

V
28.08.2018
13:57:26
вроде как возвращать интерфейсы-то не комильфо

Abdulla
28.08.2018
13:57:48
Возвращать интерфейсы?
Откуда?

V
28.08.2018
13:58:36
выше советы про экспорт только интерфейса

Abdulla
28.08.2018
13:59:27
Экспортить интерфейс это единственный нормальный вариант

V
28.08.2018
14:00:35
accept interafces, return struct

Abdulla
28.08.2018
14:01:28
Когда ты экспортируешь интерфейс - ты объявляешь контракт - принимаешь интерфейс

Lesha
28.08.2018
14:01:53
Никто в fasthttp не получал ошибку like:
Temporary error when accepting new connections: accept tcp4 0.0.0.0:3230: accept4: too many open files

Roman
28.08.2018
14:02:14

Lesha
28.08.2018
14:02:18
периодически возникает и уже не знаю че делать. лимиты все супер поднял

Google

Daniel
28.08.2018
14:02:43
а ulimit вы покрутили?

Abdulla
28.08.2018
14:03:05

Lesha
28.08.2018
14:03:09
~$ ulimit
unlimited

Roman
28.08.2018
14:03:13

Daniel
28.08.2018
14:03:21

Lesha
28.08.2018
14:04:08
~$ cat /proc/sys/fs/file-max
3271666
~$ ulimit -Hn
1000000
~$ ulimit -Sn
1000000
В /etc/sysctl.conf
net.core.somaxconn = 65535
net.core.rmem_default = 65536
net.core.wmem_default = 65536
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
fs.inotify.max_user_watches = 16777216

V
28.08.2018
14:05:42

Lesha
28.08.2018
14:05:58
nginx показывает в среднем 5-10k req/sec

Roman
28.08.2018
14:06:09
трудно сравнивать возврат с nil
ну nil это конечно проблема да и performance слегка ниже, но это единственный безопасный вариант и я часто это видел. Ибо таки экспортировать struct с приватными полями не позволит устанавливать параметеры, а публичные поля вносят опасность того что пользователь накосячит, не укажет определённые поля и библиотека полетит

Lesha
28.08.2018
14:06:27
но такая ошибка возгникает раз в день-два. хз как такое дебажить(
и помогает перезагрузка приложения только

Michael
28.08.2018
14:12:22

Lesha
28.08.2018
14:17:35

Michael
28.08.2018
14:22:04
Замыкания есть? Профилировать пробовали?

Roman
28.08.2018
14:29:33
ээмммм, сравнивать интерфейсы же можно?
да, вроде можно: https://play.golang.org/p/xqRhuvowNem

Daniel
28.08.2018
14:50:27

Artem
28.08.2018
15:07:31
понимаю что вопрос странный
но нет ли механизма конкатенации json
типа как мне на вход пришло json с 5 атрибутами
я например его резанул до 3 нужных мне атрибутов потом добавил новых 5 своих
и отдал на выход совй json c 8 нужными
сейчас получается для каждого json нужно сначала свою структуру делать и еще на запутаться в передаче между ними данных

Google

Daniel
28.08.2018
15:08:03
да
свою и не запутаться
на самом деле - если единственное, что вы делает с json, это конкатенируете его - можно его анмаршалить в interface{}
это приведет к созданию map[string]uinterface{}, и в значениях будут числа и строки
ну или к []map[string]interface{}, если у вас такой json
но делать так для нормальной работы нежелательно

Roman
28.08.2018
15:14:43

Илья
28.08.2018
15:34:56

Daniel
28.08.2018
15:35:42
а вложенные мапы?

Kirill
28.08.2018
15:48:45

Daniel
28.08.2018
15:49:22
а про fasthttp расскажи нам в соседнем чатике :)
[]int, кстати, невалидный вариант

Илья
28.08.2018
15:49:49

Daniel
28.08.2018
15:49:59
[]float64 валидный

Илья
28.08.2018
15:50:02

Kirill
28.08.2018
15:50:10

Daniel
28.08.2018
15:50:17
https://t.me/proGO

Илья
28.08.2018
15:50:46
там же раньше флуд был страшный

Roman
28.08.2018
15:50:50

Daniel
28.08.2018
15:51:11
историческая, да

Google

Виктор
28.08.2018
15:51:24

Daniel
28.08.2018
15:51:25
у того, второго, протеялся куда-то создатель
поэтому я все собираюсь написать бота, который переведет всех в ro, и опубликует ссылку на этот чат
но - не собрался пока

Roman
28.08.2018
15:53:26
good to know, значит буду предпочитать эту группу

Kirill
28.08.2018
15:53:27

Daniel
28.08.2018
15:54:31
но бота-то мы туда воткнуть не можем

Aleksandr
28.08.2018
15:56:00
надо через клиентский апи. только что, чтобы не забанили?

Daniel
28.08.2018
15:56:20
угу

Admin
ERROR: S client not available

Kirill
28.08.2018
15:56:31
@toby3d help please

Мерлин
28.08.2018
15:56:42

Maxim
28.08.2018
15:56:45
а, чо

Мерлин
28.08.2018
15:56:46
на го пока нету

Kirill
28.08.2018
15:56:46
нужно соседний чатик пристрелить, чтоб не мучался

Daniel
28.08.2018
15:57:21
нужно от имени админа пройтись по юзерам чатика и проставить всем RO

Aleksandr
28.08.2018
15:58:15

Maxim
28.08.2018
15:58:28
В Bot API нет возможности получить всех мемберов текущего чата. Нужно чтобы тот проявил хоть какую-то активность, а бот это заметил

Мерлин
28.08.2018
15:58:35

Kirill
28.08.2018
15:58:47

Google

Maxim
28.08.2018
15:58:56

Kirill
28.08.2018
15:58:57
в том-то и проблема, что RO бот у меня и так есть

Мерлин
28.08.2018
15:59:04

Kirill
28.08.2018
15:59:07
тут нужна клиентская говнина

Aleksandr
28.08.2018
15:59:22
надо клиентом составить лист юзеров и видимо ботом отсюда приглащшение кинуть. типа того

Maxim
28.08.2018
15:59:26
Не занимался клиентской говниной, сорян. Только боты, логинка и пасспорт

Daniel
28.08.2018
16:02:02

Aleksandr
28.08.2018
16:02:35

Daniel
28.08.2018
16:02:41
о!

Maxim
28.08.2018
16:03:03
А тот кто будет через клиентские штуки ходить от своего лица может как-то юзерами манипулировать?

Kirill
28.08.2018
16:03:37
должен уметь
клиенты-то умеют
на самом деле, мы могли бы пропатчить клиент tg
и это легко сделать, если в web версии есть нормальная админка

Maxim
28.08.2018
16:04:21
должен уметь
Я про то что отсюда там админы есть? Они могут руками права юзеров трогать?

Kirill
28.08.2018
16:05:13

Maxim
28.08.2018
16:05:25
Тогда да, стучать клиентским API только. Не знаю как по другому можно

Aleksandr
28.08.2018
16:20:52
о!
ну вот например у меня есть 1705 user id
что с этим делать?

Kirill
28.08.2018
16:21:28
не путай чат