はてなキーワード: EC2とは
その中でこんな部署に配属になったら自分のエンジニア人生が終わってしまう(テクニカルロックイン及び生涯収入的に)ので、会社を辞めるか別部署への再配属願いを出す。規模的には部署が 10 人以下ぐらいで。
この辺に当てはまるものがある部署はもうそれはエンジニア部署じゃなく、ただの SIer 上がりの口だけで何にもできない人間達だから近づかないほうが幸せだと思っている。
去年の今頃は「今年こそはすごいWebサービス作るぞ!!!!!!!!!!!」って意気込んでたのに
なんかもう今日が最終日。
ということでこの12月頭から何か作ろうと考えていて、丁度年末だからということで作った。
前にAmazonの購入金額合計を出すブックマークレットが流行ったけど、それとほぼ同じ。
Amazonの今までの合計金額と、書籍とかPCとかカテゴリごとの合計金額出してグラフにする。
年末だしTwitterで「2014年のKindle購入金額内訳は...でした」とか投稿すれば
みんなつられてアクセスするはず!宣伝しなくても勝手に大ブーム間違いなし!!!!!!!!
って思ってたけど
投稿してもだれもアクセスしてくれない。待っても待ってもアクセス0。
e?嘘でしょ???って思ったら
のはずだったけど今度はrobots.txt見に来るクソbotしかアクセスしてくれない。
虚しさ半端ない。
というかTwitterでURLつぶやくと即効でどこぞやのクローラー巡回してくるんですね。
構成自体はクライアント・サーバサイド共にjs。EC2上でnode.js。
D3.jsのグラフ画像がsvgだからどうにかしてpngにしないとTwitter投稿出来ないのが微妙に面倒だった
投稿時にクライアント側でbase64→canvas→pngにしても良かったけど
商品のカテゴリ取得するためにはProduct Advertising API使うしかなくて
redis上にキャッシュしておいたりwebsocketで適当に進捗伝えたりした。
今回得た経験値としては
あたり。
今年は残念ながら目標不達成だったけど、いい最終日の過ごし方になったと思う。
お疲れ様でした。
文系出身だけど前々からWebサービスつくってみたくて勉強がてら一人でWebサービス作ってみました。
作りたいって思うなら実際に作ってみるのが一番いいってじっちゃんがいってた。
やってみて感じたこととか先輩エンジニアの人たちに教えて欲しいこととかを書いていきたいと思います。
じっちゃん、僕にもできたよ!
EDM JACK
簡単に説明するとクラブミュージックを淡々と紹介していくサイト
・26歳
・フリーター(ほぼニート)→知人の会社で営業職→今年の4月にWeb業界へ転職。
・営業職だったころにあいた時間にドットインストールとかでHTML/CSSの勉強をしてた。
大学を中退してからフリーターになって、その頃から自分でWebサービスとかつくって運営してる人ってかっこいいな〜とか思ってた。
Facebookの映画とか見たときは完全に感化されっぱなしだった。
でもいつか作れたらいいな〜って思ってただけでなにもしてなかった。
最近いろいろ環境が変わって少し休みをもらえたので奮起して勉強がてら作ってみることにしたのです。
漠然と「Webサービス作りたい」って思ってたからまずどんなWebサービスを作るか考えました。
やっぱり好きなことじゃないと続かないと思ったので
自分が好きなクラブミュージックをまとめるサイトを作ることにしました。
ジャンルはDJ KAO●Iとかミーハーな感じの曲じゃなくてEDMってやつ。
EDMといえば今月日本でもUltra Music Festivalが開催されるね!やったね!Hardwellに会えるね!
まずはプログラミングとやらを勉強することにしました。ドットインストールは偉大です。お世話になりました。
ここでHTML/CSSとPHPを勉強しました。でもPHPでゼロからコードを書いて作ろうとすると重大な問題があることに気が付きました。
時間がかかりすぎる。
今回はとりあえず自分でなにかWebサービスを作ってみるということを経験したかったのでWordPressを使うことにしました。
でもさすがにレンタルサーバーを借りてWordPress入れましたっていうんじゃ先輩エンジニアの人たちに怒られちゃうと思ったので、
WordPressを入れるサーバーの環境構築は自分で頑張ってやってみることにしました。
なのでWeb業界ではアイドル的存在のAWSっていうやつで頑張ることにしました。
ここでもドットインストールにお世話になりました。ほんとなんでもチュートリアルがあってすごい。
最初はWebサーバーにApacheを入れていたんですが、なんか重たい感じがしていろいろ調べているとNginxがナウい感じだったので
Nginxでインスタンスを立て直すことしました。環境的にはこんな感じ。
Nginx 1.4.7
MySQL 5.6.13
ドットインストールでUnixコマンドとかを勉強したとはいってもNginxの設定周りをいじるのは結構大変でした。
でもNginx使うからにはチューニングしてから使わないとApache先生に怒られちゃうので、
チューニングテストをしたらTransfer Rateが17[Kbytes/sec] くらいから15000 [Kbytes/sec]くらいになった。
無事にサーバーが立てられたのでWordPressを突っ込んでテーマとかいろいろいじりました。
シェアボタンをつけたりFacebookのLikeBoxを入れたりでちょっとテーマいじった程度。
あ、カテゴリとタグにpickupってつけたら自動で投稿が目立つようにした。これは自分でテーマファイルいじって書いた。
入れたプラグインはこんな感じ。Jetpackはモバイルテーマのみを有効化してる。
アイキャッチ画像が多いからPhotonも有効化してもいいかなって悩んでる。
Akismet
All In One SEO Pack
Batch Category Import
Favicon Rotator
Font Awesome Icons
Mobile Theme Featured images for Jetpack
NextScripts: Social Networks Auto-Poster
Remote Images Grabber
Video Thumbnails
Wordpress Popular Posts
WordPress Related Posts
WordPressなのであとはたらたらと僕がオススメする曲を更新していくだけ。
EC2のt2.microだけど、Nginxのおかげなのか特に問題はなし。
今はYoutubeかSoundcloudのURLをそのまま投稿に入れて、アーティスト名とかDJ名でカテゴリ分けしてる。
せっかくだからドメイン代とかAWS代だけでも回収できればいいなってことでAdSenseも入れてみたw
実際に作り始めてから1週間程度でここまでつくることが出来ました。
ドットインストールがなかったらここまで速くつくれなかった。ありがとうございます田口さん。
元々非エンジニアでもやる気になればそれっぽいのが作れて感動しました。
でもなんかOGPの設定がうまくできず、Facebookとかでシェアしようとするとたまに全然関係ない画像が表示されてしまう。
テーマファイルに直接書いてもプラグインでOGP設定してもよくわからなかった。
Facebookのデバッガーつかってキャッシュクリアしてもできたりできなかったり。
将来的にはSoundcloudとMixcloudを足して2で割ったサイトになればいいな。
キュレーター制度とかも入れてみて、僕だけじゃなくていろんなEDM好きやDJがおすすめの曲を投稿できるようにしていきたい。
WordPressで構築しちゃったけどできるだけプラグインに頼らずに自分でPHP書いて実装できるように頑張らなきゃ。
本とかは一冊も読まずにここまで作れたけどPHPエンジニアならこれは読んどけよ若造ってのがあったら教えてください。
EDMは素晴らしいよ!クラブ好きな人もそうでない人もきっと好きになる曲が沢山あるから聞いてみてね!
EDM JACK
タダで作業遣ってるのかそれとも金貰って作業遣ってるのかどっちなのか
完全にタダ。以前ファイルメーカーで100万ぐらいの管理システム作ってあげてからの付き合い。
納品の後も、こっちも客が使えないシステムなんか納品したくないから、実運用以降に出てくる細かい修正とかはやりますよっていってあったから、しばらく対応してたんだけどそれにしても1年以上たってもまだ呼び出される。しかも、AmazonのEC2って何それおいしいの?みたいな全然関係のない話とか。
話だけならまだしも、あれっていくらぐらいすんの?とか調べないとわからないような超面倒なことも頼まれてる。
まあ、そういう話の中で普通の客はこまめに仕事だしてくれるんだけど、今回の客の場合、永遠に無料だと思われてるフシがあるというか、俺がどうやって金を得て飯を食っているか想像力がないのかがわからない。
国内クラウド最大手のIIJ GIOが驚くほどクソっていう話を書きます。
クラウドならIIJ GIO(ジオ)- IIJの高品質クラウドサービス にあるように、クラウド上にいろんなサービスを乗せてくれるヤツです。
まぁAWSでいいじゃんって話が出ると思うので、AWSとの違いをまとめてくれた方がいましたので紹介します。IIJ GIO にあって AWS にない(なさそうに見える)10のサービス - yoshidashingoの日記 なお、このエントリー以降にAWSも進化していて、中国リージョンの開設やVDIサービスの提供がアナウンスされています。
一つには国内ベンダーっていう安心感ですかね。どこに登記されてるとも知れないAWSに任せると、いきなり「今度このへんのラックメンテするからEC2のインスタンス落ちるよ」みたいのがあったりしますしね。
あとは、運用監視サービスをやってます。AWSだとCloudWatchみたいな簡易なやつしかないですが、GIOだとアプリのログとかポート監視もやってくれます。まぁAWSでもサードパーティで運用をやってくれる会社はありますが。
残念ながら、上記の「選ぶ理由」はどれも裏切られます。
不定期メンテは普通にありますし、ろくに通知もないです(電話1本とか)。内容も、ネットが切れるとかサーバを落としてくれとか割りとデカめです。国内ベンダーだからちゃんとしてるだろうというファジーな期待は裏切られます。
運用監視サービス、これがまたゴミです。監視のカスタマイズなんかお願いしようものなら「これが仕様なんで…」と突っぱねられます。ポーリング間隔ですらカスタマイズできません。あと運用。「このアラートは即電話ね」と決めていても、24/365対応している現場の人間は適当なバイトなので、ろくに伝わっていなくて見逃される、みたいのもザラです。
VPSサーバ | AWS EC2 |
---|---|
言語 | Ruby2.0p245 |
フレームワーク | Rails4.0 |
画像のリサイズ | carrierwave |
ストレージ | AWS S3 |
DB | AWS RDS |
処理はRuby on Railsで実装。 ログイン処理はdevice 画像のアップロードやリサイズはcarrierwave carrierwaveってすごいのね。たった数行書くだけでアップロードした画像を複数サイズにリサイズし、S3に保存までしてくれます。 インフラ周りはAWSにお任せ、THE最小構成ですね。 同時に7人アクセスしたらあぼーんです。 本来ならELBとAuto Scalingでミディアム2台くらい使いたいところですが、我慢。 RDSもmicroインスタンスなんで、これもクソ遅いらしいですが、ゆくゆくはミディアムにはしたいです。 あと、前回作ったWebサイトのAMIを利用したんですが、本当に便利ですね! 動くものを作るまでの時間がほぼ0でした! AWSは個人利用者には少々割高かと思いますが、こういった便利なところがいいんですよね~。
色々書いたけど、ここまでの文はリリースしたときにテンションがあがってた時に書いた文なののよね。
ぶっちゃけローンチして一ヶ月たつけど、登録数4人。しかも全部知り合い。
興味があったらみていただければと・・・と思ったけど宣伝乙とか言うんだろ。
実装から今まで頭の中で思い描いたことの9割は裏目にでてるか失敗してるかうまくいってない。
こんな難しいのか、サイト運営って。
先日、エロWEBサービス おまいらの夢 ( http://omaira.info )を公開したものです。
http://anond.hatelabo.jp/20130122180847
沢山のアクセスありがとうございます!
公開後にはてな村について、いくつか感じる事があったので
ここに書かせてもらいます。
僕もIT業界では3年以上働いていて (現役学生と勘違いされている方が多いようですが)
そこそこスキルも高いと自負していました。
実際、おまいらの夢の開発期間は1週間程度です。
複数のセキュリティホールの指摘とその対策をメールでご指摘頂きました。
公開数時間で、です。
ITを本気で愛していないとなかなか出来た事じゃないです。
みなさん凄いです。
twitterなどでの評判は
「意外と似ている」「おもしろい」
などの好意的なものが多いのですが
はてなでの評判は
などの厳しい意見ばかりでした。
たとえばこんなの
http://anond.hatelabo.jp/20130124061507
試したところ、精度はまずまずといったところでしょうか。
髪型などはかなりの精度で判別してくれるのですが、顔が少しだけ惜しい。
今後の改善に期待です。
みなさん怖いです。
『おまいらの夢』は公開初日で、約8万PVのアクセスを叩きだしました。
リア充の多いfacebookの人々では同じ事は起こらなかったのではないでしょうか?
その中でも性欲が高い or 発散相手がいない
みなさんエロいです。
アダルトアフィリエイトは儲かるんじゃないか?って思いますよね。
僕もそう思っていました。
あれ?
EC2で結構良いインスタンス使っちゃっているので完全に赤字ですね。
でもこれからも 『おまいらの夢 http://omaira.info 』をがんばります
乱文で失礼しました。
facebookってなんなの!?
ごごごごごっ
湧き上がる嫉妬心
あー
モフッモフッ どぴゅっ
おまいらの夢、叶えちゃいなよ。っと
おまいらの夢
計量学習を用いた画像検索エンジンとアニメ顔類似検索v3について
http://ultraist.hatenablog.com/entry/2013/01/09/215045
【これはスゴイ】誰もが知ってる歴史上の人物の肖像画をカラーに加工!!やたらと身近に感じられるようになった件
http://irorio.jp/asteroid-b-612/20121221/40981/
http://anond.hatelabo.jp/20130120190550
本職の僕が負ける訳にはいかないぜww
libpuzzle
http://www.pureftpd.org/project/libpuzzle
本当はもっとしっかりとした face.com とかの
顔認識システム(Facial Recognition System)に特化したライブラリを使いたかったのですが
実験してみたところそれなりの精度で結果が返ってきたので
とりあえずはこれで良いかな。
って感じです。
cakePHP, twitter bootstrap, jquery など今回使った開発環境のほとんどを網羅しています。
本当、このサイトはこれからWEBサービスを作る方は要チェックです。
これ超いいよ。最初覚えるのは大変だけどフレームワークは絶対に覚えるべき。
最近はRubyが流行っているみたいですが、PHPの方が環境構築が楽な気がします。
これも超いいよ。
これもドットインストールを見ればすぐに使えるようになります。
今は、某企業でソーシャルゲームを影から支えるお仕事をしているサラリーマンの僕ですが
学生時代は監視カメラの画像から人間の動きを追跡する研究なんかをやっていました。
その時はC,C+ とか 画像処理ソフトHALCONなんかを使ってゴリゴリとコード書いていたんですけど
最近になってふと調べてみたら
やるっきゃない!と作ってみました。
時間出来たらもっと精度高く顔検出出来るように改善していきます。
楽しみにしていてくださいねー
『おまいらの夢』をよろしくおねがいします
※第三者の写真のアップロードをする時には、必ず本人の許可を貰うようにして下さい
-------------------------
1/24追記
公開後に感じた事を別記事にまとめました
あー、どうなんだろう。
なにげに、Virtual CPUって 1GHz前後のCPU能力のことでしょ・・・結構 以外に 貧弱なんだよね。
瞬間最大風速が単一障害点に かかるものこそ、むしろ 実マシンって気はする。仮想化は瞬間最大風速には弱い。
一旦服装はいると 戻ってくるのが遅い。
スタティックなファイルの大量配布にかなり近い程度の負荷なら まぁ、って気もするが。
ぶっちゃけ、そんな大規模だったら、 DCにラック 借りても人件費まで考えても ペイするやろって感じ。
もう、いまどき、ラックマウントサーバーなんて かなり安い。(※ 風圧設計からして DCに 通常PC入れるのは ナンセンスとして ラックマウント入れても もう 大した額じゃない)
はてな記法とか無視で読みにくいですがゴメンナサイ。
かいたひと→http://twitter.com/chobi_e
follow/unfollowはご自由にどうぞ。
うん、次なんか書くまでにはブログ用意しておこう。
===============
会社としてもOpenSocialに関わってるし、個人でもちょいちょい
勉強がてらに手を出しているので参加させていただきました。
会場を提供してくださったコンテンツワンさんありがとうございました。
http://www.contents-one.co.jp/
ほいではメモの公開。
聞き逃しや誤記もあるかと思うので参照はほどほどに。
=============================
mixi機能の紹介とOpenSocialAPIリファレンス的な説明。
あとは公開するのは微妙なので割愛。
PHPでWEB開発を行うようにしてオープンソーシャルアプリを作る(@KuniTsuji)
=======================================================================
CodeIgniterを使ってのmixiアプリ構築についてのお話。
OpenSocial開発しているので全て既知の情報だったので
メモがありません。ゴメンナサイ。
要約するとPCはつくるのめんどいけどモバイルだとぺらいちで済むし、
運用した気になるモバイルオープンソーシャル (@cocoitiban)
=========================================================
ウノウさんは社員募集中、@cocoitibanは彼女募集中!
@cocoitibanのお仕事
映画生活(ピアに売却)、フォト増、clipp、まちつく
・まちつくについて
位置ゲー、もともとふつうのモバイルアプリとして提供していた。(ユーザー数非公開)
・リリース前
・社長がやりたい→同僚がすごい勢いで作成。@cocoitibanは横で傍観
(モバイルOpenSocialって元のサービスがあれば結構勢いですぐ作れるんですよね。)
・ロードアベレージ1000でも登録できるんだー
そして、当然のように他社を含め登録ができなくなるw
・初日から1週間は1日10万のペースで増えた
・mixiに登録しているユーザーだからまちつくに登録という意識は低いっぽいですが
・ウノウには3時間で画像生成をキュー処理に書き換えたやつがいる
・ボトルネックになりそうなものを全部退治
・ハードウェア確実に足りないので購入進める
・二日目、三日目と同じように+10万人ってトラフィックをさばかなきゃいけない
・リリースから今まで
・初期(パフォーマンスアップ)
・回線が足りなくなりつつあることに気がつく100Mなのに・・・
・決めてから1週間くらいでリリース
・Memcached適用範囲を増やす
・一部機能を企画レベルで見直しふかがひくなるかつ、よりよい動作へ。
・初期パフォーマンスアップ
・L7ロードバランサふやす
・DBマスタ分割
クエリはチューニングされていてCPUやDisk ioのreadはすかすかだけどWriteが痛い事に
・ORMの機能をつかって分割
・トランザクション上影響ないものを分割
・サーバー台数的にはそんなにない。
・中期
・ちょっとだけいいサーバーに置き換え
→あっさり解決
・本格的な機能改善
ユーザーに不便かけてる機能とかを大幅見直し
・社員数増員
・8Fに追加して4Fに事務所を移すことに
・引っ越し大変でした
・可能な限り早くしたかったがユーザーに不便をかけている段階ではリリースできなかった。
・中期
・一部処理をQ4Mに置き換え
・EC2とはおわかれできた
・EC2は悪くないがサーバーがある現状ではコスト間と運用の体制のにゃー(メモ終わる前に次のページへ)
・まとめると
・数ヶ月、数人のエンジニアでおこなわれたので長短納期
・力業だが安定志向を目指す方がいい
・変わったことやると大体トラブって死ぬ
・しかし新しい事やらないと間に合わない
[そのほかメモ]
・Q4M
・Gearman
・ActiveMQ
・自前で実装
・そのほかいいのがあれば
・キュー処理っているの?
・実装クイズ
・Friends1000人いて全員取りに行く場合どうする?
・キャッシュとして定期的に削除しなきゃだめ
・いや1000人とってきちゃおうよ
・トラフィックの波が激しい
・流入云々でかなり違う
・分散のネックはやはりデータベース
・ORMは使うべき
・流行るか流行らないか分からないサービスをつくる場合には必要
・はやった場合にすぐ分割できるか
・トランザクションがネックになる
・XAトランザクション
・トランザクションを正しく処理できるか
・KVSとの透過性
・逆をいえば上記はコードを綺麗にかけるかどうかなので使わなくてもいいと思う
・エンジニアとして思ったこと
・EC2はありだけど運用がイントラで運用するのとは違う形になるので経験が必要だと感じた。
・AmazoRDSが別の地域で使えるようになるといいなぁ。
・どきどきするのが課金。コストをいやいやでもエンジニアが意識せざるを得なくなる
・かなりはやい
・半年1年後、国内レベルのトラフィックであれば大半のWEBサービスは1台でおk
・ip_conntrack/iptable
・ulimit
・Symfony使ったけどそんなボトルネックにならなかった的な話。
・バッチ処理とかforkで悩むことが多い
# 総評
最近はめっきり大きなトラフィックを扱うことがなかったからちょっと刺激もらえました。
前の会社ではサーバー200台くらい管理してたけど今の会社では数十台程度だし、
そこまでトラフィックもこないのでサーバーエンジニアとしては体たらく気味。
まぁ、業務的には様々な方面でやっているので仕方のない事ですが。
とりあえず現状で出しておいて流行したら確実に死ぬ&寝れなくなるので事前に
震える子鹿のようにただビールをひたすら飲むのでありました。
そんな私に声かけてくださった皆様、ありがとうございます。
お名前/ID出していいのか微妙なので割愛させていただきますが、感謝感動雨あられでございます。
そうそう、個人的には今の流行がTwigなので@cocoitibanともうちょっと
お話したかったですが懇親会LTもありーの、飲み過ぎて気持ちわりーので実現せず。
Twigすごく良いとは思うんだけどいまいちドキュメントが少ないので
本当にこれでいいんか?て思うことが結構あるのよねー。
Node周りの実装がぱっと見分かりづらいので難儀。
そいじゃ会社いってきまー