アクトインディ開発者ブログ

子供とお出かけ情報「いこーよ」を運営する、アクトインディ株式会社の開発者ブログです

ProxySQL入門、ProxySQLでDBサーバーの負荷分散とAuroraの高速フェイルオーバーに対応してみる

こんにちは、キエンです。 最近、DBサーバーの負荷分散とAuroraの高速フェイルオーバーの対策を調査した時、ProxySQLを検証しましたので、ご紹介します。 ProxySQLとは? ProxySQLはMySQLおよびfork(Percona ServerやMariaDBなど)用の高性能で高可用性のプ…

builderscon tokyo 2019に参加しました

こんにちは。kanenkoです。 先週末に開催されたbuilderscon tokyo 2019に参加してきたのでその感想をお伝えします! builderscon とは 公式ページによるとこんなお祭りだそうです。 ABOUT buildersconは、 「知らなかった、を聞く」 をテーマとした技術を愛…

システム開発・運用に関連する各種サービスのステータスページまとめ

2019/08/23 発生したAWSの障害事故は当社のサービスにも影響しました。 幸いサービスが長時間に渡って止まるなどの大きな影響はなかったものの、一時アクセスしにくい状態になりました。 普段、AWSがダウンするなんてことはほぼ考えないで使っているので、突…

vueでCSVダウンロードしてみました

ohataです 今のプロダクトで管理画面をもう少し充実させたいなと思っていて、 せっかくなのでチームの学びも兼ねてvueを導入していこうと思います。 ユーザー側の機能に導入する前に、利用者が制限されている管理画面から導入していくのはよくあると思います…

検索技術勉強会に登壇しました

こんにちは!!こんにちは!! moriyamaです。 表題の通り、検索技術勉強会の今夏イベントにて登壇しました! ※ 勉強会では『凡人ぷろぐらま』という名前で登壇させていただきました。 資料スライド をここにも貼っておきますね。 登壇した背景 自分が初参加した…

PWA Night #7 で「いこレポ」のPWAの取り組みを話してきました。

morishitaです。 2019/08/21 行われたPWA Night vol.7 ~PWAのミライや活用方法をみんなで考えよう~ で 「いこレポ」でのPWAで事例ということで話してきました。 pwanight.connpass.com これまでにこの関係では次のブログエントリを書きました。 tech.actin…

夏休みの工作教室「可搬なタスクボード」

morishitaです。 今回はいこーよチームで使っているタスクボードの作り方、どのように使っているかについて紹介します。 材料・道具 必要な材料は次のとおりです。 スチレンボード 付箋 マスキングテープ マグネットクリップ(オプショナル) スチールプレー…

AWS CloudFormation入門編:IAMユーザーを管理してみる

こんにちは!!こんにちは!! インフラエンジニアのyamamotoです。 AWSのCloudFormation、使ってますか? すでに当ブログでも記事になっていますが、布教のために改めて題材にしたいと思います。 これが驚くほど便利なので、だまされたと思って一度使ってみてく…

AWS CDK で IAM ユーザを作ってみる

morishitaです。 AWSのリソースを作るときにはコンソールをポチポチやるよりは Cloud Formation を使ったほうが楽に感じるようになってきました。 そんなところに aws-cdk が GA になりました。Typescript で Cloud Formation スタックが書けるということで…

GAS のライブラリを公開してみた

morishitaです。 既存のGASのプリケーションにSlackへの通知を追加したいなぁと思いました。 Incoming Webhook経由でSlackにメッセージを送るのはそんなに難しくないので、サラッと実装しても良かったのですが、汎用的な要件だしライブラリとして実装するこ…

Rubyどっちが速い?

morishitaです。 先日、Rubocop Performance の速度比較について3回に分けて書きました。 tech.actindi.net tech.actindi.net tech.actindi.net どんな言語でも多かれ少なかれあることですが、Rubyでも同じ結果を得るのに複数の実装方法があり、読みやすさ、…

Workboxのプリキャッシュの設定でハマった

morishitaです。 今回は Webpack(Webpacker)とWorkbox(Workbox webpack Plugins - GenerateSW plugin)の設定について書きます。 正確にはプリフェッチの設定というよりプリフェッチするファイルをCDNから取らせるためのURLの設定でハマりました。 多分、…

Retrofit + Kotlin Coroutines

Android版いこーよを担当しているhondaです。 Android版いこーよでは通信処理でKotlin Coroutines(以下、コルーチン)を使い始めました。 コルーチンは簡単に言うと「スレッドインスタンスのようなものであり、中断可能な計算インスタンス」と言えます。 ま…

Amplify Console の Branch Autodetect でステージング環境を自動で作り放題

morishitaです。 以前、Nuxt.js のSPAの稼働環境としてAWS Amplify Console を紹介しました。 tech.actindi.net とても便利に使っているのですが、先日、次の機能追加があり、更に便利になりました。 aws.amazon.com 早速使って見たので紹介します。 Branch …

Codebuild のランタイムのアップデートでハマった

