
Андрей
14.07.2016
08:17:37
Ну тогда и я кину решение из одного своего проекта.
https://play.golang.org/p/_RAmc92FzP
Практически как у Kirill

Lev
14.07.2016
08:20:06
годно

Kirill
14.07.2016
08:26:24

Google

Kirill
14.07.2016
08:27:10
смотри https://github.com/kirillDanshin/myutils/blob/master/strCrop.go

Anton
14.07.2016
08:29:52

Андрей
14.07.2016
08:30:28

Lev
14.07.2016
08:31:05

Kirill
14.07.2016
09:08:39
Чем лучше?
там поиск символов идет, конца слова, поэтому обрезает оно красиво

Андрей
14.07.2016
09:11:10

Плюшка
14.07.2016
09:11:58
не ?

Kirill
14.07.2016
09:12:46

Dmitry
14.07.2016
09:13:31
не
ты у себя тоже в руны переводишь и кропаешь их, а не байты напрямую

Kirill
14.07.2016
09:14:41
почему?
Не ищет точку, запятые и т.п.

Dmitry
14.07.2016
09:17:24
Не ищет точку, запятые и т.п.
никто про точки и не говорил - в моей функции явно видно, как кропается строка
я про твой скрипт могу сказать, что он емоджи не вырезает)
в твоей больше проверок на входные параметры, которые автор вопроса, в принципе и сам в состоянии написать

Google

Kirill
14.07.2016
09:33:31

Ilnar
14.07.2016
11:22:58
https://habrahabr.ru/company/mailru/blog/305614/

Vitaliy
14.07.2016
11:23:58
повторите эту ссылку ещё раз

Maxim
14.07.2016
11:24:16

Daniel
14.07.2016
11:24:24
вроде, тут еще не было
но я ее уже раз пять видел, да

Vitaliy
14.07.2016
11:24:32
https://habrahabr.ru/post/305614/

Maxim
14.07.2016
11:24:41

Daniel
14.07.2016
11:24:43
hint: еще в рассылку ее не постили
две
одна вот
вторая вот: https://telegram.me/gogolang

Maxim
14.07.2016
11:26:13

Андрей
14.07.2016
11:40:24

Dmitry
14.07.2016
11:44:25

Phil
14.07.2016
11:45:51
ээээ... play.golang.org это вообще одна из киллер-фишек языка. реально. как Вы туториал проходили и не увидели?

Alexey
14.07.2016
11:46:51
следующий вопрос должен быть «туториал?»

Maxim
14.07.2016
11:47:20

Daniel
14.07.2016
11:48:04
https://tour.golang.org/welcome/1

Maxim
14.07.2016
11:48:21

Google

Ilnar
14.07.2016
11:48:48
рукалицо

Phil
14.07.2016
11:49:36
не люблю стикеры. но это тот самый случай

Alexandr
14.07.2016
11:49:46

分解物質
14.07.2016
11:50:37

The Dude
14.07.2016
12:45:45
Кто тестил 17rc?
Интересует паузы гц, уменьшили еще?

Kirill
14.07.2016
13:13:42
уменьшили, вроде
но пока релиза нет — рано

Maxim
14.07.2016
13:27:36
Какой вариант подзагрузки конфигурации лучше?
https://play.golang.org/p/5Cej_MX_WA – 1
??????? 100%
https://play.golang.org/p/hXlqxaq6Nw
▫️ 0%
? 1 person voted so far. Poll closed.
Чисто из интереса выясняю. Различия между вариантами только в рокировке пакетов и одной строке кода.

Maxim
14.07.2016
13:29:03
Может что-то быстрее и надёжнее?

Alexey
14.07.2016
13:32:21
_вообще_ никакой разница для конфига меньше МБ (а если он больше, то что это за конфиг?)

Maxim
14.07.2016
13:34:45

Alexey
14.07.2016
13:35:17
ну а тогда чего вы спрашиваете, если и так знаете ответ? :)

Maxim
14.07.2016
13:35:19
Я, конечно, перфекционист, но в Go - не настолько, чтобы выжимать милисекунды.

Alexey
14.07.2016
13:35:50
Оба валиднее
хотя в обоих неплохо бы err печатать

Google

Alexey
14.07.2016
13:37:23
а во втором файл закрывать

Maxim
14.07.2016
13:37:34

Alexey
14.07.2016
13:37:50
нет, не печатается

Maxim
14.07.2016
13:38:20

Alexey
14.07.2016
13:38:36
err вы не выводите

Admin
ERROR: S client not available

Maxim
14.07.2016
13:38:43

Alexey
14.07.2016
13:38:59
defer file.Close()

Maxim
14.07.2016
13:39:34

Alexey
14.07.2016
13:40:25
Вместо log.Fatalln("Read configuration file error!") я бы делал
log.Fatalf("Read configuration file error: %s", err)

Maxim
14.07.2016
13:40:40
А, блин, ну да.
Я просто указал на случай без подробностей
defer file.Close()
Если это применяется только во втором варианте, то в плане компактности уже валиднее первый вариант.

Alexey
14.07.2016
13:44:04
Если цель компактность, то можно и в одну строчку написать
Мой вам совет: не заморачивайтесь по ерунде :)
ReadFile прочитает весь файл, будет держать его в памяти, декодирование из памяти будет чуть быстрее

Maxim
14.07.2016
13:45:16

Alexey
14.07.2016
13:45:29
json.NewDecoder().Decode() будет читать кусками, меньше памяти, но потенциально чуть дольше
Но практической разницы – ноль

Maxim
14.07.2016
13:45:50
Понятно, благодарю.

Google

Den
14.07.2016
15:32:54

Maxim
14.07.2016
15:35:00

Denis
14.07.2016
18:39:27
Подскажите ,нормально ли сделать так , мне надо запрашивать по поиску 3-х поставщиков , самый быстрый способ это вынести работу с каждым поставщиком в отдельный микросервис, и свои микросервисы запрашивать асинхронно Anyevent http, второй вариант переписать работу с поставщиками на асинхронную работу в монолите подключаемыми модулями , как вам кажется сделать надежнее ? мне кажется по микросервису на поставщика хороший вариант, если упадет 1 сервис он просто не ответит по таймауту но и не унесет остальных за собой

Maxim
14.07.2016
18:43:53
Так что вариант распилить сервисы чтобы они все разом не падали - звучит резонно.
Но Я таких вещей не писал, не доверяй мне.

Sergey
14.07.2016
18:46:29
Я бы сделал отдельными микросервисами, связь через mq какой-нибудь

Denis
14.07.2016
18:46:46
mq долго )

Phil
14.07.2016
18:46:48
угу. и какой у нас mq умеет не терять данные и быть простым?

Denis
14.07.2016
18:47:36
на mq много издержек, мне проще дернуть урл с таймаутом, не успели сорри ,

Sergey
14.07.2016
18:49:40
Mq не нравится, любой другой транспорт, хоть голый tcp
Важно, как мне кажется, каждый гейт отдельно для надежности
А чем связываются второй вопрос

Denis
14.07.2016
18:51:04
ну и мониторинг ) с метриками на каждый

Phil
14.07.2016
18:51:10
mq позволяет делать софт-транзакции

Sergey
14.07.2016
18:51:12
Да, именно
И можно на сервера разнести если что