タグ

2022年4月12日のブックマーク (6件)

  • RedisのPub/Subを使って設定情報を高速配布する。「LINE LIVE」が取り組んだアーキテクチャ改善

    LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog 2021年11月10日・11日の2日間にわたり、LINEのオンライン技術カンファレンス「LINE DEVELOPER DAY 2021」が開催されました。特別連載企画「DEVDAY2021 アフターインタビュー」では、発表内容をさらに深堀りし、発表では触れられなかった内容や裏話について登壇者たちにインタビューします。今回の対象セッションは「RedisのPub/Subを使って設定情報を大規模ユーザに高速配布した話」です。 ライブ配信サービス「LINE LIVE」は多くのユーザーに利用されており、なかには数十万ユーザーが同時接続するような配信もあります。「LINE LIVE」のチャットシステムでは、さまざまなシステムやユーザーの設

    RedisのPub/Subを使って設定情報を高速配布する。「LINE LIVE」が取り組んだアーキテクチャ改善
  • Kubernetesは、流行る前から使っていた 『モンスターストライク』から見るk8sのイケているところ3つ

    最近よく耳にする「Kubernetes」ですが、実際はどのような使われ方をしているのでしょうか。こちらの記事で「Kubernetes」について答えた、『モンスターストライク』のサーバーサイド開発を担当している浅野大我氏に、「ミクシル延長戦」として「Kubernetes」を実際どのように使っているのか、より詳しく聞きました。前半は実際の「モンスト」での使われ方について。 「Kubernetes」を使いこなせると何がうれしいの? 司会者:それでは日のゲスト社員を紹介したいと思っています。『モンスターストライク』事業部の浅野さんです。よろしくお願いいたします。 浅野大我氏(以下、浅野):よろしくお願いします。 司会者:では簡単に自己紹介をお願いできればと思います。 浅野:よろしくお願いします。私は2020年にミクシィに入社をしました。ミクシィとの関わりとしては、まず2018年に『モンスタース

    Kubernetesは、流行る前から使っていた 『モンスターストライク』から見るk8sのイケているところ3つ
  • Rubyアンチパターン: なんでもHash

    ソフトウェアの内部では、データを様々な形に加工しつつ、あちこちに受け渡して再利用します。そのためのデータ構造として、RubyではHashクラスのオブジェクト(他の言語ではMapだったりDictionaryだったり連想配列だったりします)を使うことはよくあります。 単体の数値や文字列ではなく、それらを組み合わせたデータを扱う際には、Hashオブジェクトが便利です。 しかし、あらゆる場面でHashを駆使しようとすると、利便性よりも弊害が大きくなります。 典型的な症状 あちこちで同じだったりちょっと違ったりするHashオブジェクトを引き回していたりします インスタンス変数が少なく(あるいはまったくなく)、その代わりとしてメソッド引数のHashオブジェクトにいろんなデータを渡していたりします 1つのHashオブジェクトのキーとして、文字列やシンボル、さらにはそれ以外のクラスのオブジェクトが使われて

    Rubyアンチパターン: なんでもHash
  • ワシの使っているNeovimプラグインは200個近くあるぞ

    昔はこういうの結構やられてた気がするけど最近あんまり見なくなったのでやってみました。 タイトルは から借用しました。 注意点 プラグイン自体の説明はあまりするつもりはないので、GitHub の README を読むなり使ってみるなりしてみてください。 私は結構頻繁にプラグイン乗り換えるので 2022 春バージョンと思ってください。 私が言うのもあれですが、プラグインはいっぱい入れればいいというものではありません。ひとつひとつを使いこなすのが大事です。多ければそれだけ管理も大変です。 競合があるプラグインは比較して選定しているつもりですが、あくまでも私の趣味の範囲での選定となります。絶対的な指標があってこっちの方が優れているといった判断をしているわけではありません。 私の Neovim の使い方 使い方が違うと参考にならないことが多いため前提としてどういうふうに Neovim を使っているか

    ワシの使っているNeovimプラグインは200個近くあるぞ
  • JestのTips集10選。サーバーサイドでNode.jsのJestを書いたことない人向け

    対象 業務レベルでサーバーサイドでJestを書いたことはないけれど、新プロジェクトでは書くことになったみたいな方を想定して記述しています。 Jestについては中々ベストプラクティスが集まりにくいので、経験的にこう書くと「きれいに」・「早く」・「正確に」書けるよというTipsを集めてみました。もし、よろしければお読みください。 前提 TypeScript Node.js Jest DBアクセスありの状態を想定しています 1. it文内では、必ず1回は、expectをつかって検証をする JestのPRをレビューしてるとたまに見受けるのですが、expectを使ってないケースがあります。 // NG it('userを正常に、作成できること', async() => { await createUser({ name: 'Mike' }); }); // OK it('pdfが正常に削除できること

    JestのTips集10選。サーバーサイドでNode.jsのJestを書いたことない人向け
  • 40年越しにTCPの仕様(RFC793)が改訂される RFC9293 - ASnoKaze blog

    2022/08/09 追記 「RFC 9293 Transmission Control Protocol (TCP)」として正式なRFCが出ました TCPのコア部分の仕様は1981年に発行された「RFC793 TRANSMISSION CONTROL PROTOCOL」で標準化されています。 この、RFC793の改訂版となる「Transmission Control Protocol (TCP) Specification」は、2013年からIETFのTCPM WGで議論されてきましたが、4月4日にIESGによって承認されました(参考URL)。現在はRFC出版の準備に入っています(新しいRFC番号はこの後正式に決まります) www.ietf.org 改めてTCPの仕様を読みたい場合はこのドキュメントを読むのが良さそう。 概要 この改訂版の仕様(通称 rfc793bis)は、RFC793が

    40年越しにTCPの仕様(RFC793)が改訂される RFC9293 - ASnoKaze blog