Go Revel で Redis Sessionの設定

前回は、Cacheで、今回は、Sessionです。
こっちが本丸です。
といっても、事の重要性に気づいたのは、最近です。

まず、セッションをRevelとnodeとの間で共有したいって話がスタートです。
まぁ、Cacheをそのまま共有が一番手っ取り早いので、そちらでもOKだと(個人的には)思います。
ですが、サーバが増えてRevel間のセッション共有もしないと!と考えると、どうも、やり方がわからない。
RailsみたいにDBにストアしてくれるモジュールがあれば、簡単なのですが、それも良くわからない。

んで、Redisあるから、どうせわからんなら、Redisで調べてみるかと。

やはりというか、まぁそうでしょって感じで、英語のHPしかヒットしない。
日本人頑張れ!!(つーか自分もそうなんですが)と、検索したおしても見当たらない。
なので、Google翻訳様と一緒に、いろいろやってみました。

まず、そのHPをば。
http://stackoverflow.com/questions/24156274/how-to-use-redis-based-session-on-revel
質問者は、
https://gist.github.com/xthexder/9026678
のソースを
app/libs/session/session.go
にいれて、app/init.goを

import (
	"benchwork/app/libs/session"
	"github.com/cbonello/revel-csrf"
	"github.com/revel/revel"
)

func init() {
	// Filters is the default set of global filters.
	revel.Filters = []revel.Filter{
                 ・
		// revel.SessionFilter,           // Restore and write the session cookie.
		app.SessionFilter,

として、やったら、エラーになったとのこと。

んで、下の回答では、Redisが定義されていない、redisにしろとかある。
こちらでもやってみる

ERROR 2015/05/10 16:24:11 build.go:101: # app/libs/session
app/libs/session/session.go:75: undefined: redis.Get
app/libs/session/session.go:126: undefined: redis.Get
app/libs/session/session.go:129: not enough arguments in call to redis.String
app/libs/session/session.go:172: undefined: redis.Get
app/libs/session/session.go:175: not enough arguments in call to redis.Int

駄目じゃん!!
そもそも、グレってもGetとか関数がpool以外ではないようだけど。

んで、最後の回答者(評価ゼロってどういうこと?!)
http://www.diffchecker.com/n0k0fy8w
の改良プログラムを使ってやってみると・・・・

見事、Redis上にSession出来たみたいっす。
これは、ありがたい。
ちなみに、hostとportは、app.conf上にあるので、それを見るようにすれば、ばっちりです。