Adakah yang punya pengalaman menjalankan peta Web (ubin server + skrip JS klien) di Amazon Web Services (S3, EC2 dll ...)? Konfigurasi AWS seperti apa yang diperlukan untuk menjalankan aplikasi peta Web bandwidth rendah hingga sedang, meliputi area kecil (-ish) (ukuran kota ke negara kecil)?
Semua ubin akan dirender dan diunggah ke S3. Idealnya saya membutuhkan aplikasi penayangan ubin di server web yang dapat melayani MBTiles (alih-alih mengunggah ratusan ribu bitmap ubin secara terpisah). Jadi semacam EC2 akan dibutuhkan, tapi seperti apa?
Terima kasih atas petunjuknya.
UPDATE: hanya untuk menguraikan pertanyaan saya. Apa yang saya cari pada dasarnya adalah beberapa umpan balik tentang seberapa layak AWS untuk hosting peta web Anda sendiri sebagai seorang individu (yang berarti seharusnya tidak terlalu mahal, katakan hingga $ 30 / bulan). Saya telah meng-hosting peta web saya untuk beberapa waktu melalui penyedia hosting "biasa", tetapi ini memiliki keterbatasan mereka sendiri (mengunggah bandwidth adalah satu, kecepatan adalah yang lain). Saya juga mencari alternatif yang baik untuk AWS dan apa pun yang harus diperhatikan ketika menggunakan layanan cloud untuk peta web.
sumber
Jawaban:
Ketika memilih arsitektur untuk layanan yang sangat bergantung pada arsitektur 'klasik' seperti peta web tidak pernah meremehkan efektivitas solusi hosting yang lebih tradisional seperti RackSpace Cloud Servers atau Linode .
Anda akan memiliki pilihan yang jauh lebih sedikit untuk dibuat (seperti menggunakan S3 atau tidak, memuat penyeimbang atau tidak, cadangan, dll atau tidak dan berapa biayanya?) Yang hasilnya sulit diprediksi DAN, lebih penting lagi Anda akan dapat gunakan alat yang sudah Anda kenal.
Setelah mengalami hal yang sama sendiri beberapa waktu lalu saya dapat memberitahu Anda bahwa faktor-faktor penting dalam keputusan saya untuk meng-host layanan peta web di Rackspace daripada AWS adalah:
Dengan ini saya tidak mengatakan bahwa Amazon AWS lebih rendah daripada yang lain, saya hanya mengatakan bahwa kadang-kadang solusi hosting tradisional dapat menskala serta yang berbasis Cloud. Contoh penting adalah jaringan StackExchange itu sendiri.
Jadi, dalam kasus Anda, saya akan memulai contoh besar di Rackspace dan kemudian memuat semua data dalam contoh Postgis lokal. Kemudian, setelah mengkonfigurasi mesin rendering, saya akan me-seed cache. Sebuah instance besar akan menyelesaikan proses penyemaian cukup cepat sehingga tidak menjadi terlalu mahal untuk dijalankan. Anda dapat menyimpan ubin di fs, MTBtiles, bahkan di S3 (btw, Anda dapat menyajikan data S3 pada CDN dengan CloudFront ).
Setelah seeding selesai saya akan me-reboot server dan mengubah ukurannya menjadi instance kecil (mungkin bahkan 512MB) karena pada saat itu hanya perlu melayani data statis.
Ini mendapatkan jawaban yang agak panjang jadi saya akan berhenti di sini. Jika Anda ingin saya menguraikan aspek-aspek tertentu, berikan komentar.
Penafian: Saya tidak berafiliasi dengan Rackspace, Linode, atau penyedia lain yang saya kutip.
sumber
Saya telah menggunakan WebFaction untuk meng-hosting data GIS dalam database Postgresql / PostGIS dengan MapServer dan saya pikir layanan ini tidak ada bandingannya dengan biaya
<$10
per bulan. Jika Anda ingin menggunakan PostGIS 2.0, Anda harus menginstalnya sendiri yang agak rumit, tetapi secara default mereka menyediakan PostGIS 1.5 (Anda harus membuka tiket dukungan). Ini adalah layanan hosting bersama di CentOS di mana Anda memiliki fleksibilitas penuh untuk menginstal apa pun di bagian server Anda sendiri.Saya belum pernah menggunakan Webfaction untuk melayani ubin, tetapi mereka memberikan 100GB ruang; Saya tidak yakin apakah RAM akan terlalu mahal karena standarnya adalah 256 MB (dan setiap blok 256 biaya tambahan $ 7 per bulan)
sumber
Satu kemungkinan lain yang menggunakan AWS:
Anda mungkin ingin melihat ke dalam menggunakan metode AWS Lambda Tiler yang dirancang Seth Fitzsimmons. Dia telah menggunakannya untuk proyek Open Aerial Map dan saya menggunakannya untuk proyek klien pribadi saat bekerja di Stamen Design.
Ada posting blog menyeluruh yang saya tulis yang mendokumentasikan cara mengatur AWS Lambda Tiler di Medium.com . Perhatikan bahwa posting blog hanya mencakup data raster ubin, tetapi kami juga menggunakan proses ini di Stamen untuk menggerakkan ubin peta Terrain Classic global kami yang dihasilkan dari kombinasi data OSM dan Bumi Alami melalui PostgreSQL, PostGIS, Mapnik, dan CartoCSS.
Salah satu manfaat dari pendekatan ini adalah bahwa Anda tidak memiliki server ubin untuk dipelihara dan Anda hanya membayar per penggunaan setiap panggilan fungsi AWS Lambda, yang saya cukup yakin ada di sisi murah untuk proyek-proyek kecil yang tidak menerima sejumlah besar lalu lintas web. Salah satu kelemahan dari pendekatan ini adalah bahwa ubin diunggah oleh pengguna menggeser dan memperbesar peta, sehingga rendering pertama bisa berada di sisi yang lambat, meskipun Anda bisa melakukan pra-seed ubin sebelumnya. Ubin ditulis dan disimpan ke S3 setelah pertama kali diberikan, sehingga pemuatan ubin berikutnya jauh lebih cepat.
sumber
Untuk mendapatkan harga terperinci untuk layanan AWS Anda dapat menggunakan kalkulator online yang terletak di sini: http://calculator.s3.amazonaws.com/calc5.html
Untuk instance EC2 kecil yang menjalankan Linux, jika Anda mau berkomitmen untuk satu tahun, Anda dapat membeli Mesin Virtual Cadangan yang harganya sekitar $ 25 / bulan. Itu dibandingkan dengan sekitar 44 / bulan untuk harga permintaan, atau harga tanpa kontrak.
Saya pikir jawaban singkat untuk pertanyaan Anda adalah bahwa jika Anda mencari penyedia infrastruktur untuk mengurus kebutuhan aplikasi pemetaan web pribadi Anda, AWS mungkin berlebihan. Jika Anda mencari penyedia TI untuk aplikasi produksi, terutama jika mereka membutuhkan HA dan skalabilitas, maka AWS adalah jawaban Anda. Ini menjadi lebih benar jika Anda membuat aplikasi yang memanfaatkan banyak layanan lem yang disediakan AWS, seperti SQS, SNS, SWF dll.
Seperti apa EC2 yang Anda butuhkan? Itu adalah fungsi persyaratan khusus aplikasi Anda. Inti dari TI berbasis cloud adalah Anda dapat mencoba sebelum membeli. Uji aplikasi Anda tanpa komitmen, dan hanya ketika Anda tahu, buat keputusan yang terinformasi tentang melakukan jenis EC2 selama periode waktu tertentu (pembelian RI).
sumber
Saya bukan seorang ahli dengan banyak atau benar-benar pengetahuan tentang hal itu selain saya telah menjalankan server web di amazon EC2 untuk beberapa waktu sekarang, Jadi ini bukan jawaban.
Saya tidak yakin Anda menggunakan alat ini untuk penggunaan terbaik mereka dengan pra-render dan mengunggah.
Jika itu tidak menghalangi atau menyebabkan berpikir ulang, Mungkin pertama-tama pilih server peta favorit Anda, Kemudian pilih OS yang didukung untuk server peta itu, Lalu pergi ke AWS EC2 dan temukan Mesin Virtual yang paling memenuhi kebutuhan Anda (ukuran, memori, ruang, wilayah).
Mungkin ada atau tidak ada AMI yang berisi semua tumpukan yang Anda butuhkan sehingga selanjutnya konfigurasikan dan kemudian instal tumpukan Anda.
Ada kemungkinan yang kuat bahwa Anda akan mencapai semua itu dengan "gratis" atau murah.
sumber
Itu benar Anda bisa menggunakan AWS jika Anda menggunakan layanan yang berbeda dari mereka karena AWS cukup mahal. Jika Anda ingin mendapatkan harga yang lebih murah dengan manfaat yang sama saya sarankan untuk https://fxdata.cloud atau https://digitalocean.com karena keduanya memiliki layanan yang lumayan dan harga termurah. Anda pada dasarnya akan mendapatkan semua opsi OS dan DBMS dengan keandalan tinggi.
sumber