BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ Concurrency に関するすべてのコンテンツ

  • Erlangランタイムの静的型付け関数型言語Gleamがバージョン1.0に到達

    Erlang仮想マシン(BEAM)上で実行されるアクターベースの高度な並行処理が可能な関数型言語であるGleamがバージョン1.0に到達した。これは、セマンティックバージョニングに基づいた下位互換性が保証され、運用システムで使用できるようになったことを意味する。

  • Swift 5.10: 完全なデータ分離コンパイル時の安全性を並行コードに提供

    最新のSwiftのリリースであるSwift 5.10には、数点の新しい提案が含まれている。しかしながら、このアップデートは言語の並行処理モデルにとって重要な成果を示しており、これによりコンパイラ・レベルで完全なデータ分離を保証できるようになったと、SwiftチームのエンジニアであるHolly Borla氏は説明する。

  • Apache Pekko:アクター・モデルによる並行開発の簡素化

    Apache Pekkoはオープンソースのフレームワークであり、並行、分散、回復力、伸縮性のあるアプリケーションの開発を簡素化するように設計されている。アクターモデルを活用することで、Pekko は並行処理のための高レベルな抽象化を提供し、開発者は低レベルな実装の詳細よりもビジネスロジックに集中できるようになる。Pekkoは、Akka2.6.xのフォークとして誕生し、Akkaのビジネス・ソース・ライセンス採用に先行していた。2年前、PekkoはApache Software Foundationでインキュベーション段階に入り、昨年バージョン1.0をリリースし、最新のリリースは1.0.2である。

  • Spring Boot 3.2、仮想スレッドと最新のRestClientとjdbcClientをサポート

    Spring Bootチームは2023年11月にSpring Boot 3.2をリリースした。この最新リリースは機能が満載で、もっとも注目すべきは仮想スレッドとCoordinated Restore at Checkpoint (CRaC)のサポートだ。その他の機能としては、SSLバンドルのリロード、RestClientとjdbcClientインターフェースのサポート、オブザーバビリティの改善などがある。

  • Micronaut 4.0.0はJava仮想スレッド、GraalVMのサポートとHTTP/3の実験的機能を搭載

    Micronaut財団はこのほど、Micronautフレームワーク4.0.0の一般提供(GA)リリースを発表した。このメジャーリリースは、人気のあるJVMベースのフレームワークに多数のアップデートと改善をもたらし、そのパフォーマンス、モジュール性、他の技術との互換性を強化する。

  • JDK 21の構造化並行処理:並行プログラミングの飛躍的な進歩

    JEP 453「構造化同時実行(プレビュー)」は、JDK 21のTargetedステータスから統合された。以前はインキュベートAPIであったが、この最初のプレビューでは、過去2回のインキュベートからのフィードバックに対応した機能強化が盛り込まれている。JEP 428「構造化同時実行(インキュベーター」(JDK 19で提供)、JEP 437「構造化同時実行(セカンドインキュベーター)」(JDK 20で提供)。現在の提案における唯一の重要な変更は、StructuredTaskScope::fork(...)メソッドがFutureではなくSubtaskを返すということである。これはプレビュー機能である。

  • QCon New York 2023 初日を振り返る

    2023年6月13日、ニューヨークのブルックリンにあるNew York Marriott at the Brooklyn Bridgeで、第9回QCon New Yorkカンファレンスの1日目が開催された。この3日間のイベントは、エンタープライズ開発コミュニティにおける偏りのないコンテンツと情報に焦点を当てたソフトウェアメディア会社であり、InfoQとQConのクリエーターであるC4Mediaが主催するものである。Radia Perlman氏による基調講演と、以下の4つのトラックからのプレゼンテーションが行われた。

  • JEP 428: javaマルチスレッドプログラミングを容易にする構造化並行性

    JEP 428 "Structured Concurrency (Incubator)"が、JDK 19のProposed to TargetステータスからTargetedステータスに昇格した。Project Loomの傘下にあるこのJEPは、異なるスレッド上で動作する複数のタスクをアトミックなオペレーションとして扱うライブラリの導入によって、マルチスレッドプログラミングを簡略にすることを提案するものだ。エラー処理の容易化、信頼性の向上、可観測性の改善が期待できる。

  • JEP 425: 仮想スレッドによるスループット向上

    JEP 425 "Virtual Threads (Preview)"が、JDK 19対象のProposed to TargetからTargetedに昇格した。Project Loomの傘下にあるこのJEPでは、仮想スレッドを導入する。これによって実現される軽量スレッドは、スループットの高いJavaプラットフォーム並列アプリケーションの記述、維持、監視に必要な労力を大幅に軽減するもので、現時点ではプレビュー機能である。

  • 大規模コードベースを効率的に処理するInferのAndroid用新デッドロック検出ツール

    ロンドン大学カレッジとFacebookの研究者らが共同研究により、AndroidのJavaコード用のデッドロック検出ツール(deadlock detector)を新たに開発し、オープンソースの静的解析ツールであるInferの一部として公開した。この新しいアナライザは、CIパイプラインに統合するために特別に設計されたインクリメンタルなアプローチにより、大規模なコードベースを効率的に処理することができる。

  • OCaml 5、マルチコアサポートを導入へ

    OCamlチームが言語ランタイムのマルチコアサポート追加に関する詳細なロードマップを公開した。OCaml 5に向けた次期マイナーリリースでは、マルチコアランタイムと標準ランタイムの統合に重点が置かれている。

  • .NET 6: スレッドの改善

    非同期や並列プログラミングの複雑さを抽象化するために多数のライブラリが存在するが、それでも開発者は、時々、下位のスレッド処理ロジックへの落とし込みが必要になる。.NET6シリーズのAPIの変更に続いて、マルチスレッドのいくつかの新しい効果的な方法を見ていこう。

  • ZippyDB:Facebookの強力な一貫性のあるKey-Valueストアのアーキテクチャ

    Facebook Engineering recently published how it built its general-purpose key-value store, known as ZippyDB. ZippyDB is Facebook's biggest key-value store, which has been in production for more than six years. It offers flexibility to applications in terms of tunable durability, consistency, availability, and latency guarantees.

  • async/awaitとアクタをサポートするSwift 5.5

    WWDC21で、AppleはSwift 5.5を発表した。現在はベータ版が使用可能だ。新機能の中で、最も待ち望まれていたもののひとつが、async/awaitとアクタを使用した並行処理サポートの改善だ。

  • GitHubがRedisを使用してレートリミットをスケールアップ

    GitHubのエンジニアであるRobert Mosolgo氏は昨日、Redisのシャーディングとレプリケーションを使用したレートリミッタを使ってGitHub APIをスケールアップした方法について、詳細に説明した記事を投稿した。GitHubは以前のMemcachedベースのレートリミッタから、Redisベースのものに移行した。Mosolgo氏によると、新しい実装では信頼性の向上、クライアントの問題解決、GitHubのサポート負荷の低減が実現されている。

BT