На Go есть открытый web server под названием caddy. Среди прочего он поддерживает балансировку нагрузки по разным алгоритмам. Можно посмотреть в его исходниках, на вскидку есть такая переменная с политиками, посмотрите чем она заполняется и как дальше код с этим работает.
В первом случае при передаче параметра будет скопирована вся структура, во втором только указатель на структуру.
В общем случае можно сказать что передача параметров через указатель ускоряет вызов функции и позволяет изменять внешние по отношению к функции данные. Слишком большое кол-во указателей может замедлить работу всей программы из за наличия сборщика мусора. Но это скорее граничные случаи, как именно поступать надо смотреть в каждом случае отдельно.
Мне как человеку который до этого писал на С++ и python этот язык показался проще некуда. Спецификация на весь язык читается за один день, и через 3-5 дней экспериментов уже можно писать приемлемый код. Так же простота оборачивается ещё одним плюсом - исходники чужих проектов легко читать и понимать. В отличие от того же питона где метакласс на метаклассе и завёрнут в декоратор :). Понять ход выполнения программы бывает проблематично.