https://2021.pycon.jp/time-table/?id=273396
Webアプリ開発とデータベースマイグレーションには密接な関係があり、Pythonでよく採用されるDjangoやSQLAlchemyには、DBのスキーマを変更するマイグレーション機能があります。一般的に、プログラムを実装するときはリポジトリでブランチを作りそれぞれのブランチで実装作業を進めます。Webアプリの開発でも同様ですが、各ブランチでDBスキーマを変更する場合には注意が必要です。例えば、複数のブランチで同じテーブルのカラムを追加して使いたい場合や、DBスキーマの変更が競合する場合は、ブランチのマージ時に競合してしまいます。多くの機能を並行開発したり、マージするまでの期間が長い場合には、このような競合が増えてしまいます。
このトークでは、Djangoを例に、データベースマイグレーションの仕組みから、実際の開発現場で発生したトラブルとその解決方法について紹介します。
Migration strategies for parallel development of web applications
The document discusses various topics relating to web development including 12Factor methodology, continuous integration/delivery, setting up build environments using tools like Jenkins on Windows, Linux and MacOS, testing APIs with curl, building Docker images, and deploying applications to servers. It provides guidance and considerations for setting up development and deployment workflows and infrastructure for web applications.
1) Mercari has transitioned some services to microservices architecture running on Kubernetes in the US region to improve development velocity.
2) Key challenges in operating microservices include deployment automation using Spinnaker, and observability of distributed systems through request tracing, logging, and metrics.
3) The architecture is still evolving with discussions on service mesh and chaos engineering to improve reliability in the face of failures. Microservices adoption is just beginning in the JP region.
https://2021.pycon.jp/time-table/?id=273396
Webアプリ開発とデータベースマイグレーションには密接な関係があり、Pythonでよく採用されるDjangoやSQLAlchemyには、DBのスキーマを変更するマイグレーション機能があります。一般的に、プログラムを実装するときはリポジトリでブランチを作りそれぞれのブランチで実装作業を進めます。Webアプリの開発でも同様ですが、各ブランチでDBスキーマを変更する場合には注意が必要です。例えば、複数のブランチで同じテーブルのカラムを追加して使いたい場合や、DBスキーマの変更が競合する場合は、ブランチのマージ時に競合してしまいます。多くの機能を並行開発したり、マージするまでの期間が長い場合には、このような競合が増えてしまいます。
このトークでは、Djangoを例に、データベースマイグレーションの仕組みから、実際の開発現場で発生したトラブルとその解決方法について紹介します。
Migration strategies for parallel development of web applications
The document discusses various topics relating to web development including 12Factor methodology, continuous integration/delivery, setting up build environments using tools like Jenkins on Windows, Linux and MacOS, testing APIs with curl, building Docker images, and deploying applications to servers. It provides guidance and considerations for setting up development and deployment workflows and infrastructure for web applications.
1) Mercari has transitioned some services to microservices architecture running on Kubernetes in the US region to improve development velocity.
2) Key challenges in operating microservices include deployment automation using Spinnaker, and observability of distributed systems through request tracing, logging, and metrics.
3) The architecture is still evolving with discussions on service mesh and chaos engineering to improve reliability in the face of failures. Microservices adoption is just beginning in the JP region.
#CloudOnAir 記念すべき第一回目の放送では、皆様に Google Cloud Platform の概要や Google Cloud のビジョンなどをお話します。
Google Cloud Platform の製品で何ができるのか?何がビジネスに役立つのかなど、分かりやすくポイントを交えながらご紹介していきます。
番組動画はこちら:
https://youtu.be/VSV9AJWjMCI