senooken JP Social
  • FAQ
  • Login
senooken JP Socialはsenookenの専用分散SNSです。
  • Public

    • Public
    • Network
    • Groups
    • Popular
    • People

Conversation

Notices

  1. sakasame@twiddon.com's status on Sunday, 23-May-2021 22:31:22 JST sakasame sakasame

    ツイッターのOGPがトゥートに何らかのアクションをしないと表示されないのは仕様?

    In conversation Sunday, 23-May-2021 22:31:22 JST from twiddon.com permalink
    • のえる (noellabo@fedibird.com)'s status on Sunday, 23-May-2021 22:31:21 JST のえる のえる
      in reply to

      @sakasame 仕様ですね。

      まず、投稿時点ではプレビューカードが生成されていません。バックグラウンドで生成されます。

      んで、投稿にアクション、例えばお気に入りすると、サーバから最新の投稿データが返されてくるので、それをWebUIに反映すると、プレビューカードが投稿に追加されるという仕組みです。

      もちろん、ブラウザのリロードで全部読み直しても反映されます。

      In conversation Sunday, 23-May-2021 22:31:21 JST permalink
    • のえる (noellabo@fedibird.com)'s status on Sunday, 23-May-2021 22:46:25 JST のえる のえる
      in reply to

      @sakasame では、ついでに理由も。

      まず、投稿と同時にOGPを取得すると、応答時間がアクセス先の状況に左右され、投稿の処理が完了するのに時間がかかりすぎて、投稿そのものが失敗する可能性があります。投稿ボタンの反応が悪いのもストレスですよね。

      また、OGPの取得は、リモートからやってきた投稿についても行われるのですが、これつまり、投稿したサーバのみならず配送されて届いたサーバ全てがほぼ同時に取得を行うことになってしまいます。

      ちょっとしたDDoSみたいなもので、だいたいCDNをかましていないブログ等はこれで負荷が集中しすぎて落ちます。割と笑えない負荷です。

      そこで、わざとランダムに遅延を入れています。完全な解決ではないですが、これでずいぶん軽減しています。

      この遅延の分だけ、投稿への反映が遅れるようになっています。

      つまり意図的に遅らせています。

      In conversation Sunday, 23-May-2021 22:46:25 JST permalink
    • sakasame@twiddon.com's status on Sunday, 23-May-2021 22:46:26 JST sakasame sakasame
      in reply to
      • のえる

      @noellabo なるほど!Twitterの場合は投稿画面で既にOGPが動いているようだったんですが、Mastodonの場合はバックグラウンドで作動して生成しているのですね。ルールにTwitter,Pixiv等からの無断転載禁止を明記している関係で、OGPというものがあると知ってもらえれば少しはその代替になるかな?と思っていたので助かりました。あとでfavやBTに加えてリロードでも反映されることを周知してみようかと思います。ありがとうございました!

      In conversation Sunday, 23-May-2021 22:46:26 JST permalink
    • sakasame@twiddon.com's status on Sunday, 23-May-2021 22:56:58 JST sakasame sakasame
      in reply to
      • のえる

      @noellabo あー、そういえば確かにTwitterでもたまに投稿時やその直後動作がもっさりする時がありますね…それはそういうことだったんですね。

      言われてみれば確かに!その投稿が届いた複数の全サーバーかがOGPを叩きにかかると思うとちょっとゾッとしますね…。TwitterやYouTubeのような超大手ならいざ知らず、それで落ちてしまったら元も子もないですし、うかつにOGPを使えなくなってしまいますね。

      …個人的にすごい知見なので、一連のやつBTしてもよろしいですか?

      In conversation Sunday, 23-May-2021 22:56:58 JST permalink
    • のえる (noellabo@fedibird.com)'s status on Sunday, 23-May-2021 22:56:58 JST のえる のえる
      in reply to

      @sakasame ダメなやつはprivateで投稿してますので(滅多にない)、そうじゃないやつはご自由にブーストどうぞ!

      スクショが必要な時も、私の公開と未収載のものは断り無しで使ってかまいません。映り込んでいた時はうまく使ってやって下さい。

      In conversation Sunday, 23-May-2021 22:56:58 JST permalink
    • のえる (noellabo@fedibird.com)'s status on Sunday, 23-May-2021 23:13:57 JST のえる のえる
      in reply to

      @sakasame TwitterがOGPを取得する場合、Twitterは連合していないので、一回だけそのリソースにアクセスすれば済みます。この差は大きいよね。

      ちなみに、同一サーバ内で最近取得されたプレビューカードは再利用されます。

      Twitterの投稿URLなどでは該当することは比較的少ないですが、YouTubeの動画などは同じものを貼る人が結構いるので、体感できるかと思います。PixivのURLなんかもそうですね。

      再利用される場合は、反映が極端に早いです。

      プレビューカードはほっとくとかなりの容量を食うので、tootctlで削ったりします。Mastodonホスティングの場合はホスティング側で管理してくれるので気にしなくてOKです。

      In conversation Sunday, 23-May-2021 23:13:57 JST permalink

Feeds

  • Activity Streams
  • RSS 2.0
  • Atom
  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

senooken JP Social is a social network, courtesy of senooken. It runs on GNU social, version 2.0.2-beta0, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All senooken JP Social content and data are available under the Creative Commons Attribution 3.0 license.