ruby

Amazon SNS vs Amazon SQS

社内で通知機能を実装する際にAmazon SNSとAmazon SQSどっちがいいかという議題が上がったんですがよくわかってなかったので調べました tl;dr 名前は似てるがそもそもやってることが全然違う Amazon SNSは pub/sub メッセージングの機能を提供するサービス。…

Railsのコロンが2個並ぶやつ :: ←これ

短めです Railsを読んでた時に、クラスを呼び出す際にコロン2つから始まる呼び出し方をみました こんなやつ↓ ::Foo::Bar これってFoo::Barって書くのと何が違うんだろうと思って調べました Foo::Barと書くと、ファイルのある階層の中でFoo::Barを探しますが…

Rubyのobjectとselfの違い

先日、railsで継承元のclassで定義されているmethodを継承先のclassで使おうとしたらエラーになりました class parentClass def hoge return 'hoge' end end class ChildClass < ParentClass def fuga object.hoge end end これはエラーになります 正しく動…

workerとは

うちの会社はRailsでプロダクトを書いているのですが仕事中の会話の中で出てきて、 workerとresqueって違うのか?と思ったので調べました 結論からいうとまあ一緒です workerとはapplicationのリクエストサイクルの外で実行されるプロセスのことを言います r…

Rackとは

ついこの間まで「名前は聞いたことあるけど結局Rackってなんなんだろう」状態だった自分 最近仕事で触らなきゃいけなくなったので重い腰を上げてきちんと調べてみました Rackってなんだ? Rackってなんだ?と聞かれてめっちゃシンプルに答えるなら、RackはRu…

Faradayのmultipartの書き方

困っていたこと Faradayを使ってサーバーへfileをpostとしようとしていました ちなみにrequestを二回していているのはparameterがmultipart/form-dataで送信するものでなければ、application/x-www-form-urlencodedで送ってねという意味です This request mi…

RubyのTempfileの使い方、newとcreate

困ってたこと 下のコードでTempfileを作ろうとしていた readメソッドで読むと'bar'という文字列が入っていて欲しかったがファイルの中を見ると空になっていた file = Temfile.new('foo') do |f| f << 'bar' end file # => #<File:/var/folders//foo20191210-a8gjzw> file.read # => '' fileは存在し</file:/var/folders//foo20191210-a8gjzw>…