
Andrey
01.07.2017
17:11:36
С инвалидацией по filemtime

Denis
01.07.2017
17:12:43
Как насчёт кеширования файлов системой :)

Andrey
01.07.2017
17:14:52
А как шарить между несколькими инстансами?

Nikolay
01.07.2017
17:15:05
Как развернули тему, спросил про влияние на производительность, а в ходу уже инвалидация и кроссплатформенность ?

Google

Andrey
01.07.2017
17:15:16
Пока ты в рамках одной машины и кеш держишь в памяти - ок

Nikolay
01.07.2017
17:16:03

Andrey
01.07.2017
17:16:48
Так вроде кешем файловой системы хотят обойтись
Который инвалидируется либо весь сразу, либо никак

Phil
01.07.2017
17:20:26

Denis
01.07.2017
17:36:19
Темлейты гошкины между прочем уходят в память сразу

Vladimir
01.07.2017
17:38:08

Phil
01.07.2017
17:43:54
Кстати. Еще темплейты компилируют. Ну в зависимости от реализации. Не знаю как на современных процах, а лет 15 назад имела смысл минификация (пробелы, названия пепеменных)

Nikolay
01.07.2017
21:38:45
Мимо, следующий!

blkmrkt
02.07.2017
04:12:51
Нельзя никак без лишних мутексов выделить в ф-ии блок атомарного кода? Делаю счетчики для кучи воркеров, начал писать геттеры-сеттеры с atomic.addUint64() и подобным, но понял что мне нужно еще и хранить/сравнивать время последнего вызова сеттера, чтоб суммировать статистику по n последним минутам/часам/дням.
Сделать один мутекс для всего структа со счетчиками?

Ilya
02.07.2017
05:12:58
atomic.Value
Или мютекс/rwlock

Google

Ilya
02.07.2017
05:17:05
Но в твоем случае скорее всего лучше второе

blkmrkt
02.07.2017
05:17:23
да точно, проще мьютекс

Ilya
02.07.2017
05:17:38
Value подразумевает load + store между которыми может влезть что угодно

blkmrkt
02.07.2017
05:32:26
Да уж. Сел начал переписывать код с хаскеля на го, начал играясь с либами вроде curses для интерфейса в консоли. Потом делал чтоб куча горутин писала статы в один структ не конкурируя.
В итоге нашел простой клиент statsd, который из коробки ведет статистику и шлет данные на сервер.

Vladimir
02.07.2017
08:53:04
для графита и статсд
как бонус получишь возможность через debug/vars смотреть текущее состояние дел

blkmrkt
02.07.2017
08:55:00

Vladimir
02.07.2017
08:55:20
https://github.com/peterbourgon/g2s
https://github.com/peterbourgon/g2g

blkmrkt
02.07.2017
08:57:44

Igor
02.07.2017
09:02:09
Если не написано обратного, то по умолчанию нужно считать, что потоко безопасности нет, т.к. сам язык не подразумевает потоко безопасность.

Vladimir
02.07.2017
09:12:28
учитывая что statsd внешний сервис куда просто шлешь данные, то сложно его сделать не thread-safe :)

Michael
02.07.2017
09:20:14
а связка pcp + go, никто не пробовал?

Artem
02.07.2017
09:31:12

Denis
02.07.2017
09:32:11
perfomance co-pilot

Rail'
02.07.2017
09:38:58
Ребята, подскажите что не так с синтаксисом
ошибка unexpected semicolon or newline, excepting comma or
conn, err := amqp.Dial(
fmt.Sprintf(
"amqp://%s:%s@%s:%s",
settings.RABBITMQ_USER,
settings.RABBITMQ_PASSWORD,
settings.RABBITMQ_HOST,
settings.RABBITMQ_PORT,
)
)

Ilya
02.07.2017
09:40:36
Нужна запятая после предпоследней скобки
Если пишешь все на отдельных строках

Andrey
02.07.2017
09:42:09
Лишняя наоборот после порта

Google