morishitaです。 先日、別のことでハマっていたときに「ビルド環境が古いせいではないか?」と思ってしまい焦ってCodebuild のランタイムを変更したら余計にハマったという話です。 当社でのCodeBuildの利用状況 本題に入る前にアクトインディでのCodeBuild…

アプリ向けの GoogleAnalytics に替わる効果分析ツールの検討

アプリ向けの GoogleAnalytics の利用が 2019 年 10 月を持って終了する事がアナウンスされて衝撃を受けた iOS アプリエンジニアの namikata です。いこーよアプリの効果分析では、主に GoogleAnalytics のデータを元に日々の分析を行っていましたので、サー…

AWS Chatbotを触ってみた

morishitaです。 AWSで様々なサービスを使っていて、常々不便に思っていたことがあります。 それは Slackに通知できない ということです。 もちろん、Lambda を使って Slack にメッセージを送るのは、難しくないしすぐできます。実際、Cloud Watch Alert の…

ネストしたリストで Vue.Draggable を使ってみた

morishitaです。 Vue.Draggableをネストさせて利用してみたので紹介します。 Vue.Draggable とは Vue.Draggable はVueアプリケーションでドラッグドロップ操作を実現するのにとても便利なコンポーネントライブラリです。 単に編集対象のリストを表示して、そ…

Rubocop Performanceを測ってみた。後編

morishitaです。 前々回、前回から続くrubocop-performanceの指摘事項について盲従せずに確認してみるシリーズの最終回です。 前編、中編はこちらです。 tech.actindi.net tech.actindi.net 計測について 計測には BenchmarkDriver を利用しました。 Rubocop…

Rubocop Performanceを測ってみた。中編

morishitaです。 前回のエントリーの続き、rubocop-performanceの指摘事項について盲従せずに確認してみるシリーズの2回目です。 前編はこちら。 tech.actindi.net 計測について 計測には BenchmarkDriver を利用しました。 Rubocopのドキュメントに bad と…

Rubocop Performanceを測ってみた。前編

morishitaです。 以前、弊社のWebエンジニアキエンが次のエントリで紹介した prontoによる自動レビューですが、今ではほかのRailsアプリケーションにも導入して使っています。 tech.actindi.net うっかりしたコードを書くと容赦のない指摘コメントが付きます…

いこーよにWebチケットサービスをリリースしました

こんにちは、nakamuraです。もはや2ヶ月前ほどになりますが、タイトルの通り、いこーよでWebチケットが購入できるようになりました。リリース当初はまだ未実装だった機能もどんどんリリースされ、これからもますます便利になっていくサービスですので、ぜひ…

NuxtアプリケーションをJestでテストする

morishitaです。 このところNuxtのSPAを作っていました。 次のエントリで紹介したものに手を入れていたのですが、このときにはテストを書いていませんでした。 tech.actindi.net 今回はちゃんとテストも書こうと思ってやってみました。 いくつかすんなり行か…

clasp push でプッシュできないファイルがあると思ったら、仕様が変わってた

morishitaです。 最新のclaspでは .claspignore を設定しないと clasp push でプッシュされないファイルがあるよって話です。 以前自分が実装したGASのアプリケーションを機能拡張することになりました。 次のエントリで紹介したスプレッドシートをJSONにし…

AWS CodeBuildのDocker レイヤーキャッシュのハマったこと

こんにちは、キエンです。 現在、いこレポにてCodeBuildを使用してDockerイメージのビルドや自動化テストなどを実行しています。 開発効率を上げるため、CodeBuildの実行時間を改善しようと思っています。一つの改善案としてDocker レイヤーキャッシュを使用…

Nuxt.jsのネストした動的ルーティングで困ったので調べてみた

morishitaです。 SPAモードで動作するNuxtアプリケーションでネストした動的ルーティングの動作が思ったのと違ったので調べてみました。 やりたかったこと Railsのノリで次のようなパス階層をNuxt.jsでやりたいと思いました。 パス 説明 / サイトトップ。 /g…

TypescriptのGASをJestでテストする

morishitaです。 時々、業務で使うツールをGASで作ります。 これまでのものはキャンペーン対応のものなど使い捨てとまでは言わないまでも、短い運用期間を想定したものでした1。 サービスレベル的にはベータレベルですが、少し運用期間が長くなりそう、かつ…

Echo Show5 が届いたので試してみた

morishitaです。 Echo Show5が発売されました。 手元にも届いたので試してみました1。 Echo Show 5 について 2019/06/26 発売の新しいAmazon製 Alexa端末です。 1万円を切る値段で、ディスプレイ付きのEchoデバイスでは最も安いモデルになります。 新登場 Ec…

Vue.jsでWeb Componentを作ってみた

morishitaです。 先日、Web Componentついて書きました。 tech.actindi.net 多くのブラウザで動作できるようになってきていることは確認できました。 ただ、実装方法についてはもっと良い方法がないものかと思いました。 と思っていたら、Vue.jsが Web Compo…

Web Componentsを試してみた

morishitaです。 プログラムを部品化して再利用したい。 コードを書く人間にとってはいつも考えていることですし、永遠のテーマなのではないかと思います。 オブジェクト指向はクラスとしてパッケージしたコードを再利用する仕組みを提供します。関数型言語…