InfoQ ホームページ Asynchronous に関するすべてのコンテンツ
-
SpotifyはSidekickのLLMチャットボットをどのように改善したか?
Large Language Model (大規模言語モデル、LLM)チャットボットにより革新的なソリューションへの扉が開かれる中で、SpotifyのエンジニアであるAtes Goral氏は、ユーザーエクスペリエンスを可能な限り自然なものにするために、レンダリングジャンクを防ぎ、待ち時間を減らすための具体的な取り組みが必要であると主張している。
-
リモートファーストSREとして非同期で働くには
Netlifyのリモートワークにおけるコアプラクティスは、非同期コミュニケーションを優先すること、リモートコミュニティ構築において意図的であること、ワークライフバランスの保護を推奨することである。サスティナブルなリモートワークは、サスティナブルな業務時間から始まる。その中には、時間外の連絡に関する明確な境界とプロトコルによって、自分自身を"ほぼ"連絡不可能な状態に置くことも含まれる。
-
効果的効果 - ソフトウェアコンポーネント間の双方向通信の統合
Waterloo大学の助教授であるYizhou Zhang氏は、双方向制御フローをサポートしながら、現在の制御フローパターン (例外、promise、generator など) を包含する新しいプログラミング抽象化である双方向の代数的エフェクトを発表した。新しい型付き抽象化により、宣言されたすべてのエフェクトが処理され、間違ったハンドラによって誤ったエフェクトが処理されることはない。
-
Rustの非同期ランタイムであるTokioが1.0に到達
Tokioは、Rustで信頼性が高く高速な非同期プログラムを作成するためのビルディングブロックを提供することを目指している。最近発表されたTokio 1.0は、TCP、UDP、タイマー、マルチスレッド、ワークスティーリングスケジューラなどをサポートしている。
-
Dropboxがどのようにして大規模な分散非同期タスクフレームワークを構築したか
Dropboxのエンジニアは、1秒ごとにスケジュールされた数万の非同期タスクを処理できる分散非同期タスクフレームワーク(ATF)を設計した。ATFの主な機能は、開発者がコールバックを定義し、これらの事前定義されたコールバックに対して実行されるタスクをスケジュールできるようにするものである。
-
データ競合のない並列言語を目指すSwift
Swiftチームは、Swiftの並列性サポートの改善に向けたロードマップを公開した。最初のフェーズでasync構文とアクタを進め、第2フェーズでデータ競合(data races)とデッドロックを排除する予定である。
-
Rustが1.39でゼロコストAsync/Awaitをサポート
Rustのバージョン1.36で先行サポートされていたasync/.await機能が、バージョン1.39で最終的な安定版になった。RustコアチームメンバのNiko Matsakis氏の説明によると、他言語とは異なり、Rustのasync/.awaitはゼロコスト抽象化(zero-cost abstraction)である。
-
Node 7.6、async/awaitをデフォルトでサポート
Node.js 7.6がリリースされた。async/awaitサポートがデフォルトで有効になり、低メモリデバイスにおけるパフォーマンスが改善されている。
-
安全な非同期イベント駆動プログラミングのためのP言語をMicrosoftがオープンソース化
Microsoftが最近オープンソースとして公開したP言語は、非同期イベント駆動プログラムを安全に書くことができ、Linux、macOS、Windows上で動作する。
-
Netflix FlacorでJSONデータを取得する
NetflixがFalcorというJavaScriptライブラリをオープンソース化した。これは複数のリソースからJSONデータを取得するためのモデルと非同期メカニズムを提供する。
-
Slick 3: Scalaで非同期データアクセスを実現するReactive Streams
TypesafeのScala用データベースクエリおよびアクセスライブラリであるSlickがバージョン3.0をリリースし,Reactive Streams APIを新たにサポートした。これによって非同期かつ非ブロックのデータベースクエリが可能になる。InfoQは同社技術リーダのStefan Zeiger氏から,新機能の詳細と今後の予定について話を聞いた。
-
Python 3.5、async/await非同期プログラミングをサポート予定
PEP #0492によると、Python 3.5はasync/await構文を使った継続をサポートする予定だ。提案は継続をネイティブな言語機能とし、「一般的で親しみやすい非同期プログラミングのメンタルモデルを構築する」ことを狙っている。
-
マイクロサービスの強み弱み
マイクロサービスが最近話題になっており、噂も生まれている。10年以上に渡り、重たく、扱いにくいSOAソリューションが続いたが、マイクロサービスはそれを置き換える待望のソリューションなのだろうか。それとも単に一枚岩のソリューションズよりも単純なだけなのか。
-
リアクティブな世界におけるスケーラビリティ
システムをスケーラブルにするには参照の局所性の最大化とコンテンションの最小化が必要だ – Akkaプロジェクト創始者のJonas Bonér氏は先日の,リアクティブシステムのスケーラビリティに関するプレゼンテーションでこう説明した。シェア・ナッシング・アーキテクチャを採用し,イベント駆動を基盤として,実績の積み重ねによって証明された基本原則を忠実に守ることで,私たちは真にスケーラブルなシステムを作り上げることができる。
-
Dart 1.3のパフォーマンスはNode.jsと同レベルに
GoogleのDartチームがDart SDK 1.3を発表した。これには非同期サーバサイドコードのパフォーマンス改善が含まれており、Dart VMは別のGoogleテクノロジーであるV8エンジンを使ったNode.jsと同レベルになったようだ。