タグ

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

  • アプリが依存している Swift Package ライブラリのライセンスを一覧表示するためにライブラリを作りました - Cybozu Inside Out | サイボウズエンジニアのブログ

    はじめに こんにちは、モバイルエンジニアの中村(@Kyomesuke)です。 私が担当している kintone のモバイルアプリ(iOS)では、現在脱レガシーを目指して幾つかの課題に取り組んでいます。 その一つとして、パッケージマネージャーを CocoaPods から Swift Package Manager に移行するリファクタリングに挑戦していたのですが、この移行に際して一つ課題がありました。 kintone モバイルやサイボウズ Office 新着通知アプリなど、サイボウズのモバイルアプリには依存している外部ライブラリのライセンスを一覧表示する画面があるのですが、これまでその機能をAcknowListというライブラリを使用して実現していました。 しかし AcknowList は CocoaPods にしか対応していないため、Swift Package Manager に対応するため

    アプリが依存している Swift Package ライブラリのライセンスを一覧表示するためにライブラリを作りました - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 【RxSwift】Singleton で DisposeBag を使うことの考察 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。モバイル開発チームに所属している小島です。 弊社のプロダクトでもようやく RxSwift を使い始めています。今回は RxSwift の Disposable について思うところがあったので、メモしておきます。 Disposable と DisposeBag Observable を subscribe すると、Disposable を返してきます。 Disposable は、subscribe したものを unsubscribe するための仕組みで、これを無視すると subscribe した処理が永遠に解放されずにメモリリークやリソースリークに繋がる恐れがあります。 なので、とりあえず DisposeBag に入れておけばいいよというのはよく見かけます。 class SomeClass { private let disposeBag = DisposeBag() priva

    【RxSwift】Singleton で DisposeBag を使うことの考察 - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 遅いッ!遅すぎるッ!Java の正規表現のお話。 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、ミドルウェア開発チームの青木です。 先日、アプリケーションサーバーが応答を返さなくなるトラブルに遭遇しました。 今回はその時のトラブルの原因と対策の顛末についてお話しようと思います。 現象 アプリケーションサーバーが突如応答を返さなくなりました。 現象が発生したアプリケーションサーバーのスタックトレースを見ると、あるスレッドの先頭が上記のようになっていました。 "qtp258153142-514386" prio=10 tid=0x00007f40b8dbf000 nid=0x7b4e runnable [0x00007f415ccb0000] java.lang.Thread.State: RUNNABLE at java.util.regex.Pattern$Loop.match(Pattern.java:4692) at java.util.regex.Pattern$G

    遅いッ!遅すぎるッ!Java の正規表現のお話。 - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 完璧な監視システムの作り方 in cybozu.com - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、Hazama チームの萩原(@hagifoo)です。 ハードウェアは故障し、ソフトウェアにはバグがあり、運用ではミスがおきるもの。もちろん、障害が発生しないのが理想ですが人間が作ったものに完璧はありません。そこで、障害の前兆や発生を捉え、その詳細を運用チームに知らせるための監視システムが必要となります。cybozu.com でも以下のようにありとあらゆるものを監視するシステムを構築し日夜監視を行なっています。 今回は、そんな cybozu.com の監視(モニタリング)システムについてお話しします。 cybozu.com と障害 監視システムの設計 3つの監視 外形監視 症状監視・リソース監視 ログ監視 その他の監視 モニタリングフレームワーク 誰が監視者を監視するのか? まとめ cybozu.com と障害 まずは、監視対象である cybzou.com について説明します。

    完璧な監視システムの作り方 in cybozu.com - Cybozu Inside Out | サイボウズエンジニアのブログ
  • Go のチュートリアルに足りないこと - Cybozu Inside Out | サイボウズエンジニアのブログ

    ちょうど今日から夏休みの @ymmt2005 こと山泰宇です。こんにちは。 夏休みなのにブログを書いている点は突っ込まないでください。 今回は Go を初めて業務に使ったときに躓いた点をまとめた資料を紹介します。これから使いだそうと考えている方は、これを読めば1日分位の調査は省けるかと思います。 ご存知の方も多いと思いますが、GoGoogleC++ が従来担当していたシステム開発用の言語として開発され、2009 年に公開されたプログラミング言語です。ここ最近広く使われだしたようで、一昨日の Hacker News では Go の記事が乱立していました。 cybozu.com でも Go を開発言語のひとつに採用しようとして、まず Python で書かれていたある TCP のクライアント・サーバープログラムを Go で書き直してみました。型どおりに公式のチュートリアルをこなし、

    Go のチュートリアルに足りないこと - Cybozu Inside Out | サイボウズエンジニアのブログ
  • yrmcds 0.9.0 リリース - Cybozu Inside Out | サイボウズエンジニアのブログ

    @ymmt2005 こと山泰宇です。 今回は memcached 互換で冗長構成を簡単に組める自社製 KVS である yrmcds のリリースをご案内します。 ... この Redis 全盛なご時世になんで?とか、repcached や Kyoto Tycoon があるじゃない、といったツッコミの嵐が聞えてきそうです。わかってます、わかってますから物を投げないで! 順を追って説明しますので、批判はそれからにしてください! 何が欲しいのか 私は日頃 cybozu.com のインフラで動作するソフトウェアを開発しています。リリース後もうすぐ2年になりますが、お蔭様で 4,000 社以上にご利用いただくまでになりました。商売繁盛で嬉しいのですが、運用側は日々増えるデータとアクセスを捌くべく奮闘しています。 ここのところ問題になっていたのが、MySQL に保存しているセッション情報でした。アプリ

    yrmcds 0.9.0 リリース - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 松山開発部とVim - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。松山開発部の矢野です。 今回は「松山開発部とVim」というテーマでお送りします。 松山開発部では サイボウズ Office や、メールワイズといった製品を開発しています。 操る言語は主に C++, HTML, CSS, Javascript です。 CGI部分のコーディングには Visual Studio を使っているのですが、ファイルの編集方法に縛りはないので、各個人で使っているエディタは違います。 常用しているエディタについてインタビューしたところ、秀丸、Sakura Editor、gPad、Mery、Notepad++などなど、実に国際色豊かな結果となりました。ちなみに、すべてを Visual Studio で編集するという猛者もいます。 なんと松山開発部には Vim を常用しているのは二人しかいません。 多様な業務の都合上、Linuxに触れる機会もあるというのに、これで

    松山開発部とVim - Cybozu Inside Out | サイボウズエンジニアのブログ
  • jQueryの未来に備える - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、kintoneを作っているエンジニアの佐藤鉄平(@teppeis)です。先日10/24に発売されたWEB+DB PRESS Vol.71のJavaScript連載で「プログラマのためのjQuery再入門」という記事を書かせて頂きました。 ワンランク上のjQuery使いを目指す方のために、こんな内容になっています。 パフォーマンスアップの秘訣 Sizzleの仕組みとセレクタの高速化 on/offによる新しいイベント制御API Deferredを使った非同期処理 最新版の1.8.2をもとに書いたので、1.4あたりでjQueryに入門した方の知識のブラッシュアップにもオススメです。是非ご覧ください。 これでもう「jQueryは甘え」なんて言わせません! jQuery 1.9で削除されるかもしれないAPIたち さて、jQueryの次期バージョン1.9が来年前半に計画されています。 1.

    jQueryの未来に備える - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 1