タグ

ブックマーク / dev.classmethod.jp (27)

  • 突撃!隣の開発環境 パート1 【Wantedly編】 | DevelopersIO

    こんにちは!おおはしりきたけです。今回は突撃!隣の開発環境というタイトルでイケてる開発会社さんの開発環境についてインタビューさせてもらいました。第1弾として、iOS オールスター勉強会でベストプレゼンターに輝いたWantedlyの杉上さんとRubyエンジニアの森脇さんにお願いしました。Wantedlyさんは既に@yimajoさんがQiitaで連載しているiOSアプリ開発の現場で訊いてみた!シリーズでiOSの開発現場についてのインタビューはされており一部重複してしまっている部分もありますが、ご了承下さい。 突撃!隣の開発環境とは 技術事例やノウハウなどは、ブログや勉強会などで共有されることが多いと思います。しかし、各社の開発環境や開発体制などは意外と共有されていないこと多いと思います。ノウハウの流出になるかもしれませんが、それ以上に、より良い開発を目指している会社さん同士で情報交換を行い、良

    突撃!隣の開発環境 パート1 【Wantedly編】 | DevelopersIO
    skyriser
    skyriser 2015/05/12
    突撃したい
  • EC2の新しいリザーブドインスタンスのオプションが発表 | DevelopersIO

    ウィスキー、シガー、パイプをこよなく愛する大栗です。 日リザーブドインスタンス(Reserved Instance:RI)に新しい料金体系が発表されました。内容を確認すると注意すべき点があるのでまとめてみました。 2014/12/3 07:40 従来のRI購入が可能である事を追記 記事で算出しているAWS利用価格は2014/12/3 7:00 JSTの料金表を元に計算しています。 変更内容の概要 オプションの種類 今までのRIは、期間が2種類、使用量が3種類あり、組み合わせで6種類のオプションがありました。 1年 軽度使用 1年 中度使用 1年 重度使用 3年 軽度使用 3年 中度使用 3年 重度使用 これからは、期間が2種類、支払方法に3種類、組み合わせで5種類(3年の場合は支払方法が2種類)のオプションになります。EC2のPrice Listページ(英語)は新体系にアップデートされ

    EC2の新しいリザーブドインスタンスのオプションが発表 | DevelopersIO
    skyriser
    skyriser 2014/12/03
    金出せるなら All Upfront だよなあ...
  • Amazon Redshift DB開発者ガイド – テーブル設計のベストプラクティス | DevelopersIO

    データベース設計を考える上で、あなたが下さなければならない重要な決定があります。その決定はクエリパフォーマンス全体に影響を与える可能性があります。これら設計に関する決定はまた、I/Oオペレーションの数を削減したりクエリを処理するのに必要なメモリを最小化する事でクエリのパフォーマンスに影響を与えるストレージ要件に大きな影響を及ぼします。 テーブル作成の際にクエリのパフォーマンスに最も大きな影響を与えるであろう決定次項は以下のとおりです。 最善のソートキー(sort key)を選択する 最善の分散キー(distribution key)を選択する 最善の圧縮戦略(compression strategy)を選択する 制約を定義する あなたが下す決定は、データベースが行なっている作業の種類に依存して来ます。全ての状況に効果的な『最高のソートキー』は無いのです。 このセクションでは最も重要な設計上

    Amazon Redshift DB開発者ガイド – テーブル設計のベストプラクティス | DevelopersIO
  • Amazon Linuxで最新のDockerを使う + Host networkingを試す | DevelopersIO

    はじめに 5/7に、Docker 0.11がリリースされましたね! が、しかし。amzn yumリポジトリのDockerのバージョンは残念ながら0.9のままです。 $ sudo yum list docker 読み込んだプラグイン:priorities, update-motd, upgrade-helper 利用可能なパッケージ docker.x86_64 0.9.0-2.13.amzn1 Amazon Linuxでも最新のDockerを使いたい!そして新機能を使いたい!なのでやってみました。 最新のDockerを使う 以下の作業は全てrootで行います。まず最新のdockerバイナリ(v0.11)を取得して/usr/bin/dockerに配置し、実行権限を付与します。 # wget https://get.docker.io/builds/Linux/x86_64/docker-lat

    Amazon Linuxで最新のDockerを使う + Host networkingを試す | DevelopersIO
  • Docker Meetup Tokyo #2でLTしてきた:「Docker+serverspecで作るconfigspec CI」 #dockerjp | DevelopersIO

    Docker Meetup Tokyo #2でLTしてきた:「Docker+serverspecで作るconfigspec CI」 #dockerjp はじめに 2014年4月11日(金)に開催されたDocker Meetup Tokyo #2で、「Docker + serverspecで作る configspec CI」というタイトルでLTしてきました。 この内容について、少し詳細に落とし込んだのがこの記事です。拙いところも改善するべきところもいっぱいあるんですが、とりあえず動いたよ、というところで。 イベント中のtweetはTogetterにまとめました。 Docker Meetup Tokyo #2 #dockerjp - Togetterまとめ やりたいこと 結果としてやりたいこと、出来上がるものがこちらの図になります。 configspecとserverspecをRakefile

    Docker Meetup Tokyo #2でLTしてきた:「Docker+serverspecで作るconfigspec CI」 #dockerjp | DevelopersIO
  • WP管理者必見!AWSで構築する新スケーラブルなWordPress構成〜CloudFront as Reverse Proxy | DevelopersIO

    ちなみに、来CloudFrontとELBは取捨選択するものではなく、両方を使うことでお互いの機能を補完することができます。今回のCloudFront as Reverse Proxy構成でも、Webサーバーの手前にELBを組み合わせることが可能です。 それでは、それぞれの機能について少し詳しく見ていきます。 CloudFrontのキャッシュ機能 CloudFrontの最低限の用語をここで押さえておきます。CloudFrontでは、元のコンテンツを持つWebサーバーをオリジン、オリジンへの振り分けルールをビヘイビアと呼びます。CloudFrontによるキャッシュ動作の流れを以下に示します。 初回アクセス クライアントがCloudFrontのキャッシュサーバー(エッジロケーション)にアクセス キャッシュサーバーは、ビヘイビアを確認しオリジン(WordPressのWebサーバー)にアクセス オ

    WP管理者必見!AWSで構築する新スケーラブルなWordPress構成〜CloudFront as Reverse Proxy | DevelopersIO
    skyriser
    skyriser 2014/04/15
    こないだやったけどとても便利。
  • ELBがアクセスログを出力できるようになりました! | DevelopersIO

    はじめに ついにELBがアクセスログを出力できるようになりました!(Elastic Load Balancing Announces Access Logs) ということでやってみました! 設定 [Load Balancers]画面を開き、設定したいELBを選択します。画面下部の[Description]タブの一番下に[Access Logs]という項目があります! なおこの項目は新しいManagement Consoleでしか表示されません。以前のManagement Consoleを使用されている場合は、画面右上に青い吹き出しのようなアイコンが表示されていますので、クリックし「Try the new design」の[Click here]リンクをクリックすると、新しいデザインのManagement Consoleに切り替わります。 さて、[Access Logs]の[Edit]リンク

    ELBがアクセスログを出力できるようになりました! | DevelopersIO
    skyriser
    skyriser 2014/03/07
    お。すばら。
  • EC2インスタンス 時間単価選手権 | DevelopersIO

    よく訓練されたアップル信者、都元です。みなさん、安いの好きですよね! ボクも好きです! さてその昔、EC2は特殊用途でない限り、m1シリーズを使っておけば大体OKでした。スペックをストレージ側に寄せたいとか、メモリ側に寄せたいとか、そういう要件はそんなに多くないため、いわゆる「平均的な」スペックとしてm1シリーズが大変重宝されていました。っていうか今も重宝されてます。 そんな状況であるため、インスタンスのサイジングというのはt1.microの検証用からはじまり、あとはm1.small, m1.medium, m1.large, m1.xlargeと大きくしていけばいいんだよね。まぁ、この順で強く、そして高くなって行くんでしょ。というのが世間一般的なゆるーい認識であるかと思います。 しかし最近は「m1は一世代前のスペックで、m3シリーズこそが現行世代なんだ」とか、「c3シリーズのコスパがマジ

    EC2インスタンス 時間単価選手権 | DevelopersIO
    skyriser
    skyriser 2014/02/25
    m3インスタンスどんどん増えてた。
  • Amazon CloudFrontとRename Distributionパターンの実装 | DevelopersIO

    Amazon CloudFrontの使いどころ Amazon CloudFrontはオリジンサーバの代わりにコンテンツをキャッシュして配信してくれるサービスです。キャッシュの入っているサーバをエッジサーバと言います。東京リージョン内では、東京と大阪にエッジロケーション(エッジサーバが置いてある場所)があります。全世界で数十拠点あり、1つのオリジンサーバから全世界に配信することができます。オリジンサーバには、S3かWebサーバの載っているEC2インスタンスかAWS管理下かどうかに関係なくドメイン名を指定することができます。 キャッシュを指定する場所 Webサーバがコンテンツをユーザに届ける際、どの程度キャッシュするか指定します。CloudFrontを使う場合、オリジンサーバのキャッシュ時間を引き継ぐか、独自に設定することができます。キャッシュする時間が長ければオリジンサーバへの負荷はもちろん

  • AWS re:Invent2013参加レポート #12 EC2 C3新インスタンスファミリーを検証してみた | DevelopersIO

    ども、大瀧です。 日のKeynoteで発表されたEC2の新インスタンスファミリー、C3をいろいろいじってみました。 C3インスタンスファミリー概要 以下のインスタンスタイプの紹介ページの通り、C3ファミリーはIvy Bridge世代のCPUをはじめとする、イマドキのハードウェアが搭載された物理ホストで実行されるEC2インスタンスです。 C3 instances are the latest generation of compute-optimized instances, providing customers with the highest performing processors and the lowest price/compute performance available in EC2 currently. Amazon EC2 Instances それぞれの特徴的なハ

    AWS re:Invent2013参加レポート #12 EC2 C3新インスタンスファミリーを検証してみた | DevelopersIO
    skyriser
    skyriser 2013/12/09
    SR-IOV対応してたんだ。
  • Ember.js | Developers.IO

    Ember.js入門 シリーズ Component – Ember.js入門(9) 記事 2013年10月04日 渡辺 修司 15 前回のエントリーではViewを紹介しましたが、今回はComponentを紹介します。 Componentとは? 非常にざっくりとした言い方をするならば、Ember.jsのComponentは独自のタグを定義する機能です。 […]

    Ember.js | Developers.IO
    skyriser
    skyriser 2013/11/22
    えんばー楽しそう。
  • RequireJSでTwitter Bootstrap(jQuery)を非同期ローディングしてみる | DevelopersIO

    こんにちは、すどーです。 RequireJSでjQueryやjQueryプラグインの非同期ローディングを試してみました。 最近は大規模な構成になると、「ちぢめる、まとめる、かためる(minify, combine, compress)」のが主流のようです。 ですが小中規模な構成や、依存関係にあるフレームワークなども多くあるので、簡単な使い方だけでも覚えておくと便利かと思います。 RequireJS: http://requirejs.org/ RequireJS API: http://requirejs.org/docs/api.html RequireJSの主な特徴 モジュール化(AMD APIをサポート) 非同期ローディング OPTIMIZERによる最適化 1. モジュール化(AMD APIをサポート) AMD(Asynchronous Module Definition)はComm

  • CORS(Cross-Origin Resource Sharing)によるクロスドメイン通信の傾向と対策 | DevelopersIO

    CORS(Cross-Origin Resource Sharing)って何? CORS(Cross-Origin Resource Sharing)は、その名の通り、ブラウザがオリジン(HTMLを読み込んだサーバのこと)以外のサーバからデータを取得する仕組みです。各社のブラウザには、クロスドメイン通信を拒否する仕組みが実装されています。これは、クロスサイトスクリプティングを防止するためです。Aというサイトに訪問したのに、Bというサイトに向けて個人情報を送っていたというのは困りますよね。例えば、オリジンから読み込んだHTML内のJavaScriptでJSONデータを読み込むとしましょう。JSONデータが同じサーバにあれば普通に読み込めますが、別のサーバにある場合は読み込めません。まぁ実際のところはJSONPという仕組みを使ってできちゃったりしますが、抜け道的なやり方で使われていました。CO

  • AWS ELBの社内向け構成ガイドを公開してみる 負荷分散編 – Cross-Zone Routingを踏まえて | DevelopersIO

    ども、大瀧です。 最近、お客さまからの問い合わせからElastic Load Balancing(ELB)の負荷分散について調べ社内資料としてまとめる機会がありました。せっかくなので、ブログ記事として公開してみます。内容は随時アップデートしますので、ツッコミ・ご指摘があればぜひお願いします! 負荷分散の仕組み ELBは、クライアントのリクエストを受け付けEC2インスタンスにトラフィックを転送するために、2種類の負荷分散を組み合わせて動作します。 スケーラビリティと冗長性のために、ELBはロードバランサの機能を提供するノードを複数動作させるはたらきがあり、クライアントから複数のノードへアクセスを分散させるためにDNSラウンドロビン、ノードからEC2インスタンスへのトラフィック転送を分散させるためにLeast Connsという手法を用いています。 DNSラウンドロビン DNSラウンドロビンはそ

    AWS ELBの社内向け構成ガイドを公開してみる 負荷分散編 – Cross-Zone Routingを踏まえて | DevelopersIO
    skyriser
    skyriser 2013/11/13
  • AWS特集 の記事一覧 | DevelopersIO

    Amazon が所有する AWS Systems Manager ドキュメントの一覧を AWS CLI で取得して眺めてみた

    AWS特集 の記事一覧 | DevelopersIO
    skyriser
    skyriser 2013/09/26
    クラスメソッドさんの記事はとてもお世話になってます。
  • Amazon EC2 Eメール送信ベストプラクティス | DevelopersIO

    ども、大瀧です。 EC2からEメールを送るという案件、たくさんありますよね。そして結構な確率でトラブるんですよね(涙目)。そんな苦い経験をベストプラクティスとしてまとめてみました。一応技術的なところは網羅したつもりですが、メールセキュリティの専門ではないので、不備や間違いがあればご指摘ください。 では、メール送信トラブルの元凶である、スパムメールとその対策からご紹介していきます。 スパムメールとの闘いダイジェスト Eメールの歴史は、スパムメールとの闘いの歴史と言えます。 不特定多数に送信されるスパムメール(未承諾の広告メール)は、メール受信者に不快な思いをさせるとともに、メールサーバーのメール流量を爆発的に増加させ、長らくメールサーバー管理者を泣かせてきました。 このスパムメールをなんとか撃退しようと、現在では主に以下のような対策が行われています。 1. 送信メールサーバー側のネットワーク

    Amazon EC2 Eメール送信ベストプラクティス | DevelopersIO
  • ELB + PostfixでElasticなMTA(メール受信)システムの構築 – ELB Proxy Protocol Supportの活用 | DevelopersIO

    AWSでメールシステムというと、メールを送信するためのAmazon SESという機能(関連記事 : Amazon SESでSPFとDKIMを用いて高信頼なメールを送る)がありますが、メールを受信する仕組みはMTA on EC2で構築することになります。 一般的なMTAの可用性確保および負荷分散はDNSラウンドロビンで行うことが多いですが、ロードバランサを用いたインテリジェントな負荷分散の構成もレシピとして欲しいところですよね。 そこで今回は、ELB + Postfix on EC2の構成をご紹介します。ポイントは、ELBに"Proxy Protocol Support"を追加する点です。 ELBの新機能として注目されているProxy Protocol Supportですが、アプリケーション側の対応が必要なため具体的な構成例がなかなか出てこない状況なので、ELB Proxy Protocol

    ELB + PostfixでElasticなMTA(メール受信)システムの構築 – ELB Proxy Protocol Supportの活用 | DevelopersIO
    skyriser
    skyriser 2013/08/07
    Proxy Protocolのクソ便利感。
  • インフラエンジニアに贈るAmazon VPC入門 #1 概要とルーティング | DevelopersIO

    ども、大瀧です。6月にNothing's Carved In Stoneの新譜が出ると聞いてテンション上がっている今の勢いを生かし、シリーズものにチャレンジしてみます。 シリーズの目次はこちら 前振り(読み飛ばし可) インフラエンジニアのみなさーん、AWS触ってますかー? 「うちのシステムはAWSを使っていない」、「AWSじゃない国産クラウドを使う予定」など、AWSの認知度は一般にはまだまだ低いのが現状だと思います。しかし、組織のインフラは今後遅かれ早かれ、オンプレミスだけでなくクラウド環境と合わせて付き合っていかなければならないことは明らかですし、先行しているAWS技術が他のクラウド製品のコンポーネントに与えている影響も、実はとてつもなく大きかったりします。 現状、多くのクラウド製品では、クラウドで利用できる機能を説明するときに"●●版S3"、"●●版セキュリティグループ"というように

    インフラエンジニアに贈るAmazon VPC入門 #1 概要とルーティング | DevelopersIO
    skyriser
    skyriser 2013/08/01
    192.168.1.0、192.168.1.1、192.168.1.2、192.168.1.3、192.168.1.255は使用不可
  • インフラエンジニアに贈るAmazon VPC入門 #2 IPアドレスとMACアドレスの管理 | DevelopersIO

    更新履歴 2013/04/15 16:00 ENIの変更(デタッチ/アタッチ)は現状、仮想マシンの1つ目のENIでは不可のため、[ENIとは]の最後の説明と[ENIを変更するユースケース]の該当する説明文を修正しました。 シリーズ2目行きます! 目次はこちら 前回は、AWSのネットワーク機能であるVPCの概要とサブネットの構成とルーティングの基礎を紹介しました。今回は、サブネットに接続する仮想マシン(EC2インスタンス)のネットワーク設定として仮想ネットワークアダプタ、アダプタに付与するIPアドレスMACアドレスに注目していきます。 と、その前に... 今さらではありますが、このブログ記事は筆者が独自に調査、検証したものであり、AWSが公式に公開していない情報である場合もあります。ですので、ブログの内容を業務で利用する場合は自己責任でお願いします。また、調査はAWS Managemen

    インフラエンジニアに贈るAmazon VPC入門 #2 IPアドレスとMACアドレスの管理 | DevelopersIO
    skyriser
    skyriser 2013/08/01
    固定はアカンのでDHCP使えが基本らしい。
  • iOS6 Mobile SafariがAjax POSTでキャッシュする問題を回避する方法 | DevelopersIO

    iOS6出た! iOS6が出来ましたね。社内ではiPhone5を入手した社員がLTEの速度に驚いていました。私はまだiPhone4Sですが、iOS6にして新しい機能を楽しんでいるところです。さて、iOS6にしてSafariの仕様が変わって困ったと言った投稿が海外のフォーラムで挙っています。それも、基的なPOST通信についてです。これは困ったということで、動作を確認して対策方法についてシェアしたいと思います。 どんな時にPOSTをキャッシュする? まずはどんな状況か確認してみたいと思います。 Cache-ControlもExpiresも無い場合 : iOS6 Mobile SafariはPOSTをキャッシュする Cache-Control max-age=0指定 と Expires指定 : iOS6 Mobile SafariはPOSTをキャッシュする Cache-Control: no-