ライブラリ検索するときに便利 -> https://golanglibs.com
- benmans/goworker(1584 stars)
- redis-backed
- Go製のジョブワーカーでは一番メジャーぽい
- 当初Enqueueがなかったようだが、2015/12に追加されてる: 参考
- リポジトリ自体は4年前からあって、7か月前にも更新はされてる
- rallison/go-workers(816 stars)
- redis-backed - 機能的にはgoworkerとほぼ変わらなさそう
ライブラリ検索するときに便利 -> https://golanglibs.com
{"lastUpload":"2017-02-21T05:44:57.092Z","extensionVersion":"v2.4.4"} |
// ⑴App structにLoggerやDB Clientを持たせるのと、 | |
// フレームワークの"Context"(context.Contextとは別物)に | |
// 同様のオブジェクトを持たせるのは、同じ意味なのか? | |
//////////////////////////////// | |
// achikuさんの例 | |
//////////////////////////////// | |
// App application | |
type App struct { |
// ⑵構造体の要素として、context使わなきゃいけない要素は持てるのか | |
// appengineを使う場合、context.Contextの拡張の、appengine/contextをセットして、 | |
// Log表示やDBへの接続等を行いますが、そういった要素はどう管理するべきか、 | |
// というかそもそも共通の構造体みたいなものに持てないのでは?...という質問でした。 | |
// (これはappengine特有かもしれないので、摑みどころがなければ、スルーしていただいて結構です。) | |
// 以下実際のappengineのコード例(リクエストハンドラ直下)です。 | |
import "google.golang.org/appengine/datastore" |
package main | |
import ( | |
"errors" | |
"fmt" | |
"image" | |
"image/jpeg" | |
"image/png" | |
"log" | |
"os" |
package main | |
func main() { | |
PopWithCopy() | |
} | |
func PopWithCopy() string { | |
strs := []string{ | |
"AAAAAAAAAAA", | |
"AAAAAAAAAAA", |
# -*- mode: ruby -*- | |
# vi: set ft=ruby : | |
# http://www.vagrantbox.es/ | |
# $ vagrant box add ubuntu/trusty64 | |
# $ vagrant init ubuntu/trusty64 | |
# $ vagrant up | |
# $ vagrant ssh-config | |
# $ ssh-keygen -yf /Users/hogeee/go/src/.vagrant/machines/default/virtualbox/private_key > public_key | |
# $ cat public_key |
package main | |
import ( | |
"fmt" | |
) | |
type Language struct { | |
ID int | |
Code string | |
} |
files="./*.mp4" | |
for filepath in $files; do | |
fname_ext="${filepath##*/}" | |
fname="${fname_ext%.*}" | |
echo $fname | |
ffmpeg -i "${fname}.mp4" -vcodec h264 -acodec aac "${fname}_comp.mp4" | |
done |
// StartStatusSubscription ... ライブ動画の放送状況の監視 | |
func (s *liveProgramService) StartStatusSubscription(ctx context.Context) { | |
s.subLock.Do(func() { | |
sub, err := s.sub.GetSubscriber() | |
if err != nil { | |
panic(err) | |
} | |
go func(sub *redis.PubSub) { | |
defer sub.Close() | |
for { |