サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ドラクエ3
www.saintsouth.net
はじめに AWS LambdaでNode.js 6.10が利用できるようになりましたね。以前の投稿でPromiseの使い方について紹介しました。今回、DynamoDBからデータを取得する方法をはじめ、非同期処理を直列的・並列的に実行する方法をパターン化してみました。 Promiseを使用したひな型 トップレベルではタスクは必ず直列に実行されるようにします。というのは、初期化→なんらかの処理→レスポンス、という流れは不変のはず、という観点から。私としてはすべての処理をタスクとして扱い、PromiseLikeにしてしまう考え方で進めたいと思います。タスク間のやり取りには処理全体を通して利用できる変数stashを利用することにします。このstashは個々のタスクの引数として渡され、またタスクの実行結果として返されるようにします。この考え方で作成したひな型は下記の様になります。 ソースコード 'u
はじめに このエラーは、「仮想メディアマネージャー」に登録済みのメディアを追加しようとしたときに発生します。これの解消方法を紹介します。 元の VM のディレクトリを別の場所に丸ごと移動した場合 VM VirtualBox から登録済みの VM を削除してから、仮想メディアマネージャーで移動前のディスクを削除します。 登録済み VM の削除 もし、手動で移動した VM が「VM VirutualBox マネージャー」の左側のリストに載っているなら、まずはそれを削除します。「すべてのファイルを削除」、「除去のみ」のどちらでも構いません。 登録済みメディアの削除 今回のエラーの原因は、「VM VirutualBox マネージャー」からは削除されているのに、メディアの情報が残っていることが原因です。メディアの登録情報は「仮想メディアマネージャー」で確認・操作できます。 メニューで「ファイル」→「
はじめに Django はフルスタックのWebアプリケーションフレームワークです。アプリケーションデータの永続化はデータベースサーバーなどを使います。フレームワークではこれをモデルで実装します。開発を進めていくと、途中でモデルの修正が必要になる事があります。Django では直接 SQL 文を使うことなく、テーブル定義を更新することができます。 今回、Django 1.10 での手順を紹介します。 初版のマイグレーションファイル作成と適用 モデルを実装してから初めてデータベースサーバーにテーブルを作成する場合、まずマイグレーションファイルを作成します。settings.py に記述したアプリケーションを Django が精査して、自動的にマイグレーションファイルを作成してくれます。 (venv35)$ python manage.py makemigrations 作成されたマイグレーショ
表2. DynamoDBテーブルに保存されるデータのイメージ handlerにベタ書き スケルトンをもとにゴリゴリ実装を進めたコードです。 'use strict'; const AWS = require('aws-sdk'); const client = new AWS.DynamoDB.DocumentClient(); exports.handler = (event, context, callback) => { // validation. if(!('message' in event && event.message !== '')) { callback(JSON.stringify({result: 'ng'}, null)); return; } const todo = { message: event.message }; // fetch current c
はじめに JS によるクライアントサイドのフレームワーク界隈では、Backbone.js や AngularJS、vue.js などいろいろと選択することができます。どのフレームワークを選択するかでにぎやかな界隈です。 今回は React を使って、Flux アーキテクチャに沿って簡単なカウントアップアプリを作ってみます。また、API と通信する部分も実装してみて、構成を確認したいと思います。 具体的なアプリの見た目は次の図のようなシンブルなものです。 次の要件を満たすようなアプリケーションを作ります。 ボタン「Countup」をクリックすれば数字が 1 つ大きくなるボタン「Reset」をクリックすれば 0 に戻る複数のクライアントでカウントを共有できる また、Heroku へのデプロイも実際にやってみます。この投稿の内容で作成したアプリは http://ssdn-heroku-noder
新しいバージョンの Python のインストールについて 目的のバージョンの Python ソースコードをダウンロードしてビルドします。 OS 標準の Python 環境には影響が出ないよう、新たに追加する Python のホームを /opt/Python2.7/ や /opt/Python3.5/ のように、/opt/ 以下にインストールする事にします。 INSTALL_DEST_DIR="/opt" 依存ライブラリのインストール Python のビルドにはいくつか依存するライブラリが必要です。 CentOS5 の場合 CentOS5 64ビット版の yum コマンドは余分な 32 ビット版のパッケージもインストールすることがありますので、事前に余分な 32 ビット版のパッケージをインストールしないように yum の設定を調整します。具体的には、「multilib_policy=best
はじめに CentOS6 で比較的新しいソフトウェアを実行しようとすると、 /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by <new software>) のようなエラーが発生する事があります。これは CentOS6 にインストールされているライブラリが古く、ソフトウェアが要求するバージョンと合わないためです。 今回、libstdc++ ライブラリを例にとって、CentOS6 に新しいバージョンのライブラリをインストールする方法を紹介します。 インストールされている libstdc++ の確認 インストールされている libstdc++ に組み込まれているバージョンを確認します。 $ strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX GLIB
はじめに Django アプリを uWSGI でサービスとして起動して、Nginx でアクセスできるようにする手順をまとめました。 Nginx のインストールはこちらの投稿を、Python の venv 環境を構築できるようにする手順はこちらの投稿を参照してください。 なお、Linux ユーザーはホストの設定を操作する、wheel グループに属するユーザー user1 と、Webアプリケーションを管理する、nginx グループに属するユーザー webmaster の 2 つのアカウントを切り替えながら作業を進めます。これらのユーザーは下記コマンドで登録済みであるものとします。 ホスト管理者 (user1) の領分と、アプリケーション管理者 (webmaster) の領分について、私なりの切り替え方が参考になれば幸いです。 [root]# useradd user1 -G wheel [ro
はじめに Nginx は Web サーバーです。他の有名な Web サーバーに Apache がありますが、違いはプロセス(あるいはワーカー) ベースの処理か、イベントベースの処理か、になります。Nginx はイベントベースの Web サーバーで、同時リクエストの処理を得意とします。一方で、レスポンスまでに時間がかかるような、サーバーサイドで実行するプログラムのハンドリングは苦手です。このようなスクリプトは、FastCGI プロセスや uWSGI プロセスに中継して実行してもらうようにすることで、Nginx がボトルネックにならないように構成する必要があります。Nginx に uWSGI を連携させる手順についてはこちらの投稿を参照してください。 今回、Nginx を CentOS7 にインストールする手順と、PHP スクリプトを FastCGI で実行できるようにする PHP FPM の
Webサーバー nginx における SSL証明書設定の安全性向上 ~SSL Server Test で A+ 判定を目指して~ はじめに SSL証明書に使われる暗号化方式は設定時には安全と判断しても、日が経ってから脆弱性が発覚するものです。 脆弱性が発覚した暗号化方式は以後使えなくなるよう、無効にする必要があります。 今回、CentOS7 + Nginx における設定の調整方法と、安全性の確認には QUALYS SSL LABS の SSL Server Test ツール (https://www.ssllabs.com/ssltest/index.html) による安全性の確認を紹介したいと思います。 前提として、CentOS7 + Nginx にはすでに SSL証明書がインストール済みで、https://~ でアクセスできる状態にしておいてください。こちらの投稿を参照してください。
はじめに CentOS7 のデフォルトのメール送信サーバー (MTA) は Sendmail です。これを Postfix に置き換えます。ホストのローカルから外部へメールを送信したときの送信元ホスト名(ホストパート、@より後ろの部分)もカスタマイズします。 インストール 標準リポジトリからインストールできます。また、簡単なメール送信の動作確認で mail コマンドが使えるように、mailx パッケージもインストールしておきます。 $ sudo yum install postfix mailx 基本設定 Postfix がメール送信サーバーとして外部のメールサーバーに提示するホスト名は、デフォルトでは CentOS のローカル名になります。例えば、CentOS のホスト名が「host1」の場合、「host1.localdomain」が外部のメールサーバーに提示されます。 また、このホスト
はじめに 自前で構築した DNS サーバーを AWS Route53 に移行したり、新規に構築したオンプレミス環境に対して AWS Route53 に DNS サーバー機能を任せたりするときの手順を紹介します。 準備 IPアドレスの逆引きを自分で管理するには、回線プロバイダーから逆引きについて委譲を認められている必要があります。 今回は例として 203.0.113.144/28 (16IP) が割り当てられていて、回線プロバイダーからは逆引き用のゾーン「144/28.113.0.203.in-addr.arpa.」をこちらで準備するよう伝えられており、203.0.113.146 に srv1.example.com を、203.0.113.147 に srv2.example.com をそれぞれ登録する場合について紹介します。 もし割り当てられたグローバルIPアドレスの数が 256 個以上
このページを最初にブックマークしてみませんか?
『www.saintsouth.net』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く