00:30:09
2017-09-26 00:01:50 Posting unarist unarist@mstdn.maud.io

This account is not set to public on notestock.

00:30:38

うちだったら落ちるなw

07:45:14
2017-09-26 06:58:29 Posting えじょねこ ejo090@mstdn.nere9.help

あのタイムゾーンが違うからどうとかで受理するかしないかみたいなやつの小噺すき

07:45:14
2017-09-26 07:00:49 Posting えじょねこ ejo090@mstdn.nere9.help

第28回嘘競演(23ページ) kasugai.com/~usokyoen/28/uk280
これですね

第28回嘘競演(23ページ)
07:45:25

なつかしいなw

08:06:17

よーしお父さん試しにちょっとだけスケールアウトしちゃうぞー

08:07:51
08:08:27

パラメータを書き忘れたw

Puma
- DB_POOL: 5
- MAX_THREADS: 3
- WEB_CONCURRENCY: 1

Sidekiqはweb dynoで動かす
- RUN_WORKER: true
- SIDEKIQ_THREADS: 1

Rack-timeout
- WAIT_TIMEOUT: 90
- SERVICE_TIMEOUT: 90

08:09:13

$ heroku config:set WEB_CONCURRENCY=2 MAX_THREADS=2 DB_POOL=3 SIDEKIQ_THREADS=2 SERVICE_TIMEOUT=180 RUN_WORKER=false
$ heroku ps:scale worker=1

08:10:10

こうしてみました

Puma
- DB_POOL: 3
- MAX_THREADS: 2
- WEB_CONCURRENCY: 2

Sidekiqはworker dynoで動かす
- RUN_WORKER: false
- SIDEKIQ_THREADS: 2

Rack-timeout
- WAIT_TIMEOUT: 90
- SERVICE_TIMEOUT: 180

08:11:17

現状のProcfileはhttps://github.com/zunda/mastodon/blob/1f7499d3ae4006a86dbdf742b1f0071f7e75ff87/Procfile

web: [ "$RUN_STREAMING" != "true" ] && puma -C config/puma.rb & [ "$RUN_WORKER" == "true" ] && sidekiq -c ${SIDEKIQ_THREADS:-5} & [ "$RUN_STREAMING" == "true" ] && npm start & wait
worker: sidekiq -c ${SIDEKIQ_THREADS:-5}
release: if [ "$RUN_STREAMING" != "true" ]; then rake db:migrate; else echo Not migrating on this app; fi

mastodon/Procfile at 1f7499d3ae4006a86dbdf742b1f0071f7e75ff87 · zunda/mastodon
08:12:19

Hobby dynoが1台から2台になったので1ヶ月放置すると$7/月費用が増します。まあバルスの時だけにしておく。

08:15:04

Redisのコネクション数は19に増えました。足し算できないけどそんなものかな?Postgresは下記。コネクション数が思ったより少ないね。

$ heroku pg:info
=== DATABASE_URL, PG_HOBBY_BASIC_URL
Plan: Hobby-basic
Status: Available
Connections: 8/20
PG Version: 9.6.1
Created: 2017-04-20 18:31 UTC
Data Size: 269.6 MB
Tables: 35
Rows: 600026/10000000 (In compliance) - refreshing

08:23:40
2017-09-26 08:23:40 Posting zunda zundan@mastodon.zunda.ninja
08:23:52

ふむー

08:37:29

うん。ローカルなアカウントがアップロードしたメディアファイルはweb dynoで処理されててリモートからのトゥートにひっついてるメディアファイルはworker dynoで処理されてる (って前にも確かめたよな)

08:41:10

そうそう、rack-timeoutのservicetimeoutはリモートアカウントのタイムラインとってくるのにタイムアウトしちゃわないように2倍にしました。スレッド専有されるよりタイムアウトしてデータベース接続がリークしちゃう方を防ぎたい。

08:41:55
2017-09-26 08:41:26 Posting unarist unarist@mstdn.maud.io

This account is not set to public on notestock.

08:42:15

家からヨドバシまで連絡通路 (wktk)

08:45:36

web dynoはPuma 2プロセスx2スレッドで383 MB、worker dynoはSidekiq 2スレッドで218 MB程度のRAMを使ってます。

09:11:57

ふに

