GMOクラウドALTUS(アルタス)と契約して、開発したDjangoアプリケーションを Nginx + uWSGI + MySQL + Python3 の環境にデプロイしたので、実行した操作を備忘録として残したいと思います。単なる作業メモなので、必ずしもベストプラクティスではないことにご注意下さい。間違いや不足があれば遠慮なくご指摘下さい(笑) 運用環境 まず、WSGI(Web Server Gateway Interface)とは、Pythonで記述したアプリケーションとWebサーバーの間の標準インターフェース(PEP333)で、uWSGIはWSGI仕様に従ったWebアプリケーションを動かすことができるWebサーバーを指します。 Djangoで作成したアWebプリケーションはWSGIで動作するように設計していて、様々な構成で運用できるのですが、今回はPycon2015のYuri Umez
ここ最近頓に調査依頼が多かったのです。なので調査報告をなどをしたためておりましたが、結構一般的な話題だったので少しここでも御裾分けなどしてみたいと想います。 探偵も普段は真面目に調査活動をしていることを、皆さんに対して見せかけるためなのが主たる目的であります。無論というか当然の様に姑息であります、ね。 先日、「ソフトウェア・ライセンス」についての質問がありました。*1 質問内容は、 (1) LGPLライセンスのライブラリを改造して販売することって可能ですか? (2) 可能な場合の制限ってありますか?(たとえばソースを公開しなくてはいけないとか) 上記の如く、質問が明確なのでそれのみに絞ることとしました。調査対象は、「LGPLの改変と頒布」 に関する制限、禁止事項など。 以下、調査内容です。 0. This Document 簡易ではありますがご質問に該当する事項を調べてみました。ご参考まで
下記のようなシステムでパフォーマンスが良さげな SQLite を使用予定ですが、もっと速いものが無いか確認のため他のデータベースのパフォーマンスを計測してみました。SQL 利用前提ですが、NoSQL が圧倒的な性能を出す場合は検討する必要があるので KVS も確認しました。 データ件数は 1 億件程度、JDBC SQL 利用可能 INSERT、UPDATE はバッチ SELECT は主キーアクセス性能を重視 将来スケールアウトのための分散はありえるが、スタンドアロンで遅いのはだめ データベースのパフォーマンス比較 計測したデータベース データベース名 タイプ 形態 評判 計測についての備考 SQLite RDB 組み込み ※2 おもちゃ、Android標準 JDBC操作 ※1 H2 RDB 組み込み ※2 組み込み最速 JDBC操作 ※1 Derby RDB 組み込み ※2 Java標準で
概要 リレーショナルデータベース(relational database)とは、データベースの構造の一つで、一件のデータを複数の属性の値の組として表現し、組を列挙することでデータを格納していく方式。属性を列、組を行とする表(テーブル)の形で示されることが多い。最も普及している方式で、単にデータベースといった場合はリレーショナルデータベースであることが多い。 リレーショナルデータモデル(関係データモデル)と呼ばれる数学的なモデルに基づいてデータを秩序立てて格納したデータ集合である。一件の登録単位は複数の属性(attribute)の組(tuple)で、同じ属性を持つ組を何件も集めたデータの集合体をリレーション(関係)という。 これは実際には縦横に項目が並んだ表(テーブル)の形で整理される。リレーションが表に相当し、属性を縦方向に並んだ列(column)、組を横方向に並んだ行(row)として表す
関係モデルは、IBMのエドガー・F・コッドが考案し[2]、現在もっとも広く用いられるデータモデルである。データベースの利用者は、クエリ(問い掛け)をデータベースに与え、データを検索したり、変更することができる。 データは表に似た構造で管理されるが、関係(リレーション)と呼ぶ概念でモデル化される。関係(リレーション)は組(タプル、表における行に相当する)、属性(アトリビュート、表における列に相当する)、定義域(ドメイン)、候補キー(主キー)、外部キーなどによって構成される。SQLなどに代表されるデータベース言語(問い合わせ言語)を用いて、関係に対して制限・射影・結合・和・差・交わりなどの関係代数演算(集合演算を含む)ないし関係論理演算を行うことで結果を取り出す。 関係を複数持つことも可能で、互いを関連させることも可能である。 例えばある食品を扱う(架空の)通信販売会社における顧客管理データベ
vagrantでubuntuに入ってたMySQLが日本語文字化けしているのでその対応。 boxファイルはこちらを利用しました。 r8/vagrant-lamp まず現在の文字セットを確認 //mysqlログイン % mysql -u root -p mysql> show variables like "char%"; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database
Introduction The LEMP software stack is a group of software that can be used to serve dynamic web pages and web applications. This is an acronym that describes a Linux operating system, with an Nginx web server. The backend data is stored in MySQL and the dynamic processing is handled by PHP. In this guide, we will demonstrate how to install a LEMP stack on an Ubuntu 14.04 server. The Ubuntu opera
Amazon RDS for MySQL わずか数回のクリックでクラウド内にリレーショナルデータベースをセットアップ、運用、スケール MySQL は、世界で最も人気の高いオープンソースのリレーショナルデータベースです。Amazon RDS によって、MySQL デプロイをクラウド内でより簡単にセットアップ、運用、スケールすることができるようになります。Amazon RDS を使用すると、コスト効率が良く、サイズ変更が可能なハードウェア容量で、スケーラブルな MySQL サーバーを数分でデプロイできます。 Amazon RDS for MySQL によって、バックアップ、アップグレード、ソフトウェアのパッチ適用、パフォーマンスの改善、モニタリング、スケーリング、レプリケーションなど、時間を要するデータベース管理タスクを管理することで、お客様はアプリケーション開発に集中することができます。 A
MYSQLの正規表現による置換について <dammy>○○</dammy> という値を <dammy>××</dammy> に変換したいと考えています。 ○○のなかには、どんな値が入っているか分かりません。 正規表現を使えば、置換できると思うのですが、 MYSQLでのSQLを教えてください。
mysqlは正規表現のREGEXP関数、置換のREPLACE関数があるが、同時に使えない。 なのでPHPを組み合わせて利用する方法を取る。 次のPHPスクリプトでは、field1 に入っている文字列が「;」で終わっていた場合に、その部分だけを削除している。 ————————————————————————– <?php $pattern = “;$”; //正規表現のパターン //mysqlの正規表現を使ってUPDATEの対象になるレコードを取り出す。 $sql = “SELECT field1 FROM table1 WHERE field1 REGEXP ‘” . $pattern . “‘”; $result = mysql_query($sql) or die(mysql_error()); //sqlを実行 //全て展開 while ($item = mysql_fetch_ar
SELECT、DELETE、または BIGINT などの特定の語は、テーブル名やカラム名などの識別子として使用するために予約されており、特別な取り扱いが必要になります。これは、組み込み関数の名前にも当てはまる場合があります。 セクション9.2「スキーマオブジェクト名」で説明しているように、予約語は、引用符で囲まれている場合、識別子として許可されます。 mysql> CREATE TABLE interval (begin INT, end INT); ERROR 1064 (42000): You have an error in your SQL syntax ... near 'interval (begin INT, end INT)' mysql> CREATE TABLE `interval` (begin INT, end INT); Query OK, 0 rows affe
MySQL Backup: Table By Table Backup With Auto Rotation, For Easy Restoration Of Partial/Full DatabaseHere is a MySQL backup script which can take table by table backups (individual backup files of each table of each database) in a compressed format. It also provides an automatic rotation of old backup files. The backup script handles innodb and myisam tables separately. You have to set the follow
A bash script to backup mysql databases, with separate schema and plain-text dump files (INSERT commands) for each database. Makes it easy to restore individual databases or copy them into dev/test servers. Keeps 30 days worth of backups in separate YYYY-MM-DD directories. Also dumps the mysql grants to a separate file ‘mysql-grants.txt’, and creates a sometimes conveniently useful ‘mysql-create-d
MySQLのバックアップを行うには、大きく mysqlhotcopy を使う方法と mysqldump を使う方法があります。 mysqlhotcopy はテーブルをロックしてデータベースのファイルがあるディレクトリをそのままコピーする方法です。 ただし、MyISAM と ARCHIVE テーブルでのみ利用可能なのでInnoDBを使っているテーブルはバックアップ不可能です。 mysqldump はデータベースの内容をSQLファイルに出力する方法です。 mysqldumpによるバックアップはコストも高く、復元にも時間がかかるようなので、InnoDB以外を使っている場合で同じサーバで復元する場合はmysqlhotcopyを使ったほうがいいかもしれません。 ただ、バックアップファイルの扱いやすさはmysqldumpに利があるかと思います。(テキストエディタで中身確認できますしね。) さて、今回
« MySQL のクエリ最適化における、もうひとつの検証方法 | メイン | MySQL (InnoDB) に直接アクセスしてタイムライン処理を高速化する話 » 2008年06月09日 フレンド・タイムライン処理の原理と実践 MySQL (InnoDB) に直接アクセスしてタイムライン処理を高速化する話に続きます。 Twitter が注目されるようになって久しい今日この頃ですが、友人の投稿を時系列に並べて表示する、というのは、Twitter に限らず Mixi の「マイミクシィ最新日記」やはてなブックマークの「お気に入り」等、ソーシャルなウェブサービスにおいては一般的な手法です。ですが、この処理 (以下「フレンド・タイムライン」と呼ぶ) は、一見簡単そうに見えて、実装には様々な困難が伴います。本記事では、「フレンド・タイムライン」を実現する、プッシュ型とプル型の二種類の手法について、その原
(記事が長すぎたので前編・中編・後編に分けました) 僕ももう、リストラされそうなとあるおっさんなんですが、先日Webサービスを公開しました。 きっかけになったのはこの記事です。 自分でWEBサービスを作りたいと思っている人へ http://anond.hatelabo.jp/20101203150748 こんな事できたら良いなぁと思っていると、他にもやっている方たちがいました。 たった2日で製作されたWebサービス「お部屋晒し」って? http://matome.naver.jp/odai/2131952812556433001 WEBサイトを発注してみた。 http://anond.hatelabo.jp/20120318122617 Rails3 と jQuery で、真面目にオシャレなエロサイトをつくってみました - h300 http://d.hatena.ne.jp/inouet
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く