@gogolang

Страница 340 из 1630
Vladimir
29.06.2017
09:10:11
Го 1.9 агрессивнее память ОС отдает

поэтому в среднем потребляет меньше

Ivahaev
29.06.2017
09:10:38
А зачем вообще это нужно?
Это до вендора было актуально.

Google
Vladimir
29.06.2017
09:10:38
но так рантайму любого языка не очень дешево ходить в ОС за памятью

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

Димка
29.06.2017
09:11:11
Vladimir
29.06.2017
09:11:33
где про это написано?
https://github.com/golang/go/issues/19325 вот этот фикс вошел в 1.9

где написано подробнее - не знаю честно )

Michael
29.06.2017
09:13:08
о c# всё тут написано https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/fundamentals

плюс от настроек самого .net

и от настроек ОС зависит

Ivan
29.06.2017
09:16:51
Подскажите, вот у меня есть структура с тэгами ` struct { a string my:"aa" b string my:"bb" } мне её надо десериализовать вот на входе у меня есть aa=1, bb=2 как мне структуру заполнить? как мне узнать что для a есть tag my=aa ? я нашел в reflect FieldByName но ничего по byTag(tagname)

Andrew
29.06.2017
09:17:06
о c# всё тут написано https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/fundamentals
Фу, не кидай сюда c#. В нём плохой GC, т.к. сам язык garbage, а он его не убирает ?

Michael
29.06.2017
09:17:47
слышал где звон, ну теперь будут знать где он

а то такое ощущение что часть участников чата посещает гадалок вместо оф доков

Google
Ivan
29.06.2017
09:22:10
Теги тут: reflect.StructTag
Да, ну оно дает посмотреть, на поле. А у меня есть структура есть таг, вопрос, какой поле? Перебирать?

Michael
29.06.2017
09:22:53
так как го гц в 1.9 is concurrent, то статья выше пригодится для общего развития

Василий
29.06.2017
09:22:54
нубский вопрос: type T []int func (a *T) sort() { for range a { ... }} на все обращения к а - ругань. Как правильно тип прописать, что бы не надо было везде в методе *a писать?

Andrew
29.06.2017
09:24:09
Да, ну оно дает посмотреть, на поле. А у меня есть структура есть таг, вопрос, какой поле? Перебирать?
Ну простой вариант вижу такой - перебирать структуру, а не входные данные. Задом наперёд, так сказать...

Ivan
29.06.2017
09:26:01
Ну простой вариант вижу такой - перебирать структуру, а не входные данные. Задом наперёд, так сказать...
верно, но не могу, мне входные сыпятся без возможности перебора. Фактически там уже range по входным идёт, и всё что у меня есть tag и значение

Monday Begins on Saturday
29.06.2017
09:29:14
Что можно почитать про atomic'и в Go, чтобы лучше понимать как оно работает и как использовать это? Не из документации

Ivan
29.06.2017
09:32:01
в encoding/json чтоль лезть внутрь

как то там же решают такую задачу

Andrew
29.06.2017
09:33:26
Предположу, что там бегают по структуре ))

Ivan
29.06.2017
09:37:07
читай просто про CAS

CAS они не go-specific

Ivan
29.06.2017
09:41:31
https://play.golang.org/p/XvRdovIdy7 вот нашел

Vitaly
29.06.2017
11:31:57
Вопрос новичка, у меня две разные задачи для одного проекта, например обработать файл и сделать бекап, у меня будут разные исполняемые файлы на выходе. Вопрос: Мне нужно два разных проекта делать? Все конфиги и точки и окружение одинаковое. И будет еще куча таких задач. Не пойму, мне что под каждую задачу создавать отдельный проект в IDE?

Серж
29.06.2017
11:35:00
иде то какая? забыл самое важное сказать!

Vitaly
29.06.2017
11:40:28
Gogland

Google
Vitaly
29.06.2017
11:40:51
А на что IDE влияет?

Kirill
29.06.2017
11:41:36
А вообще

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

Vitaly
29.06.2017
11:43:55
:)

Laura
29.06.2017
11:44:16
Всем привет! Подскажите, пожалуйста, а куда можно прислать вакансию erlang разработчика?)

Андрей
29.06.2017
11:44:40
в чатик erlang? )

Андрей
29.06.2017
11:44:54
ну или на hh.ru выложить

Laura
29.06.2017
11:45:03
не нашла такого ?

Андрей
29.06.2017
11:45:18
наверное не там искали (

Laura
29.06.2017
11:45:40
поняла, буду искать дальше, спасибо

Vitaly
29.06.2017
11:45:48
Ок, по другому: Есть много схожих задач для одного проекта. Мне создавать отдельные проекты в IDE под них? Конфиги для доступа к БД одинаковые, окружение одинаковое.

Vitaly
29.06.2017
11:48:40
Kirill
29.06.2017
11:49:25
Тогда стоит понять, что ide ни при чём

Андрей
29.06.2017
11:50:28
можно разделить на пакеты, и в схожем проекте подключать нужные пакеты

Vitaly
29.06.2017
11:50:49
Ну как бы IDE проект можно создать в родительской папке а можно в корне

Google
Андрей
29.06.2017
11:51:09
пакеты сложить в github, gitlab и потом вытягивать их оттуда

Michael
29.06.2017
11:51:28
у меня будут разные исполняемые файлы на выходе.

это из его требований

https://golang.org/doc/code.html

Vitaly
29.06.2017
11:54:04
Вопрос про конфиг, он одинаковый для всех задач. Там подключение к базе. Не буду же я его в пакет ложить и тянуть везде. Или буду? ))

Admin
ERROR: S client not available

Vitaly
29.06.2017
11:54:15
Michael
29.06.2017
11:54:33
И? не удобно?

Andrew
29.06.2017
11:55:13
Я бы хранил конфиг в одном json/yaml файле, копипастя между проектами.

Kirill
29.06.2017
11:56:09
Я бы хранил конфиг в одном json/yaml файле, копипастя между проектами.
А я бы запилил пакет конфиг и вычитывал из одного файла

Andrew
29.06.2017
11:56:48
А я бы запилил пакет конфиг и вычитывал из одного файла
Я передумал, голосую за такой же вариант ^

Kirill
29.06.2017
11:56:58
:)

Vitaly
29.06.2017
11:58:06
:) Спасибо, пошёл думать ))

Anton
29.06.2017
12:43:52
Всем двс. Есть задачка. Клиентик пишет сообщения по rest/jsonrpc в общую кучу ("storage" табличку), потом это сообщения по опред фильтрам (настраиваются одмином) диспетчеризуются в "очереди" (queue_records табличка). При диспетчеризации у сообщения появляется id очереди, в которую оно отфильтровалось. И потом клиентик может считать из очереди (по id очереди) сообщения по опред статусам. Есть для этого гошная реализация mq? или mq тут не пахнет?

Konstantin
29.06.2017
12:48:05
rabbit не подходит?

Stas
29.06.2017
12:50:18
https://nats.io/

Серж
29.06.2017
12:56:00
https://github.com/avelino/awesome-go#messaging

зачем тебе mq? не хочешь монолит потому что микросервисы это бест практис?

https://nats.io/
эта штука еще и с абоненткой наверное?

Stas
29.06.2017
12:58:50
эта штука еще и с абоненткой наверное?
нет, без. https://github.com/nats-io/go-nats

Google
Серж
29.06.2017
13:01:27
а тут написано от 99$ в месяц https://www.nats.cloud/

или есть возможность свой сервер развернуть при желании?

да, там на гитхабе и сервер есть

Stas
29.06.2017
13:04:58
а тут написано от 99$ в месяц https://www.nats.cloud/
Ну это ж с энтерпрайз поддержкой, если не хочешь, можешь не платить) А так проект полностью опенсорсный.

Anton
29.06.2017
13:13:55
зачем тебе mq? не хочешь монолит потому что микросервисы это бест практис?
таки нужен монолит. Я говорил просто про реализацию mq на го, чтобы ее использовать в проекте. Написал про mq просто потому что нужна диспетчеризация-доставка :D В принципе можно все порешать самому (не много кода получится), но если есть что-то готовое от умных людей - лучше я посмотрю на такие библиотеки

Vitaly
29.06.2017
13:46:22
Вот к чему я пришёл по структуре проекта. (см картинку). Напомню, что мне нужно выдавать несколько исполняемых файлов в одном проекте.

go build main/import_price.go

все общие инструмены и тп в папке app

вроде работает как нужно. Есть замечания?

Илья
29.06.2017
13:50:10
https://stackoverflow.com/questions/37736528/building-multiple-binaries-with-go

+ http://peter.bourgon.org/go-in-production/

лучше разложить в отдельные папки

Vitaly
29.06.2017
13:54:11
лучше разложить в отдельные папки
Спасибо. Пошёл думать...

В таком случае когда делаю go build import_cross/main.go в корне появляется main.exe А если так go build main/import_price.go то сразу import_price.exe

Илья
29.06.2017
13:59:37
go build import_cross

Страница 340 из 1630