SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2023 セッションレポート(AD)

新サービス構築にRustを選んで良かったこと、そしてちょっと苦労したこと

【10-D-8】4年前にRustで新規プロダクトを?!~枯れてない技術の採択にまつわるエトセトラ~

  • このエントリーをはてなブックマークに追加

ペイルドはプログラムのエラーが極端に少ない

 こうして聞くと、あまり深く考えずにパッと決めてしまったんだなと感じるかもしれない。しかし森氏はRustを選んで良かったと言う。ペイルドが提供しているクラウド管理型の法人カードサービス「paild」は、決済サービスでもある。決済サービスでは「いつでも決済できる」、つまりシステムを止めてはいけないことが当然のように求められる。

 「Rustはコンパイラによる静的なチェックが非常に優秀。ペイルドはプログラムに起因するエラーが極端に少ない」と森氏はRustがもたらした利点を挙げた。

 そうは言ってもRustは「枯れている」とはとても言えない言語だ。そして森氏もRustを選んだが故に苦労したこともあるとして、一つひとつ話し始めた。

 まず、Rustの非同期周りの環境だ。特にランタイムの事実上標準がなかなか決まらなかったこと。有力なランタイムが複数存在し、ユーザーを奪い合っていたのだ。その結果、ライブラリによっては特定のランタイムでなければ動かないことが起こるなど、かなり苦労した。現在は「Tokio」という非同期ランタイムが事実上の標準となったが、ランタイム以外の点でも「Diesel」というORマッパーが非同期に対応していないほか、非同期なトレイトを作ろうとしても言語の標準ではその機能がないなど、まだ苦労はある。

 続いて各種SDKの問題。「paild」では認証に「Auth0」というサービスを利用しているが、公式SDKがない。ほかにもいろいろな外部サービスを利用しているが、Rust向けSDKがないので、APIを直接操作するしかないという。

各種サービスを利用するにも、公式のRust向けSDKを用意しているサービスは少ない
各種サービスを利用するにも、公式のRust向けSDKを用意しているサービスは少ない

 AWSについては、Rusoto(ラソト)という非公式SDKがあったが、ある日突然、Rusotoがメンテナンス・モードに入ってしまった。今後を心配していたが、Rusotoのメンテナの一人がAWSで働いていることを明かし、AWSに掛け合ったところ、AWSが公式SDKを提供することを発表した。しかし、その公式SDKは発表から1年近く経った現在でも開発者向けプレビューの状態にとどまっており、「本番環境では使わないように」というただし書きが外れないそうだ。「Auth0やAWSに限らず、SDKに関してはRustはまだまだ恵まれていない」と森氏はこぼす。

次のページ
自社サービス開始直前にWebフレームワークが消えた

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
Developers Summit 2023 セッションレポート連載記事一覧

もっと読む

この記事の著者

笹田 仁(ササダ ヒトシ)

 フリーランスのライター、編集者。IT、特にソフトウェア開発の話が好きです。 趣味はドラムを叩くこと。コロナ騒ぎでリハーサルスタジオに入りにくくなり、ちょこちょこと楽器を買うことでストレスを解消していたら、いつの間にか置き場所に困るほどになってしまいました。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

丸毛 透(マルモ トオル)

インタビュー(人物)、ポートレート、商品撮影、料理写真をWeb雑誌中心に活動。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

提供:株式会社ペイルド

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/17528 2023/04/11 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング