タグ

2014年8月28日のブックマーク (19件)

  • VirtualBoxのスナップショットを簡単に管理できるツールを書きました。GO言語で。 - (ひ)メモ

    VagrantではSahara pluginを使うことで、VMの状態を以前の状態に巻き戻すことができます(sandobx mode)。 VMの中でいろいろいじっている際に変更前の状態に戻せるのはとても便利なのですが、Saharaでは戻せるチェックポイントをひとつしか作れません。 自分の場合、深遠なChefのレシピを書いている過程で、戻せるポイントを何個か置きたくなることがよくあります。 さて、VagrantのバックエンドとしてVirtualBoxを使っている人は多いかと思います。 バックエンドがVritualBoxの場合、SaharaのsandboxはVirtualBoxのsnapshotを使って実現されています。 VirtualBoxのsnapshotはひとつだけでなくいくつでも作ることができます。 CUIでVirtualBoxの操作(snapshotを作ったり)をするには、vboxma

    VirtualBoxのスナップショットを簡単に管理できるツールを書きました。GO言語で。 - (ひ)メモ
  • Dockerで非エンジニアでも開発環境を上げ下げできる、mirageというツールを作りました - KAYAC engineers' blog

    いやー今年もISUCONの予選参加募集がはじまりましたね! 昨年は出題側だったので胃が痛かったですが、今年は参加側ですので大変楽しみにしております。@acidlemonです。 Docker使ってますか? さてみなさん、Docker使ってますか? 使ってる? 使ってない? ぼくは使ってませんでした。えー今どきBlue-Green Deploymentやってないの? Immutable Infrastuctureじゃないの? と言われそうですが、世の中にはいろんなしがらみとかもあってなかなか簡単にエイヤーでコンテナに移行できるわけでもないのは皆さんなんとなく感じているのではないでしょうか。 とはいえ、最近これだけ話題になっているDockerですので、そろそろ使ってみたいなぁ…ということで、まずは開発環境をDockerで上げられるようにしました。 Dockerでコンテナを作るときには2つのアプロ

    Dockerで非エンジニアでも開発環境を上げ下げできる、mirageというツールを作りました - KAYAC engineers' blog
  • クックパッドにおける最近のActiveRecord運用事情 - クックパッド開発者ブログ

    インフラストラクチャー部の成田(@mirakui)です。 Rails の OR マッパーである ActiveRecord ですが、みなさんどのように運用していますか? ActiveRecord を使うと、 SQL を直接扱うことなく、抽象化された表現で RDB にアクセスできるので、アプリケーションの開発効率という観点ではメリットが大きいです。 一方で、 ActiveRecord が駆使されているアプリケーションをサーバに配置してプロダクションとして運用する立場からすると、いくつかの問題に突き当たります。 まずはクックパッド体アプリケーションにおける、最新の rake stats をご覧ください。 +----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC

    クックパッドにおける最近のActiveRecord運用事情 - クックパッド開発者ブログ
  • JavaScriptの基礎 - 第1章 JavaScript言語仕様 - [SMART]

    式 プログラミング言語には様々な種類の式があります。例えば、前節でコンソールに入力した「1 + 1」は算術式です。算術式は + や - といった演算子と呼ばれる記号を使い、加算や減算などの演算を行います。 上記は数学の式と同じで、10に20を加算しています。 コンソールで確認しよう 10 + 20 出力結果 30 代入式 次に紹介するのは代入式です。代入式は代入演算子( = )を使い、左辺の変数に右辺の値を代入します。 上の式を実行すると、valの値は10になります。 コンソールで確認しよう val = 10 出力結果 10 代入式は文字列も使えます。 コンソールで確認しよう s1 = "Hello world" 式は代入の際に計算することもできます。次の式では、xに5を代入し、100にxを足し、その結果をyに代入しています。xは5になっているので、yには「100 + 5」の結果の値105

    JavaScriptの基礎 - 第1章 JavaScript言語仕様 - [SMART]
  • 発表資料 | LL Diver

    パネルディスカッション ○○ as Code 高野祥幸 前佛雅人 @zembutsu 吉田賢造 司会:佐々木健 @sasakipochi エディタ対決(仮) 司会:前田薫 @mad_p (レピダム) Emacs: 吉田昌平 @syohex Vim: kaoriya @kaoriya Atom: mizchi @mizchi (Quipper) Sublime Text: 平出弥彦 @chikatoike プレゼンテーション 高丸翔英 @takamario:Angular.jsで構築したnoteに関して 古川陽介 @yosuke_furukawa:それでもNode.jsをやる あんちぽくん @kentaro (GMOペパボ):ペパボのエンジニア新人研修 久井亨 @torus:HerokuでGauche (あるいは、好きな言語何でも) 斉藤寛 @ypsitau:Guraプログラミング言語の紹介

  • golang の net/http/pprof を触ってみたメモ : sonots:blog

    golang の net/http/pprof を触ってみたメモ : sonots:blog
  • VagrantでWindowsのBoxを無料で構築する - つばろぐ

    Windowsに怪しげなツールをインストールしたり、Powershellコマンドのテストを行ったりする際に、Windowsの仮想マシンを作成し、検証を行うことがあります。 通常であればVirtualBoxやVMWareのような仮想化ツールを使うところでしょうが、今回はVagrantを使ってみます。 Vagrantについては過去エントリにて紹介していますので、そちらをご覧下さい。 Vagrantの導入や使用についての備忘録 - つばろぐ WindowsのBoxを作る VagrantでWindowsを動かすには、仮想マシンの基となるBoxファイルが必要になります。 テンプレートのようなものですね。 しかしWindowsのBoxファイルは、LinuxOSよりも作り方が難しいです。 WindowsのBoxファイルの作り方は、下記の記事がとても参考になります。 Vagrant で作ったり壊したりでき

    VagrantでWindowsのBoxを無料で構築する - つばろぐ
  • Loading...

    Loading...
  • Vagrant で VirtualBox 上の CentOS 7 へ固定 IP を設定 - なんとなくな Developer のメモ

    はじめに Vagrant を使って VirtualBox 上で CentOS 7 を起動する際に、固定 IP を設定しようとするとエラーが発生しました。 Vagrant 1.6.3 VirtualBox 4.3.12 for Windows hosts Vagrantfile ・・・ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "centos7" # ゲスト OS 間の通信用に固定 IP アドレスを設定 config.vm.network "private_network", ip: "192.168.100.11", virtualbox__intnet: "intnet" end CentOS 7 の Box を centos7 という名称で Vagrant へ登録済みです。 なお、vir

    Vagrant で VirtualBox 上の CentOS 7 へ固定 IP を設定 - なんとなくな Developer のメモ
  • デプロイツールfabric+cuisineで冪等性保証 - Qiita

    はじめに Python製のデプロイツールfabricは,シェルスクリプトをPythonで便利に利用できるようにしたものであり,Chef-Soloライクな構成管理を容易に行うことができる.また,Chefの大きな特徴の1つである冪等性だが,fabricのラッパーであるcuisineを用いることで,保証することができる. 非常にシンプルでChefなどと比較すると学習コストも小さく,さらに対象となるマシンにのみインストールすればよいので手軽に導入できる.今回はfabricを用いてvagrantへdotfilesを配置するちょっとしたスクリプトを書いてみた. インストール 以下のコマンド一発でインストールできる.

    デプロイツールfabric+cuisineで冪等性保証 - Qiita
  • Amazon WorkSpacesが東京リージョン&日本語対応しました! | DevelopersIO

    ども、大瀧です。 先ほど、AWSの仮想デスクトップサービスWorkSpacesの東京リージョンでの提供がスタートしたようです。同時に、東京リージョン限定で日語サポートがつきました。早速試してみたのでレポートします。 設定手順 手順自体は他のリージョンと変わらず、ときおり[Languages]という言語設定を選択する項目が出てきます。まずは、Management ConsoleでWorkSpacesの画面を表示します。リージョン一覧からAsia Pacific(Tokyo)を選択し、[Get Started Now]リンクをクリックします。 セットアップ手順を聞かれますので、今回は簡単に試すことができる「Quick Setup」で進めます。項目右側の[Launch]ボタンをクリックします。 続いて作成するマシンの構成を選択します。今回は日語版Officeの様子を確認したかったので、[St

    Amazon WorkSpacesが東京リージョン&日本語対応しました! | DevelopersIO
  • CDN化をnginxの設定で行う方法 - Qiita

    瞬間的な高負荷に耐える為にアプリケーション側を変更せず、nginxの設定のみで対応する方法 CDNとは、「Contents Delivery Network」といわれるもので、最適なネットワークを経由してWebコンテンツをキャッシュし効率的に配信できる物です。Amazon(AWS)では「CloudFront」というサービスがあります。他にも「Akamai」などが有名です。 前提条件 バックエンドにProxyするCMSを使う(ここではPlone) (画像等も静的なデータではなくCMSから配信) 今回の実験 CDNには、Amazon(AWS) CloudFrontを用いた nginx - Varnish - CMSアプリ(Plone(複数台))という構成(当社が普段から使っている構成) 画像やファイルなどのみをCDNから配信させる 画像やファイルのオリジナルは、Plone内つまり、同じngin

    CDN化をnginxの設定で行う方法 - Qiita
  • 【Go言語】可変長のioをReadしたい【bufio.Scanner】【io.Rader】 - DRYな備忘録

    io.Readerを使った読み込み ファイルの読み込みやTCPコネクションのメッセージ読み込みに、io.Readerインターフェースを実装したstructのReadメソッドを使う 以下その例 package main import "fmt" import "os" func main() { file, _ := os.Open("sample.txt") bufferSize := 4 buf := make([]byte, bufferSize) n, e := file.Read(buf) fmt.Println("LENGTH READ:", n, "ERROR:", e) fmt.Println("---RESULT---\n", string(buf)) } 問題 上記の例では、読み込んだトークンを流し込むバッファー([]byte型)を自分で定義して、ReaderのReadに

    【Go言語】可変長のioをReadしたい【bufio.Scanner】【io.Rader】 - DRYな備忘録
  • AWS Summit 2014 Tokyo「Amazon Kinesis Deep Dive」レポート | DevelopersIO

    こんにちは、虎塚です。 先月のAWSサミットのセッション「Amazon Kinesis Deep Dive」をタイムシフト視聴しましたので、レポートします。 講師は、大谷晋平さん(アマゾン データサービス ジャパン)と堀剛さんです。 AWS Summit Tokyo 2014 開催レポート動画・資料一覧 | アマゾン ウェブ サービス(AWS語) Amazon Kinesis Deep Dive (AWS Summit Tokyo 2014 | TA-09) はじめに AWSサミット東京の初日、Kinesisの東京リージョンローンチが発表された。 これに合わせて、Kinesisを実際に開発しているDevelopment Managerの堀さんを招待した。 Kinesisの概要や事例を大谷さんから紹介した後、Kinesisにかける思いや、実際にどういったところで使えるのかを堀さんから聴

    AWS Summit 2014 Tokyo「Amazon Kinesis Deep Dive」レポート | DevelopersIO
  • 【Ruby】AWS S3へのクライアント側暗号化用のコマンドを作成しました - 頭の整理

    AWS SDK for Rubyを使ってS3へファイルをクライアント側で暗号化(Client Side Encryption)してアップロード,暗号化したファイルを復号化してダウンロードするためのコマンドを作りました.使う際はRubyGemsからインストールしてください. 前提として理解しておいてほしい情報と簡単にですが使い方をまとめました. 前提条件 Credentialsの設定 access_key_idやsecret_access_key_idなどのAWSCredentialsはEC2インスタンスのロールや,環境変数などにすでに与えられている必要があります. この辺を参考にしてください. http://docs.aws.amazon.com/AWSSdkDocsRuby/latest//DeveloperGuide/prog-basics-creds.html http://doc

    【Ruby】AWS S3へのクライアント側暗号化用のコマンドを作成しました - 頭の整理
  • Railsをバージョンアップし続けるために必要なこと - Qiita

    当は、RubyWorld Conf辺りでこういう内容も交えてなんか話せればいいなあと思ってたんだけど、CFPに落ちたのでQiitaにポエムを書いてみました。 Railsはそれなりに学習コストはかかりますが、慣れてくるとデフォルトで便利なものが揃ってるしサードパーティライブラリも豊富で、未だに最も便利なWebアプリケーションフレームワークの一つだと思います。 なので、最近のスタートアップ界隈ではRailsで開発をスタートする、という話をよく耳にします。(個人の感想です) しかし、Rails体に新しい要素をガンガン取り入れてくるので、バージョンアップのサイクルはかなり早く、それに追従していくのはそれなりに大変です。 Railsで開発をする場合には、一旦レールに乗ったらプロダクトが死ぬまで走り続ける覚悟が必要です。(時速60km以下になったら爆発する) それを最初に理解しておかないと、あっ

    Railsをバージョンアップし続けるために必要なこと - Qiita
  • Gruntを使用したWordPressプラグインの開発 | Firegoby

    先日発売されたプラグインなんですが、実は執筆の時点で600ページ以上ありまして、編集の段階でボツになった原稿が大量にあります。笑 今回はボツになった原稿の中から、Gruntを使ったプラグイン開発というネタの原稿を放出します。 まあ最近はgulpのほうが…って声もあるでしょうが、そのへんはお好みで。 サイトの拡張性を飛躍的に高める WordPressプラグイン開発のバイブル Gruntとは? スマートフォンなどの普及により私たちが制作するウェブサイトのフロントエンド部分は、非常に速いスピードで高度化しています。 それにともなってTwitter BootstrapやFoundation、Sassなどのフレームワークが登場し、CSSJavaScriptの開発作業そのものも複雑で面倒なものとなってきました。 Gruntとは、これらの設定作業やビルド作業、テストなどを自動化するためのツールで、W

    Gruntを使用したWordPressプラグインの開発 | Firegoby
  • Goで使ってみたライブラリとツールの感想をそこはかとなく書くよ - 絶品ゆどうふのタレ

    会社の方でRDS TestRunnerというツールをGoで実装したわけですが、今回の実装にあたってGoの色々なライブラリ/ツールを見て回った印象として、まだまだ群雄割拠状態だなーという感じでした。 これからスタンダードが決まっていくのでしょうが、今後も考えて各ライブラリ等を利用した感想を共有しておくのは有益そうなので、書き残しておくことにします。 ちなみに、今回はかなりの率でHashiCorpのmitchellhさん作のライブラリやツールを利用していますw なので、ほぼこの方の紹介になってますね。。。 コードもterraformなどの実装をかなり参考にさせていただきました。 やはりGoでのプロダクト経験が豊富な人の実装は、色々参考になりますね(^^ゞ ライブラリ HCL (HachiCorp Configuration Language) 今回のConfig書式とそのパーサライブラリには、

    Goで使ってみたライブラリとツールの感想をそこはかとなく書くよ - 絶品ゆどうふのタレ
  • RESTとJSON、スキーマ定義について思うところ

    mozaic.fm #7 RESTや#mozaicfm REST を聴いての感想、それから「Web+DB vol82のWebAPIデザインの鉄則」に触発されたので書こうと思う。 REST設計について WebAPIを設計するうえでRESTが重要であることは周知のとおりである。 “Constraints are liberating”「制約は自由をもたらす」 @t_wadaさんがおっしゃっているように、RESTを前提にすれば、「アーキテクチャとしてもそうだし、アプリケーションフレームワークも「適切な制約」を設けることで設計のコストが下がる」という大きなメリットが生まれる。 しかし、相変わらずリソース設計やらインターフェース設計やらで悩んでおられる方も多いと聞く。 その一方で個人的には適切なフレームワークを使えばREST設計で悩まなくてもよいはず(※3)という思いもある。 インターフェース設計な