Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Ruby オブジェクトをファイル(または文字列)に書き出したり、読み戻したり する機能を提供するモジュール。 Ruby 2.1.0 リファレンスマニュアル | module Marshal それが Marshal です。 オブジェクトをファイルに書きだすということで、HashをMarshal.dumpして文字列化したものをRedisやMongoといったデータストアに保存するという使い方があるかと思います。 (世間一般ではjsonでやることのほうが多そうなイメージがありますが) hoge = { foo: 'bar' } p str = Marshal.dump(hoge) # => "\x04\b{\x06:\bfooI\"\bbar\x06:\x06ET" # strをデータストアに入れる p Marshal.load(str) # => {:foo=>"bar"}
[15487] 04 Aug 21:02:37.523 * 1 changes in 900 seconds. Saving... [15487] 04 Aug 21:02:37.523 # Can't save in background: fork: Cannot allocate memory redis-cli infoしても、使用してるメモリは全体の半分ちょっとだったし、空きは十分にある… 答えは Redis Administration http://redis.io/topics/admin に書いてありました。 原因と解決策 redisのバックアップが走る際、おそらく現状使用している量と同じだけのallocateを要求しているために、redis自体はメモリ使用が50%強だとしても、バックアッププロセスが落ちてしまう模様。 解決は簡単で、Redis Administratio
元ネタ BUILDING SERVERLESS APPS WITH DOCKER 概要 Docker Blogに面白い記事がありましたので紹介/解説です。 既存のWebアプリをDockerとswarmでサーバーレスにしてみるというものです。 詳細は上記の元ネタを読んでいただければと思います。 当記事ではポイントごとに使われてるテクニックについてみていきます。 なお、それぞれのソースコードは以下のリポジトリで公開されています。 GitHub/通常の構成(既存Webアプリ)のソースコード GitHub/サーバーレス構成のソースコード --- 6/26追記 --- 上記のデモアプリはswarmクラスタ構成になっていません。 swarmで動くサンプルはこちらに作成してみました。(変更差分) DockerToolbox(VirtualBox)で動かすサンプルですので、環境をお持ちの方はお試しください
used_memory:1004464 used_memory_human:980.92K used_memory_rss:1765376 used_memory_peak:1004464 used_memory_peak_human:980.92K used_memory_lua:35840 mem_fragmentation_ratio:1.76 mem_allocator:libc used_memory : redisによって割り当てられた総バイト数 used_memory_human:単位表示(人間が読める型式の表現) used_memory_rss:OSから見たときのRedisによって割り当てられたバイト数 used_memory_peak:Redisが消費する最大メモリ used_memory_peak_human:単位表示(人間が読める型式の表現) used_memory_
※このお話はたぶんフィクションです。実在の人物や団体とはあんまり関係ありません。 序 planetter.comをバージョンアップすることにした。数年前にリリースしてからずっと放置していたけど、そろそろ手を付けないとやばいと思った。 しかしウェブの世界はドッグイヤーだ。3年も経てば何もかもが変わっている。しばらく開発から遠ざかっていた僕には、最近の技術トレンドなんてさっぱりわからない。 まずは自分自身をアップデートするところから始めよう。 Atom 最初はIDEだ。以前はEclipseを使っていたけど、いまはもうウェブ系言語の進化速度に追いつけていないようだった。ウェブ開発用のIDEならいまはWebStormが人気のようだ。有料だけど、最新の技術に対応しているし、使い勝手もいい。 でも最終的にはAtomを選んだ。IDE(統合開発環境)ではなくエディタなので、これ自体は単機能だけど、不足分は
こんにちは.mod_mruby ngx_mruby Advent Calendar 2014 12日目にお邪魔いたします!@ainoyaです.mod_mruby/ngx_mrubyとの出会いはカレンダー8日目の@mookjpの紹介にもありましたpoolがきっかけです. mod_mruby/ngx_mrubyの利点は高速であることもさることながら,なじみのあるrubyの文法でproxyレイヤの制御を 柔軟に記述できることも大変すてきな点だと考えています.今日はmod_mrubyを使って,jwtを利用して認証認可制御を行うproxyを作ってみた件について紹介します! JWT(JSON With Token)とは JWT方式でのエンコード/デコード(jwt.ioより引用) JSON With Token(JWT)とは,JSONで署名や認証などを行うために決められた仕様のことです. 仕様では署名の
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事はSansanアドベントカレンダー3日目です。 #前提 個人でアプリを開発していても、やっぱりなんだかんだサーバーサイドが必要になる機会ってあると思います。ただ、注力したいのはやっぱりアプリ側の開発なのでできるだけサーバーサイドにはコストをかけたくない、そんなときどうすれば、、、みたいな話です。 基本的には、 金をかけたくない 時間をかけたくない でもサーバーサイド用意したい という前提で雑にサーバーサイド環境を用意する場合の話です。 作ったアプリなど 最近は放置気味になっていますが、下記のようなアプリをこれまでにリリースしまし
遭遇した状況 今回は中でも ElastiCache プライマリクラスターのみで障害が発生した場合 の話しです。 ドキュメントにもあるように、マルチAZ 環境での自動フェイルオーバーでの今回の状況においては 書き込みは、昇格プロセスが完了するとすぐに (通常は数分) 再開できます。ElastiCache が昇格したレプリカの DNS を反映させるため、書き込みのためのエンドポイントを変更する必要はありません。 となっています。 ポイントは、「DNS を反映させるため、書き込みのためのエンドポイントを変更する必要がありません」というところです。 発生した課題 自動フェイルオーバーが発生した際に、運用している Rails アプリから上記のエラーが止まらないと言う状況になりました。 最終的には、Web アプリ、ワーカーアプリともに、再起動することで状況は改善しました。 このエラーメッセージから分か
こんにちは!@best_not_bestです。 私は現在、dots.の開発を担当しています。このサービスは全てLaravelで動いています。今回はこのシステムの裏側を説明したいと思います。 dots.とは? 「エンジニアのため」のイベント情報検索サービスです。 2013年10月にローンチし、2015年12月21日現在、ユーザー数は約34,000人になります。 ちなみにローンチ日は10月2日で、ドッ(10)ツ(2)を意味しています(´・ω・`) 2015年7月にシステムリニューアルを行い、その際にフレームワークをCakePHPからLaravelに変更しています。 使用しているもの ミドルウェア PHP 5.5 Laravel 5.0 fluent/logger guzzlehttp/guzzle aws/aws-sdk-php-laravel watson/validating dakats
こんにちはJapornLady開発者のリヒトです スケーラブルなデータベースが簡単に手に入る時代なのだから、何万人ものユーザを抱える様な大規模なサービスを作って運用してみたいなぁという思いから、熟考した果てのエロサイト ジャポルノレディーズ を作る事を決めました。このページは開発にあたってのTipsとジャポルノレディーズの宣伝です(人気AV女優のフルDVD動画が見れるよ)。 今までに教育向けとか真面目なサービスを作った事もありましたが今いちニーズがあるのか無いのかわからずに細々とやってました。そこで気づいたのはニーズあるなし論争は常に疑心暗鬼になってつらい。 という事でニーズがあるとわかってるエロサイトを作ることに決定 コンテンツも豊富かつスケーラブルでレコメンドエンジンも備えた快適エロサイト(笑)を作ろう!の備考メモ ちなみにコンテンツ収集はクロール手法のため非公開です。 環境 OS :
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? このドキュメントについて twemproxy (nutcracker) が一体何者であり、また、運用にあたり理解が必要であろう箇所について、本家ドキュメントを雑に意訳したものです。 仕事上のメモとして作成したのをそのまま公開するので日本語が残念なところも正直多々あるのですが、これを完成させるまで眠らせておくよりは(いつになることやら)さっさと公開して、今 twemproxy の導入を検討している方や、運用されている方の何かしらの力になればと思っています。 粗い内容ですので、何かございましたら編集リクエストを頂けると幸いです。 READM
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? というテーマで東京Node学園祭2015でセッションさせて頂くことになったので、先に整理/メモ的ななにかを。 (追記)以下資料で発表しました。 大規模Node.jsを支える ロードバランスとオートスケールの独自実装 http://www.slideshare.net/kidach1/nodejs-54841327 作ったもの ・スマホゲーム(マルチプレイアクション) 【公式】メザマシフェスティバル(メザフェス) | 株式会社アカツキ https://mezamashi-festival.aktsk.jp ・2D横スクロール ・マルチプレ
Why? AWS Elastic Beanstalkで環境構築自動化という事をやったりしたわけなので、 複数サーバ間でセッションを共有したいのであります。 通常サーバ上で動作させるredisやmemcachedはお互いのIPを知っていればサーバ間でデータが共有できるんですが、 オートスケールで追加されたEC2インスタンスのIPを調べて、 それぞれのサーバに通知して、 クラスタを追加 みたいな動きをつくるのも、クラスタ接続時に問題起きない?とか考えるのもマジ面倒。 もういい、使おうElastiCache! Cache Cluster Create AWS ElastiCache Get Startd Now!! それぞれ入力していきましょう。 memcachedよりリッチなredisを使います。 そのリッチさの代償ゆえか同じインスタンスタイプでもredisの方が使えるメモリ量が少ない とかど
WebSocket を利用するアプリケーションは Pub/Sub サーバを使ってスケールアウトさせるのが一般的です。 今回は Redis の Pub/Sub 機能を使って Phoenix の WebSocket をスケールアウトさせてみます。 Phoenix で WebSocket 通信をさせる方法はコチラをご参照ください。 事前知識: WebSocket アプリケーションのスケールアウトについて 通常の Web アプリケーションにおけるスケールアウトは、サーバ台数を増やしてロードバランサでリクエストを分散させる、というのが一般的ですが、WebSocket アプリケーションではこの手法が使えません。 なぜかというと、WebSocket アプリケーションはコネクションをサーバ内で管理するステートフルな作りになっているためです。冗長化させたサーバにリクエストを分散させてしまうと、他サーバで接続
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く