🗾

MIERUNEの地図タイルを支える技術

2024/05/30に公開

はじめに

MIERUNEでは2017年ごろに、MIERUNE / MIERUNE MONOという2種の地図タイルを無償公開しました。
https://maps.multisoup.co.jp/blog/1749/
当時、マルティスープ様に記事を投稿していただいたりもしています

タイルサーバーのリプレイス

2017年ごろに構築されたシステム(以下、旧システム)はAzure CDN -> Google Cloud Compute Engineという構成で動作していました。一方この数年で、MIERUNEのメインのパブリッククラウドはAWSとなりました。ゆえに、AWSにこのシステムを移行することとしました。

移行手順

現状、クライアントがいるシステムではなくSLAを謳っているでもないので、そこまでナーバスな移行ではありませんでしたが、以下の手順を取りました。そもそも小規模なシステムなので特に問題も起きませんでした。

  1. 旧システムの調査
  2. 旧システムと同じ振る舞いをする新システムを構築する
  3. ドメインのDNSレコードを新システムに切り替える

新システムの構成

新システムはフルサーバーレスで構築できたこともあり、旧システムと比べてインフラコストが大きく低減しました。技術選定として、BFFはHonoを利用してさっくりと実装、旧システムと同じ仕様のエンドポイントを実装してタイルサーバーと繋ぎます。タイルサーバーには、筆者が開発しているchiitilerを採用しました(なおchiitilerでもHonoを利用しています)。chiitilerはコンテナとしてLambdaで動作させています。

なお、Lambdaとコンテナについて・Cloudfrontと関数URLについて、興味のある方ははそれぞれ以下の記事をご覧ください。

https://aws.amazon.com/jp/builders-flash/202402/lambda-container-runtime/

https://qiita.com/Kanahiro/items/85573c9ae724df435a6a

公開している地図タイル

MIERUNEとMIERUNE MONOが利用できます。

MIERUNE: https://tile.mierune.co.jp/mierune/{z}/{x}/{y}@2x.png
MIERUNE MONO: https://tile.mierune.co.jp/mierune_mono/{z}/{x}/{y}@2x.png

Attribution: MIERUNE Inc. © OpenMapTiles © OpenStreetMap contributors

利用方法・条件などは以下に記載しています。

https://github.com/MIERUNE/tiles

ぜひご利用ください。

MIERUNEのZennブログ

Discussion