InfoQ ホームページ golang に関するすべてのコンテンツ
-
DockerがHardened Imagesを導入、コンテナセキュリティを強化
DockerはDocker Hardened Images、ソフトウェアサプライチェーンの脅威から保護するために設計された、エンタープライズグレードでセキュリティ強化されたコンテナイメージのカタログ、をリリースした。Dockerによれば、DevOpsチームが自らコンテナのセキュリティを確保する手間を省くことで、Hardened Imagesはエンタープライズグレードのセキュリティおよびコンプライアンス標準を満たすより簡単な方法を提供する。
-
マイクロソフトがネイティブTypeScriptコンパイラ移植を発表、10倍パフォーマンス向上
マイクロソフトのTypeScriptチームはTypeScriptコンパイラ(tsc)の実験的ネイティブ移植版、ビルド時間を10倍に短縮し、エディタのコールドスタート時間を大幅に削減し、メモリ使用量を大きく改善することを目的としたtsc-goを発表した。この取り組みはNode.jsランタイムのオーバーヘッドなしにGoで書かれたコンパイラを動かすことを探求するものだ。
-
Uberがプロファイルガイド最適化でパフォーマンス向上
プロファイルガイド最適化(PGO)はランタイムデータを使用してコンパイラの判断を支援することで、アプリケーションのパフォーマンスを向上させる強力な技術として登場した。最近の実装例ではUberがGoogleと協力してGolangにPGOを統合し、自社サービス群全体で大幅なパフォーマンスの向上とリソースの節約を実現した。
-
AWS LambdaがGoランタイムの廃止を発表
AWS Lambdaは go1.xランタイムを廃止し、Amazon Linux 2ランタイムでのみGoをサポートすることを発表した。この発表と、年内にカスタムprovided.al2ランタイムに移行する必要性から、Goコミュニティでは懸念が高まった。
-
Cadence1.0:Uberがスケーラブルなワークフロー・オーケストレーション・プラットフォームをリリース
Uberは6年間の開発期間を経て、Cadenceと名付けられたワークフロー・オーケストレーション・プラットフォームのメジャーバージョンをリリースした。Uberや他の企業は、ネイティブのプログラミング言語を使ってステートフルなサービスを大規模に構築するためにCadenceを使用している。チームは、使いやすさ、オブザーバビリティ、効率性の向上を目標に次のリリースに取り組んでいる。
-
Goジェネリクスの実装とパフォーマンスについて
Go 1.18で安定版となるGoジェネリクスに続いて、PlanetScaleパフォーマンスエンジニアのVicent Martí氏は、それらがどのように機能するかを分析し、実際の実装のいくつかのパフォーマンス制限をハイライトした。彼はまた、その役に立つ使用法について提案をした。
-
Go 1.18でジェネリック、ファジング、マルチモジュールサポートが安定版となり、パフォーマンスが向上
Goチームは、ジェネリック、ファジング、ワークスペース、パフォーマンス向上をサポートするGo 1.18のリリースを発表した。
-
UberのエンジニアリングチームがGo GCのチューニングにより70kの削減に成功
企業の収益性を向上する活動の一環として、Uberのエンジニアリング部門では、インフラストラクチャをより効率的な利用に重点を置いている。その取り組みの成果として、半自動的形式のGo Garbage Collectiomnチューニングメカニズムを開発し、30件のミッションクリティカルなサービスにおいて、70KのCPUコア削減に成功した。
-
GoのジェネリックがGo 1.18 Beta 1でデビュー
Goの最新のベータリリースGo 1.18 beta 1は、パラメータ化された型を使ったジェネリックプログラミングのサポートをついに導入した。長い間待ち望まれた待望の機能だ。さらに、テストファジングのサポートも追加されている。これは、入力を見つけてプログラムの不正な動作を明らかにするために使われる手法である。
-
PantsビルドシステムがJava、Scala、Goを新たにサポート
ビルドシステムのPantsが、現在はアーリーアダプタ向けに提供されている次期リリースにおいて、これまでサポートしていたPythonに加えて、Java、Scala、Goをサポートするようになる。開発者のひとりであるBenjy Weinberger氏と、メインスポンサのToolchainで現在CEOを務めるJohn Sirois氏に話を聞いた。
-
DaprのCNCFインキュベーターへの参加とYaron Schneider氏とのQ & A
Cloud Native Computing Foundation (CNCF) は先ごろ、分散アプリケーションランタイム (Dapr) を CNCF インキュベーションプロジェクトとして受け入れたことを発表した。この声明は、Dapr プロジェクトの運営および技術委員会 (STC) の設立を発表した、以前の Dapr による発表に続くものだ。
-
Pinterestが広告配信アーキテクチャをどのようにスケールアップしたか
Nishant Roy氏は、Pinterest Engineering Blogに、広告コーパスのスケーリング問題を克服するための戦略を書いている。彼らの既存のソリューションはスケーリングの限界に達していた。そのため、さらなる成長が必要であった。再設計により、広告インデックスがKey-Valueストアにオフロードされ、Goアプリケーションのガベージコレクションが最適化されて、広告コーパスのサイズが60倍に増加した。
-
Goがベータ版でファズテストをサポート
Goチームは、ベータテストでファジングがサポートされるようになったことを発表した。プロジェクトの主な目標は、堅牢なモジュールサポート、goコマンドとの統合、新しいコンパイラインストルメンテーションなど、言語の開発者とユーザ向けに統一されたエンドツーエンドのエクスペリエンスを作成することである。
-
Slackが新しいロール管理アーキテクチャを詳しく説明
Slackは最近、新しい役割管理システムのソフトウェアアーキテクチャの詳細な説明を投稿した。Slackは、以前よりも柔軟なシステムを構築する必要があった。Slackは、カスタムコンテナ化されたGoベースのパーミッションサービスを開発した。これは、gRPCを介して既存のシステムと統合される。その結果、顧客の管理者は、ユーザが実行できることをきめ細かく制御できるようになった。
-
UberがAPIゲートウェイのアーキテクチャを公開
Uberは最近、自社で構築したAPIゲートウェイのアーキテクチャについて詳しく説明した。そこでは、独立したレイヤー化されたコンポーネントがゲートウェイで各リクエストをどのように処理するかを説明されており、各レイヤーはリクエストライフサイクルの異なる面を担当する。YAMLとApache Thriftの組み合わせがゲートウェイ構成を定義し、Goでコード生成されたアーティファクトがゲートウェイ実装を構成する。