@johtani さんと弊社サービスの Elasticsearch について話しました(実装編1)

前回のエントリで、弊社サービス Re:lation が Elasticsearch をどういう感じで使っているのかを、主にインフラにまつわる部分を中心に書きました。 blog.ingage.jp 今回は実装に関わる部分を書いてみたいと思います。 前回の記事も含めて今回の記事につきま…

@johtani さんと弊社サービスの Elasticsearch について話しました

@kizashi1122 こと、永田です。 blog.johtani.info @johtani さんがツイートするもんだから、あいよっと返事してしまいました。 以下、@johtani さんに話したことも話してないこともツラツラと書いていこうと思います はじめに 弊社のサービスである「Re:lat…

scp コマンドにまつわる不思議な挙動を追う

こんにちは、masm11 です。 scp で大きなファイルを転送すること、ありますよね。 私も時々やるのですが、今回、ログアウトすると scp が通信しなくなる、 という妙な症状に見舞われましたので、ご紹介します。 症状 状況としては、まず、3台のコンピュータ…

ラズパイHomeKitカメラをUSBカメラに変更してみる

こんにちは。Tedです。 前回、下記のようにラズパイ4を使ってHomeKit対応カメラを作りました。 blog.ingage.jp 作成したシステムを使っていく内に、いくつか気になるところがでてきました。 気になる点 カメラの画角にて広角が足りない。 Mac, iPhoneなどか…

Rails のコネクションプールから接続を取り出す処理を追う

こんにちは、masm11 です。 弊社では PostgreSQL のデータベースを Amazon Aurora に移そうとしていますが、 フェイルオーバー時の処理が気になっています。 ググってみたところ、MySQL の情報はたくさん出てくるのですが、PostgreSQL の情報は 少なく、欲し…

UNIX ドメインソケットの接続対応表を作る

明けましておめでとうございます。masm11 です。 UNIX ドメインソケットってご存知ですか? 知らないけど実は使ってる (設定したことがある) 方も結構いらっしゃるかもしれません。 今回は、UNIX ドメインソケットをちょっとだけ便利にする自作ツールを一つご…

ラズパイ4でHomeKit対応見守りカメラを作ってみました

こんにちは。Tedです。 AppleのHomeKit対応製品は海外では充実していますが、日本ではまだまだ。そのために選択肢が少なく高価なのがネックです。 そこで今回はHomebridge + ラズパイを使って安価にHomeKitに対応した見守りカメラを作ってみました。 Homebri…

AWS で IPv6 を使う

こんにちは。masm11 です。 IP アドレスが枯渇したと何度も言われているにもかかわらず、IPv6 はなかなか広まりませんね。今回は AWS で IPv6 の設定をしてみたので、設定の手順について説明したいと思います。 前提としては、AWS アカウントがあって、VPC …

Ruby 関西にて inotify の話を発表してきました #rubykansai

