CEDEC2017「優れたエンジニアが集まり継続的に成長する会社にする方法 ~組織を急拡大させる採用育成評価ガイド~」講演資料です。
CEDEC2017「優れたエンジニアが集まり継続的に成長する会社にする方法 ~組織を急拡大させる採用育成評価ガイド~」講演資料です。
前回の続き ActiveRecordが実際にDBにクエリを発行する場合ActiveRecord::Base.connectionを経由する。話を単純にする為に、クエリの実行だけに限定してShardingを実現しようと思った場合このメソッドがそれぞれのShardに対して確立されたコネクションを返せば良い。 一番多く採用されている実現方法はconnectionメソッドを上書きしてproxyを経由させるパターンで、多くのGemで採用されている。その他にもコネクションの確立方法・管理などで既存のGemがどうやって実現しているかをいくつか紹介する。 Octopus おそらく一番有名なのかもしれないGem。kovyrin/db-charmerの影響を少なからず受けている。 実際に置き換えているのは、ActiveRecord::BaseにOctopus::Modelをextendした際に実行されるhij
ActiveRecordのShardingライブラリを設計する際に、対応する必要があるコネクション管理と実際にコネクションがどのように使用されているのかの部分について書き留めておく。 対象のバージョンは4.2.4だけど4系なら大体同じなので問題ないと思う。 データベースへの接続はinitializerで行われる。 # active_record/railtie.rb initializer "active_record.initialize_database" do |app| ActiveSupport.on_load(:active_record) do self.configurations = Rails.application.config.database_configuration begin establish_connection rescue ActiveRecord:
シリアルコンソール接続が無いクラウドなんてゴミだと思っています。どうも皆さん、元気ですか、僕です。 AWS、Azure で何かしらトラブルが起こると完全に詰むんですよね、コンソール接続が無いばかりに。 起動に失敗したら、もうサポートセンター行きですもの。AWS、Azure どちらとは言いませんが、サポートと何時間もやり取りした結果、イメージをコピーして、VM を作り直してくれ、なんてこと言われるんですよ。 ゴミみたいに呪われた、どう頭をこじらせたらこんなもの作れるんだ?と開発者の脳みその出来を疑う人類史上最低の Shell、Power Shellを叩きまくることになるんですよ。あ、どっちかバレた。 GCP にはコンソール接続があります。iptables で変な設定を入れて SSH が切断されたとしても、どうにでもなります。 昔はさくらインターネッツにもコンソール接続がなくて「再起動してくだ
This is a time-honored topic, and there’s no shortage of articles on the topic on this blog. I wanted to write a post trying to condense and clarify those posts, as it has taken me a while to really understand this relationship. Some basic facts Most of us know that writing into Innodb updates buffer pool pages in memory and records page operations in the transaction (redo) log. Behind the scenes
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く