Go言語チームとGoogleが「Go Cloud」プロジェクト発表。同一コードでAWSやGoogle Cloudなどに対応できるポータブルなクラウドアプリの実現へ

2018年9月5日


Go言語チームとGoogleは、オープンソースの新プロジェクト「Go Cloud」を発表しました

Go Cloudは、さまざまなクラウドの一般的な機能を共通のAPIで利用できるようにすることで、Go言語のソースコードを書き換えることなくポータブルなクラウドアプリケーションの実現を目指すというものです。

Go Cloud

Go言語はGoogleが中心となってオープンソースで開発されているプログラミング言語で、シンプルにコードを記述できるため学習コストが小さく、タイプセーフかつメモリセーフにできているため安全なプログラムを記述しやすく、並列処理の記述も容易、コンパイルや実行が高速などの特長があります。

また、WindowsやmacOS、Linux、FreeBSD、iOS、Androidなど、さまざまなOSやCPUに対応したバイナリを生成でき、最近ではWebAssemblyへの対応も発表しています

Go Cloudは、こうしたマルチプラットフォームへの対応をクラウドへも広げたものといえるでしょう。

共通APIとGo言語でクラウドの違いを吸収する試み

Go Cloudが具体的にどのようなものなのか、Go言語のブログにポストされた記事「Portable Cloud Programming with Go Cloud」(Go言語でポータブルクラウドプログラミング)から、一部を引用します。

We have identified common services used by cloud applications and have created generic APIs to work across cloud providers. Today, Go Cloud is launching with blob storage, MySQL database access, runtime configuration, and an HTTP server configured with request logging, tracing, and health checking. Go Cloud offers support for Google Cloud Platform (GCP) and Amazon Web Services (AWS). We plan to work with cloud industry partners and the Go community to add support for additional cloud providers very soon.

私たちはすでに、クラウドアプリケーションで使用される一般的なサービスを特定し、クラウドプロバイダ間で動作する汎用のAPIを開発しました。そして今日、Go Cloudとしてまず、Blobストレージ、MySQLデータベースへのアクセス、ランタイムコンフィグレーション、HTTPサーバとそのロギング、トレーシング、ヘルスチェックなどを立ち上げました。
Go Cloudは現時点でGoogle Cloud PlatformとAWSに対応しています。私たちは今後、クラウド業界のパートナーやGo言語コミュニティとの協力により、まもなくさらに多くのクラウドプロバイダへの対応を計画しています。

これまでもクラウド間の違いをライブラリなどで吸収しようという試みは何度か行われてきました。例えば「2016年6月にバージョン1.0に到達した「Apache Libcloud」などはその代表例でしょう

しかし残念ながらこれが普及することはありませんでした。果たして今回はどうでしょうか?

このエントリーをはてなブックマークに追加
follow us in feedly


≫次の記事
AWS日本法人、クラウド初心者向けにマンガの連載をはじめる。英語版も登場予定

≪前の記事
Go 1.11がリリース。WebAssembly対応を実装、モジュール機能も追加


カテゴリ



Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed



新着記事 10本


PR - Books


fig

fig

fig