永田 @kizashi1122 です。 昨日の第88回 Ruby 関西にて発表してきました。 デモは各 gem の README レベルの内容でした。 質疑応答 覚えている限り挙げておきますと、、、 常駐プログラムの監視はどうやっていますか? monit (https://mmonit.com/monit/ ) …

Emacs 上で Git を使おう!

こんにちは、masm11 です。 皆さん、Git 使ってますか? 使ってますよね? Git を使っている人はもう Emacs 人口を超えているのでは、と思っています。 一方で、Emacs ってご存知ですか? 高機能なエディタです。 ですが、最近はあまり人気がないらしいですね。…

エンコードされた国際化ドメイン名をデコードする

こんにちは。masm11 です。 国際化ドメイン名をご存知でしょうか? インゲージ.jp みたいなやつのことですね。 しかし、時々、xn--eck2as8usb.jp と表示されていることがあって、「これ、一体どこ??」 と思うことがあります。今回はこの文字列を元に戻す方法…

SFTP で chroot する方法

こんにちは、masm11 です。 実はつい先日まで SFTP で chroot ができることを知りませんでした。 そこで今回は、SFTP での chroot の設定方法についてまとめてみたいと思います。 FTP, FTPS, SFTP...? その前に、FTP にもいろいろ種類があって、混乱している…

Mix Leap Study 特別編 - レガシーをぶっつぶせ。現場でDDD! コラボカンファレンスに参加しました -- Ruby での開発に活かせるのか?

yahoo-osaka.connpass.com どうも永田(@kizashi1122)です。 このイベントに参加してきました。 参加のモチベーション 「DDD」という言葉は当然知っている。ただあんまりよくわかっていない。エリック・エヴァンスの本も読んでいない。 こんな状態で、「DDD…

自前 Redis から AWS Elasticache に移行した

どうも永田です。 弊社サービスの「リレーション」では、セッション管理やジョブキュー、一時的なデータ置き場として Redis を使っています。 最近、EC2 上に自前で構築していた Redis から AWS Elasticache に移行しました。 動機 自前で構築していた Redis…

bash スクリプトの罠

こんにちは、masm11 です。お久しぶりです。 今回は bash スクリプトの罠を一つご紹介したいと思います。 症状 以下のような bash スクリプトを作成します。 #!/bin/bash sleep 5 5秒間 sleep して終了するだけのプログラムです。 実行すると、 $ ./test.sh …

Ruby で Excel ファイルを作る

お久しぶりです。masm11 です。随分時間があいてしまいました。 以前、Python で Excel ファイルを作成する方法について書きました。 しかし弊社はやはり Ruby がメインなので、今回は Ruby で作成する方法について 紹介したいと思います。 Ruby で Excel フ…

Rails Developers Meetup 2019 に参加してきましたー

こんにちは。Re:lation のエンジニアの石田です。 先日行われた Rails Developers Meetup 2019 に行ってきました。 2日間で70近いセッションがあって、どれを選ぶかかなり迷いました。 ホント3日間にしてほしいです。。。 今回は、来月行われる Ruby Kai…

WordPress の内部 HTTPS 通信の問題を解決する

こんにちは。masm11 です。今回は WordPress に関連した話を書きたいと思います。 WordPress はテーマやプラグインがいろいろあって便利です。 テーマが特定のプラグインを必要としている場合は、テーマのインストール時に そのプラグインをインストールする…

Bit Journey さんに遊びに行ってきた

東京出張が入ったこともあり、Bit Journey さんに遊びにいってきました。 @gfx こと藤さん、@michimochi こと道川さんとランチがてら色々お話しさせていただきました。 BJさんのサービス https://kibe.la と弊社のサービスはともに SaaS というだけでなく、…

Developers Summit Kansai 2018 (デブサミ)で登壇してきました

インゲージ永田です。 event.shoeisha.jp こちらでランチスポンサーをさせていただき、登壇してきました。 長いタイトルですみません。 翔泳社の運営者サイドには割と早い段階で伝える必要があり、(仮)付きで伝えていたのですが、それがそのまま本タイトル…

Python で openpyxl を使ってみる

こんにちは。masm11 です。 Python で .xlsx ファイルを作成したかったので openpyxl に挑戦してみました。 簡単に使えましたので、その方法を紹介したいと思います。 インストールはコマンドラインで以下のようにします。 pip install openpyxl では、まず…

プログラムの出力をリダイレクトする

こんにちは、masm11 です。 今回は、プログラムの出力を操作する話を書きたいと思います。 「なんだそんなことか」と思われるかもしれませんが、 なかなか高度なこともできます。 ファイルディスクリプタとは プログラムの出力を操作するには「ファイルディ…

Let's Encrypt でワイルドカード証明書を取得する

(2018/07/23 追記しました) こんにちは、masm11 です。 弊社では社内でいくつものサブドメインを使っています。abc.example.com, def.example.com, ghi.example.com, ... そしていずれも HTTPS でアクセスできるようにするため、Let's Encrypt で証明書を取…

Ruby 関西でマルチテナントアプリの発表してきました

rubykansai.doorkeeper.jp テーマが同じだけに、 id:gfx さんの railsdmでマルチテナント・ウェブアプリの話をしました - Islands in the byte stream と、内容が似通ってしまいましたが、自分なりにまとめてみました。 運用が始まり、ユーザ(テナント)が…

tensorflow が遅くなる話

masm11 です。 最近、tensorflow を使って機械学習しています。 tensorflow がだんだん遅くなることがあって、気づいたことがあるので、書いてみます。 ただし、以下は私の想像であることをはじめにお断りしておきます。 まず、 a = tf.Variable(...) b = tf…

そういえばオフィス移転しましたー。

先週金曜日オフィスを移転しました。 同じ大阪の梅田ですが、インキュベーションオフィスから自前のオフィスになりました。 広くなったのはいいけど、まだ空き机がいっぱいです。 エンジニア募集してまーす! recruit.ingage.co.jp

Elasticsearch v2.3 から v5.6 にバージョンアップしました

永田です。 ようやく。 この前、本番の #elasticsearch のバージョンを 2.X から 5.X にした。色々大変だったので、またブログに書こうっと。— Kizashi (Railsエンジニア募集中) (@kizashi1122) 2018年3月6日 先日おこなった Elasticsearch のバージョンア…

グラフの平行移動について

こんにちは、masm11 です。 ブログに数式が書けるとのことで、今回はプログラミングから離れて、ガチ数学の話をしたいと思います。 といっても難しい話はしません。 高校の数学で、 を式変形して の形にして、グラフの放物線の頂点が にある、という計算を何…

memcached を監視する

永田です。 まずはこちら。 blog.ingage.jp よろしくお願いします。 さて弊社ではとあるデータのキャッシュには memcached を使っています。 めちゃくちゃ速いので助かっています。 保存するデータの容量はそんなに多くはなくて、 /etc/conf.d/memcached に…

bash script で並列度を制限しながら並列処理する

masm11 です。 bash script で、時間がかかる仕事を複数の CPU core を有効活用して処理したくなったので、今回はその方法を考えてみました。 要件は以下の通りです。 bash script で書く。 時間のかかる仕事やあまりかからない仕事がたくさんある。 各仕事…