昨年の5月からIncrements社でQiitaの開発に従事していましたが、今月末をもってIncrements社を退職します。在籍期間は10ヶ月。今日が最終出社日です。 Incrementsでは、Qiitaの機能追加開発を主に担当していました。Qiita Blogには、僕がリリースしてきた機能が掲載されています。 yoichiroがIncrementsにJOINしました - Qiita Blog Email Markupに対応しました - Qiita Blog 外部リンクへの属性が変わります - Qiita Blog (僕が実作業者) Qiita Organizationで組織の紹介などを書ける「About」の提供を開始しました - Qiita Blog details,summary要素に対応し、投稿内で指定箇所を折りたためるようになりました - Qiita Blog 「Qiita Ad
Too Long; Didn't ReadToday we are happy to present <a href="https://github.com/redbooth/percona_migrator" target="_blank">Percona Migrator</a>, an ActiveRecord <a href="https://hackernoon.com/tagged/adapter" target="_blank">adapter</a> to run online MySQL schema migrations in Rails. Since we implemented it back in December 2014 it has gone through few stages but it has always been an essential par
Safer Rails database migrations with Soundcloud's Large Hadron Migrator … and check why 5600+ Rails engineers read also this Safer Rails database migrations with Soundcloud’s Large Hadron Migrator When I first started using Rails years ago I fell in love with the concept of database migrations. Perhaps because at the time I was working on commercial projects in C# which lacked this and I could fee
はじめに この記事は CrowdWorks Advent Calendar 2016 12日目の記事です。 昨日のエントリーは @nasum さんによる「nasneの容量をシェルスクリプトでSlackに通知する」でした。 先日起きたことを、ありのままに1話します。 MySQL にあるデータを Elasticsearch (以下 ES と略) にインデックスしようとしていたと思ったら、いつの間にか Ruby の C 拡張をデバッグしていた。な、何を言ってるのか (ry おまえは何を言っているんだ 三行でまとめると、 Ruby を使って ES にインデックスを作ろうとしたら予期しない現象に遭遇して、 原因を探ろうとしたら C 拡張で実装されている箇所だったので、 しょうがないからデバッグする方法を調べた という話です。 発端 事の起こりは、自社サービスのデータベースに溜まっているデータをより効
tl;dr Railsではコネクションプール数を設定していても、1スレッド辺り1コネクションしか持ちません。 発端 アカツキではRails + Unicorn + Nginx + MySQLの構成をAWSで運用しており、c3.4xlargeのインスタンス上で1台辺り64のUnicornワーカープロセスが実行される設定になっています。 ソーシャルゲームでは時にたくさんのアプリケーションサーバを並列稼働される必要がでてきます。特に年末年始の時期は平時の2-3倍のトラフィックが予想され、アプリケーションサーバを最大100台で稼働させる必要がありました。 Railsのdatabase.ymlのpool設定は5だったので、単純に考えると最大 100台 * 64プロセス * 5接続 = 32,000個の接続が常時貼られるのでは?MySQLのmax_connectionsの設定は大丈夫か?という議論があ
ActiveRecordは基本ずっと接続をはりっぱなしにします。 なので長時間接続をはりっぱなしにするため タイムアウト等で接続がきれると問題がでます。 MySQLでDBの接続がきれるタイミング 状況別 Railsの場合 HTTPリクエストのあるたびに接続が切れてないかを確認します。切れてる場合は再接続するようになっているので問題なさそうです。 バッチ、デーモン等 ActiveRecordを使った場合はずっとつなぎっぱなしになるため、途中で接続が切れるとエラーになります。 reconnectオプションは危険 じゃあバッチ等の場合自動で再接続してくれればと思うと MySqlのクライアントライブラリレベルでリコネクトの概念がありました。 railsで使うにはdatabase.ymlに:reconnect = trueで指定できます。 が!! railsの実装ではデフォルトはOFFになっています
前の記事ではCtoDを使ってCSVデータからHeroku上にWebアプリを構築する手順を説明しました。 Excelデータを最速でWebアプリ(Heroku)にする109のステップ ここではCtoDの詳細を説明します。対象バージョンは0.0.3です。 ctoD | RubyGems.org | your community gem host melborne/ctoD 使い方 gem install ctoDでインストールすると、ctoDターミナルコマンドが使えるようになります。サブコマンドを渡さなければそのヘルプが表示されます。 % ctoD Commands: ctoD create_table CSV DATABASE # Create a database table for CSV ctoD export CSV DATABASE # Export CSV data to DATA
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く