2020-01-01から1年間の記事一覧

分散システムデザインパターン読書メモ2

シャーディングされたサービス レプリカされたサービスではリクエストはどのレプリカでも処理することができた、 それに対してシャーディングされたサービスでは一部のリクエストを特定のレプリカのみが処理できる。 代表的な例として、データサイズが一台で…

Reactを書くときのパターンメモ

Render Props propsに、RenderするReactElementを返す関数を渡す メリット 親が子のなかでレンダーする内容(孫)を動的に変更することができる 親が子の中の孫のレンダー内容を指定しつつ、子と孫で値の共有ができるようになる 参考例 mae.chab.in オブジェク…

分散システムデザインパターン読書メモ1

シングルノードパターン 1つのインスタンスの中でメインのコンテナと他のコンテナを組み合わせるときのデザインパターン サイドカーパターン メインのコンテナに機能を付与したり、改善したりするためのコンテナを組み合わせる 例) gitリポジトリへのpushに…

sendagaya.rb #330 rake db:rollback時のソースコードリーディング

sendagaya.rb #330 では、 rails db:rollback のときのコードを読んだ。 もとは、 @sanfrecce_osaka がきになって調べてくれていた内容 こちらで用意するmigrationファイルのchange のなかのメソッド呼び出しを行うときに rake db:migrate では、ActiveRecor…

最近読んだ記事

初めての「技術ブログ」書き方のご紹介 – SORACOM公式ブログ ブログの書くコツについて、何かテンプレートを作るのは良さそう ブログ設定して燃え尽きるのは本末転倒というのはわかる 1つのことにしぼる、 タイトルと対になる結論を書くとかも忘れがち Amazo…

gem pryを掘る(pry-rails編)

pry-railsで使えるコマンドについて調べてみる pryのプラグインである、pry-railsを追加することで使えるコマンドについて調べてみた show-models あたりが一番便利そう show-routes rails routesを表示 show-models modelの一覧、各modelの属性、各modelの…

gem pryを掘る(watch)

Rubyのデバッグに便利なことで有名なgem pry に調べてみる watch 監視したい値を watch <値> のようにして登録すると 値に更新があったときに教えてくれる [5] pry(main)> a = 1 => 1 [6] pry(main)> watch a Watching a watch: a => 1 [7] pry(main)> a => …

Railsでspec実行時に毎回DBが再構築されないようにする

Railsでテストを流すときに毎回データベースの再構築が行われる。 これにより、テスト実行時間が少し長くなるので、この機能を無効にしたかった。 どうやらこの辺ぽい config.active_record.maintain_test_schema: テスト実行時にActive Recordがテスト用デ…

MySQLでCREATE or DROPできる権限レベル

データベースのCREATEを行える権限の付与について調べていたとき、 どのようなレベルの権限を付与すると可能なのか明示的に書かれている ものを見つけられなかったので書いてみる。 (以下、CREATEについて書いているがDROPも同様) あるデータベースAをcreate…

LAN内のIPを探す

家の中で起動させている、raspberry-piに久しぶりにsshで入りたいけど どのIPだったか忘れてしまったときに調べる手順について書いておく arp-scanをインストールする $ brew install arp-scan 使ってみると、IP, MACアドレス、Device製造元?のような情報が…