ブックマーク / blog.cybozu.io (5)

  • 分散ユーザー管理システム「etcdpasswd」の紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリ基盤チーム兼Necoプロジェクト所属の @ueokande です。 日はNecoで開発しているUNIXユーザーの管理ツールである「etcdpasswd」を紹介します。 github.com etcdpasswdは、etcdをバックエンドに持つ分散型のユーザー管理システムです。 etcdpasswdは自律型の分散システムで、一時的にホストがダウンしても、次回起動時にetcdのユーザーを参照して同期します。 etcdpasswdはLDAPのようなNSS (Name Service Switch) が外部サービスに問い合わせるのではなく、etcdpasswdが各ホストにある /etc/passwd を更新します。 なぜetcdpasswdなのか 現在のcybozu.comデータセンターでは、各ホストのユーザー追加・更新は、MySQLでユーザー管理されており、管理者が適用したタ

    分散ユーザー管理システム「etcdpasswd」の紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ
    albacore
    albacore 2018/10/05
  • さようなら ImageMagick - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。 一般的な Web アプリケーションがそうであるように、サイボウズのグループウェアにも画像をサムネイルで表示する機能があります。サイボウズでは日々数万件やそれ以上のサムネイルを生成しており、それらは全て ImageMagick によって生成されていました。 そこで得た知見はこちらの記事で公開されています。 blog.cybozu.io しかし現在、サイボウズから ImageMagick は消え去りました。その理由と、我々が取った代替手段について紹介します。 ImageMagick を外した理由 言うまでもなく ImageMagick は優秀なツールで、画像変換に関する何らかのサービスやツールを作る場合には採用の第一候補になることでしょう。あらゆる画像フォーマットに対応し、出力画像をきめ細かに制御できる膨大なオプシ

    さようなら ImageMagick - Cybozu Inside Out | サイボウズエンジニアのブログ
    albacore
    albacore 2018/08/21
  • 福岡・広島に開発拠点を設立します - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、西日開発部長の岡田(@y_okady)です。2018年1月1日付で大阪開発部と松山開発部を統合し、西日開発部を設立しました。そして、福岡と広島の開発拠点設立を進めていくことになりました。 私が2014年に大阪にUターンしてから3年半が経ち、住みたい場所で働けることによるQoLの向上を日々実感しています。大阪最高やでホンマ。 サイボウズでは「100人100通りの働き方」を理想に掲げており、みんな住みたい場所で働けばええやんという考え方が根付いています。一方で、住みたい場所にオフィスがないと「仕事を諦めて移住する」か「移住を諦めて仕事を続ける」かの選択を迫られるのが現実です。私は幸運にも大阪開発拠点設立のタイミングで移住が叶いましたが、より多くの人が住みたい場所で働けるように、西日開発部の設立、そして福岡と広島に開発拠点を設立することを決めました。 働く場所の自由化 サイボウ

    福岡・広島に開発拠点を設立します - Cybozu Inside Out | サイボウズエンジニアのブログ
    albacore
    albacore 2018/01/30
    サイボウズさんも福岡来るのか
  • サイボウズ Live アクセス障害の裏で起こっていたこと - Cybozu Inside Out | サイボウズエンジニアのブログ

    どうも!アプリケーション基盤チームの@yokotaso です。 2017/11/13 にサイボウズLiveの長時間にわたる障害が発生しご迷惑をおかけしました。 技術的な調査が一段落し、対応を進めております。 障害にいたった原因と対応のお話をさせていただきます。 簡単なまとめ Java8u152以降で、CPU負荷が高まる現象 Java標準のデシリアライズとSecurity Managerの相性が悪くなった 解決策は現時点では存在しない。サイボウズLiveでは、Java標準のデシリアライズをやめる準備段階 障害発生時の状況 障害発生の数時間前に、運用マシンのメンテナンスを行っておりました。 Javaのマイナーアップデート カーネルのアップデート その他、設定ファイルなどの更新 障害発生時には次のような現象が見られました。 JavaプロセスがCPU高負荷状態 MySQLに大量のロック及びエラーが

    サイボウズ Live アクセス障害の裏で起こっていたこと - Cybozu Inside Out | サイボウズエンジニアのブログ
    albacore
    albacore 2017/12/28
    あぁ...辛そう...
  • x86/x64における小数から整数への丸め処理命令の変遷 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、サイボウズ・ラボの光成です。 今回は小数を整数に丸める処理に関して、x86/x64における命令がどのように変わってきたかを紹介します。 C++における小数から整数への変換ルール まずC++における浮動小数点数型(float, double)を整数型(int, int64_tなど)に丸めるルールをおさらいしましょう。 floating-integral conversionsによるとその変換では小数点部分を取り除きます。 つまり1.5, 2.3, -2.9をintにキャストするとそれぞれ1, 2, -2になります。 なお整数型に入りきらないときの挙動は未定義です。 4種類の丸め規則 x86の浮動小数点数を扱うFPUは丸め処理のモードを4種類持ちます。 これはIEEE標準754の丸めモードの規則に従ったものです。 最近接丸め(round to nearest(even) : RN)

    x86/x64における小数から整数への丸め処理命令の変遷 - Cybozu Inside Out | サイボウズエンジニアのブログ
    albacore
    albacore 2017/08/15
  • 1