タグ

ブックマーク / techracho.bpsinc.jp (2)

  • Ruby: mallocでマルチスレッドプログラムのメモリが倍増する理由(翻訳)|TechRacho by BPS株式会社

    要約 メモリ断片化は測定や診断が困難ですが、驚くほど簡単に修正できることもあります。マルチスレッドのCRubyプログラム(mallocのスレッド単位メモリアリーナ)におけるメモリ断片化の原因を追ってみましょう。記事のボリュームは3343語、20分程度です。 単純な設定変更だけで問題を完全に解決できることはめったにありません。 私の顧客のSidekiqプロセスが大量のメモリを消費していたことがありました(1プロセスあたり1 GB程度)。開始当初の各プロセスは300MB程度でしたが、時間の経過とともにじわじわと肥大化してほぼギガバイトレベルにまで達したところで落ち着き始めました。 私は顧客にMALLOC_ARENA_MAXというたった1つの環境変数の変更を依頼しました。「2に設定してください」と。 プロセス再起動後、「じわじわ肥大化」現象はピタリと止みました。プロセスのメモリ使用量は以前の半

    Ruby: mallocでマルチスレッドプログラムのメモリが倍増する理由(翻訳)|TechRacho by BPS株式会社
  • Unicodeにおける日本の元号の開始日・終了日の定義について|TechRacho by BPS株式会社

    天皇陛下の生前譲位の話題がしばらく前に上がりました。 技術分野でも、改元されると元号を扱っているプログラムを改修する必要が出るとか、元号の「㍻」のような合字はブラウザで縦書きのときに縦に積みなおした合字にするのか、など様々な話題があります。 今回はその中でも、もっと基的な部分についてチェックしてみようと思います。 元号の開始日付と終了日付は正しくないのではないかという指摘 この問題に気付いたのは「Unicode Standardの元号の説明の問題は変わっていなかった」という個人ブログの記事です。Unicode Standardにおける日の各元号の開始日付・終了日付がおかしい、という指摘ですね。 Unicode Standardでの定義 そこで、元号に関する説明をUnicodeコンソーシアムのサイトでチェックしてみました。 http://www.unicode.org/standard/

    Unicodeにおける日本の元号の開始日・終了日の定義について|TechRacho by BPS株式会社
  • 1