Denis
02.07.2017
09:42:30
чтооо

Ilya
02.07.2017
09:43:11
Так зависит от форматирования

Nikolay
02.07.2017
09:57:45

Rail'
02.07.2017
10:02:20

Alex
02.07.2017
10:04:22
Коллеги, кто использует GoSublime подскажите.
Как сделать что бы работала подсказка по пакетам установленным через go get? Возможно нада сказать обновить инфу как-то?

Nikolay
02.07.2017
10:06:09

Alex
02.07.2017
10:06:49
я так понимаю речь о gocode - нет, не запущен

Nikolay
02.07.2017
10:07:28
По идее там все должно из коробки вставать. Нет, речь о демоне, который идет в пакете с GoSublime. Он сам себя должен собрать на Go и запуститься. После этого все заработает
margo он по-моему называется
или как-то так

Alex
02.07.2017
10:09:17
gosublime.margo_r17.03.05-1_go1.6.2 такой запущен

Nikolay
02.07.2017
10:09:39
тогда не знаю

Nikolay
02.07.2017
10:13:15
А подсказки - это тексты из gocode? или просто отпечатки функций автокомплита?

Ilya
02.07.2017
10:14:26

Nikolay
02.07.2017
10:15:43
тексты из godoc*

Alex
02.07.2017
10:16:52
подсказки наверное тоже

Nikolay
02.07.2017
10:17:15
А, просто не читает пакеты из GOPATH?

Alex
02.07.2017
10:17:35
видимо да

Nikolay
02.07.2017
10:18:22
видимо да
Может отдельно настройки проекту задать?
https://github.com/DisposaBoy/GoSublime/blob/master/USAGE.md#per-project-settings--project-based-gopath
А что консоль саблайма по этому поводу пишет?

Google

Alex
02.07.2017
10:21:55
Спасибо, криво был прописан gopath в gosublime

blkmrkt
02.07.2017
10:47:59
Хмм странно - если некоторые поля моего структа не подписаны сахаром, например json:"access_token,omitempty", они не будут маршалиться вообще?

Denis
02.07.2017
10:50:36
Будут
С таким же названием как и поле в структуре
С большой буквы

Admin
ERROR: S client not available

blkmrkt
02.07.2017
10:56:33

Maxim
02.07.2017
10:57:16
Имена объектов с маленькой буквы
Вообще непонятно, то верхний, то нижний регистр

blkmrkt
02.07.2017
10:58:04

Denis
02.07.2017
10:58:23
Он их не видит
С маленькой приватные поля

blkmrkt
02.07.2017
10:59:00
Он их не видит
ох понятно, все-таки значит нужно к каждому полю добавить сахар для жсона (или как это называется)

Maxim
02.07.2017
10:59:14

Denis
02.07.2017
10:59:16
Даже если добавишь не увидит

blkmrkt
02.07.2017
10:59:18

Maxim
02.07.2017
10:59:32
Нужно чтобы имя объекта было с большой буквы
Тогда у тебя будет к нему доступ

blkmrkt
02.07.2017
10:59:52

Maxim
02.07.2017
11:00:42
Сахар - не совсем сахар. Он нужен если имена в структуре отличаются от имён в данных и их нужно склеить. Или если тип содержимого особенный.

Google

Maxim
02.07.2017
11:01:20
В любом случае при работе "наружу" таким "сахаром" лучше не пренебрегать и писать. Так надёжней

blkmrkt
02.07.2017
11:01:43
а рабочий генератор голанговских структов существует из json schemas? На гитхабе посмотрел несколько, но я так понял что у многих есть ломающие issues

Maxim
02.07.2017
11:02:59

blkmrkt
02.07.2017
11:04:23

Maxim
02.07.2017
11:05:01
Копируй @ вставляй

blkmrkt
02.07.2017
11:05:17

Maxim
02.07.2017
11:21:50
Скорее всего ручками

blkmrkt
02.07.2017
11:37:04
фух спасибо вам, осилил
понимаю что инты и указатели, но все же