SaaS運用での大障害の思い出と対策の共有

この記事は、2021/5/27 に行われた WESEEK Tech Conference の内容です。

弊社が開発するSaaS型社内wiki・ナレッジベースサービス GROWI.cloud で、過去に発生した障害をピックアップしてご紹介します。

思い出すのもツラいところがありますが、発生した障害の中でも比較的大きいものを紹介しておりますので、
当時感じたツラさを感じてください。(^^;

記事内容と見どころ

障害に関連するシステム情報をはじめ、原因と対策は技術・運営の観点を紹介してますので、次の点が役に立つかもしれません。

  • システム可用性の向上に対するヒント
  • 同じプロダクトへの対策
  • 似た構成への対策の参考
  • 障害時の運営方針決定の参考

目次

続きを読む

GitOpsをArgoCDで学ぶ

この記事は、 2021/5/13 に行われた WESEEK Tech Conference の内容です。

ArgoCDを使用したGitOpsについてお話ししました。実際のArgoCDの設定例などを紹介しながら、デモ形式でのGitOps構築までの道のりを紹介しました。

目次

続きを読む

コスト7割減!Kubernetes本番サービス環境の運用ノウハウ

この記事は、 2021/4/22 に行われた WESEEK Tech Conference の内容です。

Google Compute Engine のプリエンプティブルインスタンスを利用したクラウド利用料を節約するお話をしました。
Google Cloud Platform 上で稼働している GROWI.cloud を実例に上げつつ、節約額、稼働率の運用実績についてもご紹介しました。

目次

続きを読む

Raspberry Piでコミュニケーションシンクロ率を上げる

この記事は、 2021/4/8 に行われた WESEEK Tech Conference の内容です。

Raspberry Pi や Arduino を使ってデバイスを作成し、社内環境の改善をするお話をしました。今回のお話は、ハードウェアについてが多めです。時間の都合でソフトウェアの話まで広げられなかったので、それはまた後日記載したいと思います。

関連記事

Raspberry Piで温度・湿度・気圧センサーと天気予報APIでペット環境を見守る

目次

続きを読む

JavaScript/Node.jsでMongoDB+Mongooseのデータマイグレーション

こちらは 「JavaScript/node.jsエンジニア必見!MongoDB+Mongoose利用時のデータマイグレーション」からの転載です。


古くは「LAMP」に代表されるような技術スタック、JavaScript 界隈では「MEAN」スタックという用語もあるくらい、JavaScript(Node.js) との組み合わせでは MongoDB がよく使われるようです。

NoSQL ではスキーマレスのためデータマイグレーションを気にせず開発することも多いわけですが、例えば一度バージョン1をリリースして既にユーザーがついているシステムを更改するような場合、後方互換を保つためにもデータマイグレーション機構は重要です。

本記事では、Node.js 環境で MongoDB および Mongoose を利用しているようなシステムにデータマイグレーション機構を導入する Tips を紹介します。

続きを読む

Dev in Container on WSL2でボリュームのパフォーマンスを比べる

こんにちは。武井です。

2020年5月末に待望の Windows 10 May 2020 Update が公開され、WESEEK, Inc. で開発中の GROWI でも WSL2 と Docker Desktop を利用して Dev in Container を実現した新しい開発スタートアップ を採用しました。

本日のエントリーでは、その開発時に利用するストレージ(Docker volume)の種類によってパフォーマンスがどれくらい変わるのかを実験した際の結果を紹介します。

取り立てて高速化のための新しい手法を試しているというわけではありませんが、昨今の node プロジェクト開発における node_modules、rails プロジェクト開発における vendor/bundle 等、依存関係ディレクトリの取り扱いの参考になれば幸いです。

目次

続きを読む

CircleCI 2.1とkubernetesで動作するアプリケーションの CI/CD 事始め

はじめに

この記事は CircleCI Advent Calendar 2019 の 19 日目の記事です。

拙稿となりますが Ruby on Rails, Vue.js によるモダン WEB アプリケーション 実践編 (その2) にて GitHub Action を使って k8s 上で動作する Ruby on Rails アプリケーションを CI/CD する Workflow を作ったので、同じ機能を CircleCI で作ってみることにします。

尚、Rails アプリケーションを前提としてますが、k8s の deployment manifest で定義されたアプリケーションであれば概ね流用できると思います。

続きを読む

イマドキの JavaScript 開発で使える、リモートデバッグとロガーの Tips (2018年版-後編)

こちらは 「イマドキの JavaScript 開発で使える、リモートデバッグとロガーの Tips (2018年版-後編)」からの転載です。

SEROKU の開発を例に、弊社で使っているリモートデバッグとロガーの Tips をご紹介します。
当記事は 2018 年、と過去の記事ですが、現在でも応用可能な Tips になっています。


案件としても OSS 成果物としても、JavaScript を利用するシチュエーションは増え続けています。まだまだ枯れた言語とは言い難い状況で、使われるバージョンも ES5 から ES7 まで進化を続け、新しい文字列リテラルや async/await のような「イマドキの JavaScript の書き方」を紹介する記事は多い中、デバッグはこうあるべきという情報は比較的少ないように思います。

本記事の前編、中編では、システム開発に於けるデバッガ、ロガーの大切さと、他の言語・フレームワークと比べた際の JavaScript 開発環境に於けるビハインドについて説明し、実際に理想的なロガーを利用する為の設定方法を紹介してきました。

本記事では JavaScript 開発時のデバッガー利用のための具体的な設定方法を紹介します。

続きを読む

ゲーム開発でCocos Creatorを触ってみた|その1

みなさんこんにちは。突然ですが Cocos Creator 知ってますか!? cocos といってもファミリーレストランではありません(笑)現在ゲームのアプリを作りたいとなった場合、いわゆるゲームエンジンを何を使うかというと、 Unity と Cocos2d-x の二つが人気の上位を占めると言える状態です。

Cocos Creator はその Cocos2d-x をベースとした、スマホ用(Web)ゲーム開発アプリ統合開発ツールです。統合開発ツールってなんのこっちゃ、って思う人は Unity と Cocos2d-x を足して2で割ったものだと思ってください(笑)

続きを読む