You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Published: Mar 12, 2018 - Last updated: Mar 12, 2021 Table of Contents I wrote a book! "Decoupled Django". Understand and build decoupled Django architectures for JavaScript frontends. Please read This post dates back originally to 2019. Two years in modern web development are equal to an eon. The approach outlined here is not inherently bad, but it could fall short for larger teams, and due to po
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに こちらはDjangoのチュートリアル「はじめての Django アプリ作成、その1」のPolls(投票)アプリを Amazon Web Service(AWS) の Elastic Container Service(ECS) へデプロイするサンプル(のようなもの)です。 nginx + uwsgi + python + django + MySQL DB という構成で docker-compose を使っています。 また、デプロイには AWS CLI と ECS CLI を使い AWSコンソールは(ほとんど)使いません。(E
概要 ローカル環境を構築することには、それなりのコストを伴います。もちろんここで多少苦労したほうがよいという意見はすごく分かります。が、それで気持ちが削がれてしまうのももったいないと思う次第です。 そこで、Flask/Django/JupyterNotebook向けの Python開発環境構築を3コマンドで完了 させられるようなテンプレートを作成しました。(cdを除く) 前提条件 MacOSであること gitおよびmakeコマンドが有効であること(デフォルトで有効なはず) ※condaがインストールされている場合は、pipとのバッティングが発生し中途で失敗する可能性があります。 ローカル構築イメージ Dockerコンテナ上でアプリを動かすことになります。よく分かっていなくても、Dockerコンテナを使って開発していると言うことができます。 bind mountによってホストPCからコンテナ
Wrappers: Coala - Wrapper of code linters and fixers for various languages, including Python. Written in Python. Wraps all popular Python linters: https://coala.io/ bandit, isort, mypy, pycodestyle, pydocstyle, pyflakes, pylint, pyroma, radon, vulture, yapf also, has exclusive checks: PEP8 for Jupyter notebooks: https://github.com/coala/coala-bears/blob/master/bears/python/PEP8NotebookBear.py __in
背景 世の中にあるWebサービスのデータベースを自動で同期して、本家にはない付加価値をつけることによって、手軽にニーズのあるWebサービスを作ることができます。 例えばECサイトのデータをスクレイピングして自前でデータベースとして持っておき、それに対して本家にはない検索方法を提供して、リンクを貼り、アフィリエイトで稼ぐみたいな軽量なビジネスモデルが個人事業のレベルで可能です。 このようなパターンはいくらでも考えられるのですが、とにかくまずはスクレイピングスクリプトを書いて、自動でデータ収集して、きちんと構造化して、それをなるべく最新の状態に保てるようなボットとインフラが必要になるわけです。今回はどのようなパターンであれ、アイデアを思いついてから、立ち上げまで作業を効率化できるようにサンプルテンプレートを作ってみました。 テンプレートといっても必要な以下のようなミドルウェアやフレームワーク込
This styleguide combines domain-driven design principles and Django's apps pattern to provide a pragmatic guide for developing scalable API services with the Django web framework. This styleguide tries to tackle two big problems: Design philosophies and design patterns work in "ideal" situations, and most real life problems do not represent this ideal world. Therefore we need to develop a flexible
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 以下のPython Web frameworkを使って単純なAPIを立てて、負荷試験をしてみました。 Django (2.X) Flask FastAPI responder japronto 結果的に、ざっくりと以下が分かりました! performanceは「japronto >>> FastAPI > responder >>> Flask ~ Django」だと言えそう FastAPIとresponderはsingle workerだと秒間100~1000程度のrequestであればpython界で圧倒的なperformanceを
WEBブラウザに画像ファイルをドロップしてBase64エンコードする処理と、Base64エンコードテキストを受け取って、学習済モデルを使って何の画像かを識別する処理を組み合わせて、簡単なデモンストレーションを作ってみます。 はじめに ブログで別々の記事に書いている3つを組み合わせて、簡単なデモを作ってみます。 その3うとは。 画像識別するクラス arakan-pgm-ai.hatenablog.com 識別結果を英語→日本語化するクラス arakan-pgm-ai.hatenablog.com ドラッグ&ドロップで画像ファイルを受け取り、Base64形式にエンコードしてHTTPRequest経由でPythonプログラムに渡すJavaScript arakan-pgm-ai.hatenablog.com です。 これを組み合わせて。 画像ファイルをドラッグ&ドロップで受け取り、Base64形
この記事はBASE Advent Calendar 2019の20日目の記事です。 devblog.thebase.in PAY株式会社でテックリードを務める東と申します。 主にバックエンド全般に広く携わっています。最近はサーバーアプリばかり書いていますがインフラもわりとやります。 当ブログの読者の方には弊社のことをご存じない方もたくさんいらっしゃるかと思いますので、簡単に社の紹介をさせていただきます。 PAY株式会社はBASE株式会社の100%子会社で、オンライン決済サービス「PAY.JP」とID決済サービス「PAY ID」などの決済サービスを開発・運営している会社です。 「支払いのすべてをシンプルに」をミッションに掲げ、お金を扱うすべての事業者・個人がもっと豊かな生活ができることを目指しています。 さて、決済というミッションクリティカルなテーマを扱うにあたって、品質保証は最も重要な課題
Djangoはデータベースマイグレーションの機能を持っています。 ですが、 実際、Djangoマイグレーションってどう使うの? という疑問が多いかと思います。 docs.djangoproject.com この記事では、 マイグレーションを稼働中のアプリケーションに、無停止でどう反映すれば良いのか を説明します。 前提としてWebアプリ、データベースは本番環境に1系統づつあるとします。 基本的に無停止でマイグレーションを実行するのは 絶対に安全という方法ではないので、動作確認などをして慎重に反映する必要があります 。 無停止でマイグレーションを反映する基本 マイグレーションを 無停止で行う場合、「マイグレーションとアプリのリリースはどちらを先にすべきか」 という話になります (マイグレーションをするということは、アプリケーションの変更も必要になります)。 マイグレーションを先に実行して、ア
Django + pytestでテストの初期化や後始末を書く場合、 django.test.TestCaseを使った、setUp()やtearDown() pytestを使った、classic xUnitスタイルのsetup_xxx()やteardown_xxx() pytestを使った、@fixtureのscope などのテストフィクスチャが使えます。 今回、それぞれがどのタイミングで動作するのか知りたくなったため、実際に試してみることにしました。 なお、pytest全体については以下が参考になりました。 [Python] 初中級者のためのpytest入門 - くろのて 目次 環境 django.test.TestCaseのsetUp/tearDownで書く pytestのxunitスタイルで書く pytestのfixtureで書く 今までのパターンを一つのテストクラスに書いてみる ソー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く