Top page  1/42
02
2020

Amazon ECSへのDockerイメージのデプロイ方法(Latest運用簡易版)

CATEGORY開発環境
最近Dockerアプリの開発環境をAWSのAmazon ECSに構築する必要があって、環境構築の方法とかは普通に見つかったけど、デプロイの方法とかが分かりにくかったので、手順をここに纏めとく。
なお、タイトルに「Latest運用簡易版」とある通り、いわゆるタグを latest とかで毎回上書きする簡易的な手順。
latest でのデプロイは、本番では推奨されていないので注意。
(タグを変えてのデプロイは、CodeDeploy とかを使うと出来るらしい?)

1. Amazon ECRのリポジトリ作成

AWS上のDockerコンテナレジストリであるAmazon ECRに、使用するDockerイメージ用のリポジトリを登録する。
Docker Hubとかでも流れは同じだと思うが、今回は以下ECRで説明。)

これは基本的に名前を入れるだけなので、あまり迷うことは無いと思う。
Latest運用ということで 「タグのイミュータビリティ」だけは「無効にする」を選んでおく。
(有効にすると同じタグで上書きできないらしい。)

Tag: AWS Docker ECS ECR

15
2019

Wikipedia翻訳支援ツール Ver1.32

CATEGORY自作ソフト
前回のリリースが5年前のWikipedia翻訳支援ツールですが、使用しているライブラリが古かったため、TLS1.0/1.1の廃止にともないエラーが発生するようになっていました。バージョンアップして再ビルドしたものを公開しましたので、エラーが出ている方はお手数ですがこちらのバージョンにアップデートをお願いします。
Wikipediaでは先週ぐらいからエラー画面が出るようになったようで、旧バージョンですと「行 21、位置 38 にある開始タグ 'img' と終了タグ 'a' が対応していません。」のようなエラーが表示されます。
ライブラリ更新に伴い、XPなど古いOSでは動かなくなったはずですが、さすがにサポート終了からかなり経ちますので、ご了承ください。

ただ、今やMediaWiki公式のコンテンツ翻訳ツールもありますので、そちらへの移行も検討する時期かも…?
(公式のは仮リンク化とかはしてくれないっぽい(?)ですが。)

Tag: Wikipedia .NET

08
2019

マスタデータ実装の考察

CATEGORYDB
ソシャゲのキャラやらアイテムやらみたいなマスタデータの実装についての考察。ググるとベテラン勢によるもっと立派な記事もたくさんあるが、とはいえ毎回悩まされるので、どういう実装パターンがあるとかメリット/デメリットとか書いて自分なりの考えとかをまとめてみる。

なお、タイトルに「実装」と書いているように、運用なども含めてどうあるべきか…みたいな話よりも、サーバーサイドにどうやって実装していくかみたいな観点がメイン。
それとソシャゲを念頭に置いているけど、別にマスタデータを使うのはソシャゲに限らないので、一応それも考慮しつつまとめる。
(ソシャゲみたいに性能要件厳しくない場合は、あまり悩む必要は無いと思うが。)

Tag: プログラミング

30
2019

Laravelのcursorとchunkの違いとバッファクエリの対処法

CATEGORYPHP
Laravelでデータを小分けに取得するcursorchunkについての話。前回の記事でどっちでもいいから使えば的に書いたりと、自分も両者を使い方が違うだけで中身同じでしょとか思ってたんだけど、よくよく調べてみたら結構差分あったのでちょっとまとめる。なおLaravelは6.x。

初めに結論というか、両者の違いを表にまとめる。

cursorchunk
処理単位1件ずつ指定した件数まとめて
戻り値LazyCollectioncallbackでCollection
SQLSELECTを1度だけ実行
(結果を1行ずつ読み込む)
SELECTを複数回実行
(OFFSET/LIMITを使って繰り返し)
with使用不可可能
ソート不問Eloquentモデル: idでORDER BYされる
生クエリ: ORDER BY句必須
データ不整合の可能性
バッファクエリの影響

見てわかる通り、使い方が違うのも勿論だけど、内部的な動作も全く異なるし、お互い何かしら制限を抱えている。なので、実際に使う上では、用途に合わせて使い分ける必要がある。

Tag: PHP Laravel 性能問題

27
2019

Laravelで負荷対策としてやっとくこと

CATEGORYPHP
お仕事で作ってるLaravelアプリがついに負荷試験も終わったので、やったこととか調べたこととかを、忘れないうちに改めて基礎からまとめてみる。Laravelのバージョンは6.x。
なお「Laravelで」と題しているが、「Laravelのここを設定しろ」みたいな話じゃなくて、インデックス貼れだのLaravelに限らずWebアプリなら当然やっとけみたいな話が中心のまとめなのでご注意を。
あと個別の手法の詳細も書いてない。それは必要ならリンク先見たりググったりしてくださいm(__)m

Tag: Laravel PHP プログラミング 性能問題