タグ

非同期に関するwkubotaのブックマーク (4)

  • 非同期処理とリトライと冪等性 - GS2 Blog

    今回の記事は普段の GS2 のアップデート告知とは少し毛色が異なり、技術的なトピックを扱うエントリーです。 gs2.hatenablog.com こちらで告知した消費アクションの分岐処理を実装するにあたって、どのようなアプローチで課題に向き合ってきたのかを解説しようと思います。 非同期処理とリトライ まずは、非同期処理とリトライについて考えてみましょう。 非同期処理とは? 「API を呼び出すと、処理の結果が返ってくる。処理の途中でエラーが発生したらエラーが返ってくる」というのが同期処理です。 この場合、エラーハンドリングは呼び出し元に委ねられますので、比較的シンプルに処理を行うことができます。 一方で、非同期処理とはどういうものか?というと 「API を呼び出すと、処理を動かし、処理IDを応答する」「処理IDを指定して完了を通知」「処理IDを指定して処理結果を取得」 というように呼び出し

    非同期処理とリトライと冪等性 - GS2 Blog
  • Node.jsを理解する (libuv)

    はじめに 最近Node.jsデザインパターンというを購入して読み理解した内容について社内LTで発表したのでその内容を軽く纏めようと思い、この記事を書きます。 内容としては一章の内容をまとめ、さらに深ぼったといった感じです。 前提 少し不確定な部分があり、誤っている可能性がある箇所はコメントを書いています。 ご存じの方いましたらご教授いただきたいです。 Nodeがなぜこのような思想なのかの話はしません、具体的にはLAMPやc10k問題の話はしません。 他の参照した記事ではイベントループと紐づいているイベントキューにおけるlibuvが提供している部分をマクロタスク、Node.jsが提供している部分をマイクロタスクと書いている記事もありますが、 この記事では hiroppyさんの記事 と同じようにlibuvが提供している部分をフェーズと書いています。 Node.js とは 公式より Node.

    Node.jsを理解する (libuv)
  • Ajaxから始まった一つの時代の終わり

    最近の流れを見ていての感想文なので、ideaとして投稿します。筆者のバックグラウンドとしては、Remixの商業記事を書いたり、App Routerの商業記事を書いたりしている人です。 さて、筆者は2022年の秋から、社内システムではありますがRemixをプロダクション運用しています。また、Next.jsのApp Routerについても、パラダイムとしてはRemixにインスパイアされた部分が多い[1]おかげで、順調にキャッチアップできています。 RemixとApp Routerは、ルーティングとデータフェッチを高度に統合しており、Progressively Enhanced SPA(PESPA)と呼ばれることもあるそうです。PESPAについては、次の記事が話題になりましたね。 このPESPAであるRemixを実運用する中で、フレームワークの手触りが近年触ってきたものと大きく違っている点があっ

    Ajaxから始まった一つの時代の終わり
  • 非同期処理の道具箱 — HACK The Nikkei

    この記事はNikkei Advent Calendar 2022の 13 日目の記事です。 こんにちは、Web チームの井手です。最近 Web チームで働く魅力について語ったので是非とも読んで欲しいです。 今日は非同期ランタイムについて書きます。 私は非同期ランタイムやサーバー進化論が好きで、たまにブログを書いたり、前職でもアドベントカレンダーに書いたりしていました。 稿では効率的な非同期処理を実現するライブラリが中で何をしているのかを、低レイヤーの非同期処理そのものを解説しながら見ていきたいと思います。説明の都合上 Rust を使うので、Rust 特有の話もありますが、低レベルな API があればどの言語でも当てはまる話だと思います。この辺りは Rust, Scala(JVM), Erlang, Go などはお互いがお互いのアイデアを参考にしていて切磋琢磨しつつも似た仕組みをそれぞれが

    非同期処理の道具箱 — HACK The Nikkei
  • 1