
Юрий
23.08.2018
12:15:19
cannot find package

Roman
23.08.2018
12:16:10

Юрий
23.08.2018
12:23:43
в корне проекта

Google

Юрий
23.08.2018
12:24:33
импортирую стандартно:
...
"github.com/micro/go-micro/errors"
"gopkg.in/dgrijalva/jwt-go.v3"

Roman
23.08.2018
12:25:06

Юрий
23.08.2018
12:25:31
/home/develop/projects/go/src/shop/srv/access-token тут
GOPATH /home/develop/projects/go

Roman
23.08.2018
12:26:23

Юрий
23.08.2018
12:26:55
go run / go build не пашет ошибки повторяются: cannot find package

Roman
23.08.2018
12:26:56

Юрий
23.08.2018
12:27:00
и ругается на зависимости

Roman
23.08.2018
12:27:18
dep ensure чего говорит?

Юрий
23.08.2018
12:27:54
ничего не ругается все зависимости успешно падают в vendor

Roman
23.08.2018
12:28:32

Юрий
23.08.2018
12:28:48
из корня проекта

Roman
23.08.2018
12:29:13

Юрий
23.08.2018
12:29:49
верно

Google

dimcha
23.08.2018
12:30:37
какую проблему ты хочешь решить и зачем?
прочитал https://habr.com/company/badoo/blog/420407/ и задумался. Там про акторы упоминали, как решение проблемы. Хочу понять можно-ли(и насколько это оправдано) их в Го использовать + сравнить с моделью использования в erlang.

Roman
23.08.2018
12:30:57
верно
хмм, спонтанно не могу сказать в чём дело, выяснил бы путём тыка, попробуй создай чистый проект которым сможешь поделиться, может тогда чем смогу помочь

Юрий
23.08.2018
12:31:00
он пытается по GOPATH найти либу в
/home/develop/projects/go/src/_/home/develop/projects/go/src/shop/srv/access-token/vendor/github.com/golang/protobuf/proto
префикс примешивает в виде /home/develop/projects/go/src/_
я не понимаю по какой логике он это делает :D

dimcha
23.08.2018
12:31:26
нашел proto.actor, но есть сомнения
да и хочется про реальный опыт узнать

Roman
23.08.2018
12:33:23

dimcha
23.08.2018
12:34:05
об использовании модели акторов в го. Насколько это оправдано и личный опыт

Roman
23.08.2018
12:35:03

dimcha
23.08.2018
12:35:41
вроде как акторы эту проблему и решают

Roman
23.08.2018
12:36:08

yuriy
23.08.2018
12:36:16

Roman
23.08.2018
12:36:40

Диёр
23.08.2018
12:36:54
ну или ты сам их найдёшь

dimcha
23.08.2018
12:37:45

Roman
23.08.2018
12:38:24

dimcha
23.08.2018
12:38:43
парни, а вы новому совсем не учитесь?
или готура для вас достаточно?

Диёр
23.08.2018
12:39:19
ты ведь не понял что такое актор

Google

Roman
23.08.2018
12:39:40

Диёр
23.08.2018
12:40:01

dimcha
23.08.2018
12:40:36

Maksim
23.08.2018
12:40:45
у гошников, по моим наблюдениям, в большинстве случаев крайне своеобразные толкования принципов) что микросервисы, что экторы, что прочие умные базворды)

Диёр
23.08.2018
12:42:24

dimcha
23.08.2018
12:46:21
https://medium.com/@ostvp/parallelism-models-actors-vs-csp-vs-multithreading-f1bab1a2ed6b

Maksim
23.08.2018
12:47:29

dimcha
23.08.2018
12:48:47
видимо до смешения...

Maksim
23.08.2018
12:51:48

dimcha
23.08.2018
12:52:27
похоже на то... но мало-ли.

Maksim
23.08.2018
12:52:46
от языка оно всё 1 чёрт не зависит.

dimcha
23.08.2018
12:53:52
в эрланге с акторами связан очень эффективный сборщик мусора. Мне интересны отношения модели акторов в Го с гошным-же гц
не будет-ли это overengineering'ом?

Maksim
23.08.2018
12:55:17
любой подход зависит от задачи. Если ты делаешь бложик, будет. Если какой-нить аукцион, то почему бы и да

dimcha
23.08.2018
12:56:43
я про OE из-за неэффективного гц. Там что бложик, что аукцион - все едино будет тормозить по-сравнению со стандартным использованием

Maksim
23.08.2018
12:57:04
а, я думал ты за подход в целом спросил под занавес

dimcha
23.08.2018
12:57:07
но это мои сомнения, точно я не знаю, поэтому тут и спрашиваю

Maksim
23.08.2018
12:57:51
в целом, у го вполне себе неплохой сборщик.

Google

dimcha
23.08.2018
12:58:01
подход прекрасно себя зарекомендовал в эрланге, за это я не переживаю. Но вот за попытку имплементации модели в Го как-то неуверен

Maksim
23.08.2018
12:58:09
не уверен, что используя модель экторов ты в него упрёшься

dimcha
23.08.2018
12:58:19
я к тому, что хочется тестов )
с цифрами и замерами

Maksim
23.08.2018
12:59:41
ну, если хочется тестов, сделай их) благо накидать не сложно

dimcha
23.08.2018
12:59:44
но это я многого хочу, да )
видимо придется, раз никто этого еще не делал

Georgij
23.08.2018
13:00:29

Maksim
23.08.2018
13:00:41
ну ибо гц - не самая большая проблема экторов)
если вообще проблема

dimcha
23.08.2018
13:01:38
а в чем бОльшая проблема? )

yuriy
23.08.2018
13:01:47

Maksim
23.08.2018
13:02:42
ты не поверишь...) в локах. Это медленно, дорого и аще фу :)

dimcha
23.08.2018
13:03:48
не поверю, это ты правильно заметил ))) откуда возникают локи в акторах? )

Maksim
23.08.2018
13:05:54

dimcha
23.08.2018
13:06:36
именно локи - не представляю
если нет shared state'а, откуда локи?
за что они биться начнут?
разве что из-за лока на мапу пидов

Google

dimcha
23.08.2018
13:08:11
это если в тупую реализовывать
если подумать и использовать другие СД, то локов не будет вообще

Maksim
23.08.2018
13:09:14

dimcha
23.08.2018
13:10:02
так это шедулер рулит. Локов там все-равно не будет

Maksim
23.08.2018
13:10:21
и как этим шедулер рулит?

dimcha
23.08.2018
13:10:27
есть данные для актора - работаем. Нет - спим
все как у взрослых )
весь вопрос в IPC )
если сделать его эффективным, асинхронным и на правильных СД, то модель будет работать "на ура"
тот-же fsm

Maksim
23.08.2018
13:13:16
саги (читай, fsm твой) не гарантируют тебе согласованности) ну вот прям совсем никак.

dimcha
23.08.2018
13:15:12
ты не путаешь локи с блокировками?

Maksim
23.08.2018
13:15:55
видимо, мы с тобой немного про разные участки вещаем :)

dimcha
23.08.2018
13:16:53
ваще да )) обратная сторона.
если мы про шедулер, то там просто приоритетность выполнения (читай последовательность входящих сообщений для акторов). Никаких локов там не возникает
весь вопрос, как реализуются очереди сообщений
и мапа пидов
локи на инсертах и делитах