🍣
Matsuri-tech Backend Weekly 2023-06-05

myuon

myuon

2023年6月5日
MBW

社内向けに、バックエンド関連のニュースや業務で発生したQ&A、利用しているライブラリなどの情報を定期的に書いています。

# Rust 1.70のリリース

Announcing Rust 1.70.0 | Rust BlogEmpowering everyone to build reliable and efficient software.Announcing Rust 1.70.0 | Rust Blog

Rust 1.70がリリースされました。

# index更新に使われるsparseプロトコルがデフォルトで有効に

これ自体は1.68で追加された機能ですが、デフォルトで有効化されました。

Help test Cargo's new index protocol | Inside Rust BlogWant to follow along with Rust development? Curious how you might get involved? Take a look!Help test Cargo's new index protocol | Inside Rust Blog

sparseプロトコルについては上記のブログ記事に詳しく書かれています。端的にいうと、cargo update時に走るindex更新が遅かった問題を解決しようと生まれたものです。以前はindexの更新にgit cloneを使っていたのをやめ、HTTPSで直接やりとりするようになったようです。

また、並列でリクエストを送ることもできるので、この点でも高速化が期待できます。

https://rust-lang.github.io/rfcs/2789-sparse-index.html

# OnceCellとOnceLockの安定化

1度だけ値を書き込みができるOnceCellとそのスレッドセーフ版のOnceLockがstdに入って安定化されました。

以前は lazy_staticonce_cell と言ったライブラリがよく使われていましたが、stdに入って気軽に使えるようになったのはとても良いですね。

# WASIXのリリース

Announcing WASIXWASIX extends the WASI proposal to build useful and productive applications today with full POSIX compatibilityAnnouncing WASIX

WASM処理系を提供していたWasmerがWASIXをリリースしました。

これはWASI ABIを含む様々なAPIのサポートを目的とした新しいWASM処理系(?)です。WASMには様々なProposalがありますが、WASI含め、あまり標準化が進んでいなかったという背景があります。

これらの問題を解決するべくWasmerがWASIXとして新たに提供を開始しました。元々あったWasmerのWASIサポートをさらに拡張するような形でサポートされているようです。

上記のブログではcurlがWASMで動くデモがあったり、WASIXがブラウザでもサポートされていることの説明があったりとかなり力を入れているのがわかります。

Wasmerの今後の動きにも期待できます。

API Reference – WASIXAPI Reference – WASIX

# AWS AppSyncでMerged APIのサポート

Announcing AWS AppSync Merged APIs for GraphQL federationAnnouncing AWS AppSync Merged APIs for GraphQL federation

Introducing Merged APIs on AWS AppSync | Amazon Web ServicesAWS AppSync is a serverless GraphQL service that makes it easy to create, manage, monitor and secure your GraphQL APIs. Within an AppSync API, developers can access data across multiple different data sources including Amazon DynamoDB, AWS Lambda, and HTTP APIs. As the service continues to grow in adoption, our customers have faced challenges related […]Introducing Merged APIs on AWS AppSync | Amazon Web Services

AWS AppSyncで、Merged APIという、複数のGraphQL APIを1つにまとめるような機能がリリースされました。

ブログを見る限り、例えばマイクロサービスの入り口として簡単なGraphQL APIが提供されており、それらを外側から叩く時にGatewayとして使うような感じが想定されているようです。

実際に、複数のサービスがありそれぞれを別のチームが担当しつつ外部にGraphQL APIを提供しているケースで、このような機能があると便利そうです。

先日もAppSyncのPrivate APIがリリースされたりとAppSyncも最近アツい更新が続いています。