method=GET path=/api/v1/timelines/public format=*/* controller=Api::V1::Timelines::PublicController action=show status=200 duration=32347.37 view=3431.63 db=28147.25

09:35:40

スケール戻すよー

$ heroku config:set WEB_CONCURRENCY=1 MAX_THREADS=3 DB_POOL=5 SIDEKIQ_THREADS=1 RUN_WORKER=true
$ heroku ps:scale worker=0

SERVICE_TIMEOUT=180はこのままで。

09:48:13

コネクション数はスレッド数を減らした (Puma: 2x2→1x3、Sidekiq 1x2→1x1) 分くらい減りました。

$ heroku pg:info
=== DATABASE_URL, PG_HOBBY_BASIC_URL
Plan: Hobby-basic
Status: Available
Connections: 5/20
PG Version: 9.6.1
Created: 2017-04-20 18:31 UTC
Data Size: 269.8 MB
Tables: 35
Rows: 600025/10000000 (In compliance)

09:49:04

メモリはSidekiqを収容した分増えたけど、まだメディアファイルが来てないのでスワップには行っていない。

09:54:39

なんだか良さげな変更がありますねw

3b60832214fdd9d8b5fd01e9a177a6dde5259907
New error page graphic. Other error page improvements

09:59:15
10:04:51

Internal Server Errorのページを早く見たくてデプロイしようとしたらHerokuさんからInternal Server Errorもらっちゃいました。 (2回目は成功)

$ heroku pipelines:promote -a zundan-mastodon-experiment
Fetching app info... done
Fetching apps from zundan-mastodon... done
Starting promotion to production... done
Waiting for promotion to complete... !
▸ Internal server error.

10:06:15

\ますたーに/ \追随しますたー/

Merged tootsuite/mastodon at b32a1d575469aeb3d74da93d861b77df55715e1b.

これ!これ!これ見て!! 気に入った!! https://mastodon.zunda.ninja/500.html

This page is not correct - Mastodon
10:07:25

I just love the new 500 page! https://mastodon.zunda.ninja/500.html

This page is not correct - Mastodon
10:13:17

うちのルータもプロバイダもv6対応してるんだよな。家の中のサーバの安全を確保したらv6有効にできるんだよな。そこが大変なんだよな。

10:17:43

インターネットって職場のモデムに電話かけて使うやつでしょ?

10:18:10

インターネットって黄色い同軸ケーブルに針ぶっさしてつなぐやつでしょ?

10:25:34

ご安全に

10:39:03

まんなか辺でスケールを元に戻しました。その後トラッフィクが増えてるのはいろいろトゥートしてたからだろうな。 https://mastodon.zunda.ninja/media/J3JXOgP29udRtcU6s-o

10:51:33

@chidori おはます!

11:18:05

仕事にいきづまってMastodonのLibratoを眺める。動いてるなあ (小確幸)

11:19:31

リンクになっている文字列の一部を簡単にコピーしたい

11:50:01

おー、404もアニメになってるw https://mastodon.zunda.ninja/404

Fail Mastodonも好きだったんだけどな、どこかに残ってないかなw

12:12:15

バルスの前にバルスみたいな負荷かけてみたいんだけど連合先にバルスっちゃうよねえw

12:16:00

バルス試験用のMastodonインスタンスを複数作ってその中でやりとりさせるしかないのかな。S3付けなかったらそんなに手間じゃないかな

13:02:49

@hyuki0000 ナルホド! って思ったけどテレホーダイのころもう日本に居なかったっぽいです。なんてこった。

13:07:22

ブラウザのタブが開くまでに何を確認しようとしてたか忘れるおっさん脳

13:08:09

ねねっち12インチかー

13:11:22

@hyuki 何日か前にDDoSだかなんだけで索きづらくなってたと思います

13:21:30

$ heroku pg:info
~ $ heroku pg:info -a zundan-mastodon=== DATABASE_URL, PG_HOBBY_BASIC_URL
Plan: Hobby-basic
Status: Available
Connections: 6/20
PG Version: 9.6.1
Created: 2017-04-20 18:31 UTC
Data Size: 270.0 MB
Tables: 35
Rows: 600049/10000000 (In compliance) - refreshing

Puma 3スレッド、Sidekiq 1スレッド、Streaming 2スレッドくらいかな?

13:22:54

コピペまちがいますた

14:02:34

そうかKubernetesのべんきょーに負荷試験用のMastodonクラスタをですね (凝りすぎ)

16:31:51
2017-09-26 16:21:08 Posting スピリチュアル便所コオロギ nkf9@mstdn.jp

This account is not set to public on notestock.

16:45:43

スタバ隣の人の音漏れうるさいし移動したらクーラー寒いし公園の駐車場に移動しよう

17:22:19

インスタンス情報のキャッシュを更新してたのかな。ならしょうがない。

at=error code=H12 desc="Request timeout" method=GET path="/api/v1/instance" host=mastodon.zunda.ninja dyno=web.1 connect=0ms service=30000ms status=503 bytes=0 protocol=https

17:44:20

データベースの秘孔つかれると止まるけどな!

18:45:38

トラフィックがそれほどでもないのにレスポンスが遅いのはデータベースの秘孔をつかれぎみのときよねきっと https://mastodon.zunda.ninja/media/GZhK3x93S1FTJv88cdY

18:47:11

ログを引用しようとしたら500文字でもきびちい

18:51:07

@hyuki ちょっと調べてみたら攻撃かどうかはまだわかっていない感じでした。訂正しまっす。すみません。

https://haydenjames.io/io-tld-dns-issues-day-without-cloudflare/ によると、.io TLDの権威サーバのひとつが誤った回答をしていた時期があったとのことです。

19:01:04
2017-09-26 18:59:23 Posting 𝒂𝒊𝒘𝒂𝒔 aiwas@mstdn.maud.io

This account is not set to public on notestock.

19:01:06
2017-09-26 19:00:51 Posting unarist unarist@mstdn.maud.io

This account is not set to public on notestock.

19:01:14

それにつけてもおやつは!

19:49:05
2017-09-26 19:37:49 Posting アチャール hamster00@friends.nico

This account is not set to public on notestock.

19:49:15

申し訳ございません

19:50:14

秒課金にするとイベントログが多くなるのよね

19:57:23

@hyuki 興味もあったので、お気になさらず!

20:39:23

@hyuki いえいえいいえいえ(てれれ)

20:39:50
2017-09-26 20:20:59 Posting unarist unarist@mstdn.maud.io

This account is not set to public on notestock.

20:40:01

おー status .ioだー

20:51:59

$ heroku pg:psql
> VACUUM;
VACUUM
Time: 58328.683 ms

とりゃ。

23:35:00

@Naf @unarist Paperclipのログ、全然出ないように設定してるなあ、ってどこかのコードを読んで思った気がします。Paperclipの下で働いてるなんかコマンドを実行するやつ(名前忘れちゃった)のログはでてるのでImageMagicのコマンドを実行してるのは分かるんだけど。