ブックマーク / www.na3.jp (15)

  • MySQL で使用するメモリサイズの見積もり - 元RX-7乗りの適当な日々

    最近、MySQLのパラメータの調整をする機会があったのですが、特定のパラメータを変更した際に、メモリの消費量にどう影響するのか、というのを調査する際に、インターネッツを彷徨ったところ、サイトによって書いてあることにバラつきがあったので、自分でもまとめてみることにした。 結論から書くと、参考にしたのは以下のオライリーの書籍「MySQLトラブルシューティング」で、記述が一番わかりやすく書かれていた。 このエントリは、この書籍の 「3.9.3 オプションの安全値を計算する」 にて記載がある内容をまとめたものになる。 MySQLトラブルシューティング 作者:Sveta SmirnovaオライリージャパンAmazon 著者について Sveta Smirnova(スヴェータ・スミルノヴァ): OracleMySQLサポートグループ・バグ検証グループの主席テクニカルサポートエンジニアとして毎日MySQ

    MySQL で使用するメモリサイズの見積もり - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2021/06/21
  • 大容量ファイルのSCP転送を高速にする方法 (ver.2019) - 元RX-7乗りの適当な日々

    9年ほど前にこういうエントリを書いたのですが、まだそれなりに見られているようなので、最近はどうなのかなーと、再検証・再計測してみたエントリーです。 ↑の過去エントリにも記載しているのですが、SSH/SCP では暗号化方式(強度)によってファイル転送のスループットが変わります。 もちろん、オープンなネットワークでやるにはセキュリティがー、とか、インターナルでやるなら、そもそも netcat (nc) でいいやんー、とか、そもそも大量にファイル数あるなら、事前に固めてしまえー、とか色々あると思うのですが、エントリではあくまで暗号化方式 の違いでスループットがどう変化するのか、それはどのくらいスループットが出るのか、を確認したログとなります。 ベンチマークで利用した環境 Google Compute Engine (GCE) の インスタンス (n1-highcpu-4) を2台準備しました

    大容量ファイルのSCP転送を高速にする方法 (ver.2019) - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2019/11/12
  • xfsファイルシステムのデフラグ方法とパフォーマンスについて - 元RX-7乗りの適当な日々

    4/1のエントリで、頑張ってブログを書く頻度を上げます、と言ったまま4日が経過し、このままだとただのエイプリルフールの戯言になりかねないと思ったので、ちょっと調べてみたログを残します。 XFSの設計はエクステントベースで、ファイルの内容は1つ以上のエクステントと呼ばれる連続的な領域内に保存されている。XFSファイルシステム内のファイルは、ユーザーの使い方によってはフラグメント化することがあるが、xfs_fsrユーティリティを使ってそのようなファイルをデフラグすることでファイルアクセスについてのシステムの性能を向上させることができる。 xfs_fsrを使ってXFSファイルシステムをベストの状態で使用する (1/2) - ITmedia エンタープライズ ココの部分の使い方を実際に試してみることにしました。 まず、用意したのは、xfsファイルシステムで2年くらい運用して役目を終えた、とあるサー

    xfsファイルシステムのデフラグ方法とパフォーマンスについて - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2017/02/08
  • デブサミ2016「プロダクト開発におけるプロダクトマネージャーの役割とは」講演メモ #devsumi - 元RX-7乗りの適当な日々

    楽しみにしていたセッションの1つ。メモメモ。 「プロダクト開発におけるプロダクトマネージャーの役割とは」 丹野 瑞紀 氏 (株)ビズリーチ サービス企画部 部長 講演のコンセプト 「コンセプト」は、ターゲットと提供価値がセットになっているもの ターゲット ITエンジニアとして次のキャリアを模索 提供価値 PMの役割と求められるスキルの理解 プロダクトマネジメントとは あるプロダクトを市場に出荷していくお仕事 プロダクトに求められる要件 ユーザ課題が解決できる 技術的に実現可能 ビジネスとして継続可能 PMはそれぞれを理解してプロダクトを作っていく プロダクト開発のプロセス 市場調査 市場機会の発見 事業計画 製品コンセプト立案 製品開発 マーケティング戦略実案 市場の投入 PR・プロモーション 結果の評価 よくある例としては、 上の3つは、 経営企画室の仕事 次の2つは、テクニカルPM

    デブサミ2016「プロダクト開発におけるプロダクトマネージャーの役割とは」講演メモ #devsumi - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2016/02/20
  • デブサミ2016「大規模Redisサーバ縮小化の戦い」講演メモ #devsumi - 元RX-7乗りの適当な日々

    メモメモ。泥臭い話で面白かったです。 「大規模Redisサーバ縮小化の戦い」 駒井 祐人 氏 (株)アカツキ ゲームのサーバサイド機能開発、インフラの設計構築・保守運用 Redisとは インメモリDB 5種類のキーバリューのデータ型 ファイル永続化オプション システムの問題点 EC2サーバが20台に対して、AWSのElasticCache(Redis)が64台あった なぜ64台あったかというと、リリース直後にRedisの負荷問題があり、8台 => 64台になった 調査するとkeys("")を実行している箇所があった 当然お金がかかる(cache.m3.large * 64台 = 約135万円/月) 冗長化しんどいし、設定ファイルの記載も辛い ので、縮小化と冗長化の対処をしたい 現状整理 格納されているデータ フレンド情報、セール情報、ランキング情報 キーの件数 1サーバに8DB、1DBあた

    デブサミ2016「大規模Redisサーバ縮小化の戦い」講演メモ #devsumi - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2016/02/18
  • 認証・認可制御している Jenkins CLI で get-job や update-job の時だけ "No such job" と言われちゃう場合 - 元RX-7乗りの適当な日々

    この前エントリにブログ書いてなさすぎるから、12月は1人アドベントカレンダーやるかーと書いて、気付くと 12/10 になっていました。進捗全然ダメです。 最近、慣れない Jenkins 氏と久しぶりに戯れているのですが、昨日勉強したメモについて残しておきます。 ちなみに環境は、 Jenkins 1.640 / Java 7 でございます。 前提 前提として、Jenkinsの検証環境では、ユーザ単位での認証に加えて、ジョブに対する認可制御を加えています。 開発ユーザは、このジョブ(ビルド)を編集したり実行できるけど、オペレータユーザは実行しかできない、匿名ユーザはジョブの存在自体も見えない、とか、そういう感じ。 で、そういう環境で、Jenkins CLIからジョブの更新などを行おうとすると、指定したユーザの認証がうまく通っていそうにも関わらず、ジョブが無いとエラーが返されるというケース。 状

    認証・認可制御している Jenkins CLI で get-job や update-job の時だけ "No such job" と言われちゃう場合 - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/12/10
  • crontabでの「%」の扱い - 元RX-7乗りの適当な日々

    昔、遭遇した気もするが、また忘れていたのでメモ。多分、常識の範疇w crontabにこんな感じで設定を仕込もうとしたんですね。 */5 * * * * /usr/bin/iotop -b -k -t -n 2 -o >> /var/log/iotop/"`hostname`_`date '+%F_%H'`" すると、「メールが /var/spool/mail/root にあります」とメールが届きまして、、、 /bin/sh: -c: line 0: unexpected EOF while looking for matching ``' /bin/sh: -c: line 1: syntax error: unexpected end of fileこんな感じで怒られたわけです。 あんれー?と思って、"/var/log/cron"を確認すると、 CROND[17743]: (root)

    crontabでの「%」の扱い - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/06/12
  • 「サーバにログインしない・させないサービス運用」講演メモ (AWS Summit Tokyo 2015) #AWSSummit - 元RX-7乗りの適当な日々

    メモった。間違い等あるかもしれませんが、その場合はごめんなさい。 Gunosy 2011.09リリース 現在900万DL突破 エンジニアは現在26名 2014.11は16名、2013.11は7名、2012.11は4名 クライアント+QAは5名、Web+APIまわりは5名、インフラは1名とかとか Gunosyの開発 API: Golang パートナー・広告主への管理画面: Rails バッチ・内部向け: Django or Python バージョン管理: GitHub 構成管理・デプロイ: Chef (+OpsWorks) 開発の特徴 小さい単位で作ってすぐ捨てる マイクロサービス的な 機能が増えすぎたら分割 メンテするよりリプレース サーバにログインされて困る事 信頼できないビルド・デプロイ 開発者の手元でビルドすると、どの断面なのかわからずトラッキングできない プロダクションに上がってい

    「サーバにログインしない・させないサービス運用」講演メモ (AWS Summit Tokyo 2015) #AWSSummit - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/06/04
  • 「開発生産性を上げるためのデプロイ戦略」講演メモ (AWS Summit Tokyo 2015) #AWSSummit - 元RX-7乗りの適当な日々

    メモった。間違い等あるかもしれませんが、その場合はごめんなさい。 デプロイとは あらゆるコードやバイナリ、アセットなどの配布をデプロイと定義 インフラストラクチャーの構築はプロビジョニングとする なぜデプロイに注目する必要があるのか AWSのイノベーションのペース 合計1000以上の新サービス、新機能をリリース フィードバックループを回し続け、顧客の期待に応え続ける Amazon.comのデプロイ 平日のデプロイ間隔 11.6秒 1時間あたりの最高デプロイ回数 1079回 1回のデプロイで平均10000台のホストに変更を加える 1回のデプロイで最大30000台のホストへの変更 Two pizzaルール 1チームの大きさは、2枚のピザで全員お腹いっぱいになれる規模 それを保って頻繁にデプロイできるレベルに 作った人が運用をやるポリシー クロスファンクショナルチーム 各チームメンバーが何ができ

    「開発生産性を上げるためのデプロイ戦略」講演メモ (AWS Summit Tokyo 2015) #AWSSummit - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/06/03
  • 「Amazon RDS for Aurora Deep Dive」講演メモ (AWS Summit Tokyo 2015) #AWSSummit - 元RX-7乗りの適当な日々

    メモったので、貼付けておきます。 間違い等あるかもしれませんが、その場合はごめんなさい。 Auroraは現在Preview中 頻繁にデプロイ・機能変更が行われている 今日の話の内容は6/2時点のもの フルマネージドなDB データベースを数分で作成可能 自動でパッチの適用 1クリックでスケールアウト S3への継続的バックアップ Amazon Aurora AWSがクラウド時代にRDBを作るとするとどうなるかを1から考えた エンタープライズグレードの可用性とOSSレベルのコストを両立 現在はLimited Preview Virginia/Oregon/Irelandリージョンで動いている 5/20よりpreviewがプロダクション環境へ移行 Beta環境はクローズ AuroraのPricing 現在は、r3シリーズのみでの提供 ライセンス料金は不要 MySQLと100%互換なので、ロックイン

    「Amazon RDS for Aurora Deep Dive」講演メモ (AWS Summit Tokyo 2015) #AWSSummit - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/06/02
  • Linuxのbonding(802.3ad)で発生したトラフィックの偏りをなおした話 - 元RX-7乗りの適当な日々

    はじめに とある環境の話。internalのLinuxサーバでbonding(ボンディング)を組んでいました。modeは4。802.3ad(LACP)準拠のリンクアグリケーションなモードです。 ちなみに、bondingとは・・・ ちなみに、"bonding"とは、ネットワークインターフェースを冗長化(または負荷分散)する方法で、複数のNICを束ねて1に見せることができます。チーミング(teaming)と呼ばれたりもしますね。 で、Linuxではbondingにもいくつかモードがあって、複数のポリシーの中から選択することができます。 balance-rr 又は 0 - 耐障害性とロードバランシングのためラウンドロビンポリシーを設定します。利用可能な第 1 のインターフェースからそれぞれのボンディングされたスレーブインターフェースで送受信が順次行われます。 active-backup 又は

    Linuxのbonding(802.3ad)で発生したトラフィックの偏りをなおした話 - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/03/05
    Linuxのbonding(802.3ad)で発生したトラフィックの偏りをなおした話 - RX-7乗りの適当な日々
  • サーバの状態のテスティングツールである「Serverspec」の書籍を読んだ - 元RX-7乗りの適当な日々

    サーバの状態を自動でチェックするためのテスティングツールである「Serverspec」。開発者のmizzyさんが書き下ろした書籍が出版されるということで、著者/出版社の方々からご献いただきました。ありがとうございます! Serverspec 作者: 宮下剛輔出版社/メーカー: オライリージャパン発売日: 2015/01/17メディア: 単行(ソフトカバー)この商品を含むブログ (6件) を見る いきなりですが余談 当方も、サーバまわりのプロビジョニングツールとして、2008年頃よりPuppet、2010年頃よりChefを使っていますが、特にChefを使ってからは、それなりの規模の環境で複数名でメンテナンスするケースが多かったので、テストについてはそれなりに頭を悩ませました。 使い始めの頃は、おはずかしながらテストなど全く無く、仮想環境でチェックしていた(普通に目見の他、出力された文字列

    サーバの状態のテスティングツールである「Serverspec」の書籍を読んだ - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/01/16
  • Linuxで2つのファイルの共通行を出力する - 元RX-7乗りの適当な日々

    機会があったので、調べてみました。 2ファイルの差分はdiffコマンドで取るけど、その逆の共通している部分はどうやって取得するのか。エレガントなやり方はやっぱりgrepコマンドを使うのかしら? 前提 $ diff -c5 {a,b}.txt *** a.txt 2013-08-28 18:54:49.293055071 +0900 --- b.txt 2013-08-28 18:53:58.517693404 +0900 *************** *** 1,6 **** 1 - 2 3 5 5 6 --- 1,6 ---- 1 3 + 4 5 5 6こういう2つのファイルがあったとして・・・ grepで $ grep -x -f {a,b}.txt 1 3 5 5 6grepコマンドの"-x"オプションを使うと、こんな感じで、2ファイルの共通部分が出力される。 -x, --line

    Linuxで2つのファイルの共通行を出力する - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2015/01/14
  • DNSラウンドロビンを使った時にアクセス・負荷が偏る話 - 元RX-7乗りの適当な日々

    昨日に続き、アクセスが偏る系のエントリです。 なにかと議論のネタになるDNSラウンドロビンですが、今日はDNSラウンドロビンを使った時に、各IPアドレスにくるリクエスト数に偏りが出るという話。 DNSラウンドロビンで設定されているFQDNに、コマンドラインで"host"とか"nslookup"のコマンドを何度か実行すると、返ってくるIPアドレスリストの順序が入れ替わっていくことが確認できると思います。 基的に、クライアントはそのIPアドレスリストの上(最初)からアクセスを行うため、これによって(一応)負荷分散が実現できるはずですが、特定環境のクライアントでは、ラウンドロビンとはならずに必ず特定のIPアドレスにアクセスするケースがあるのです。(既知の事実ですが。) この事は、Wikipediaの該当ページにも記載されています。 主にIPv6における宛先アドレス選択アルゴリズムとして定義され

    DNSラウンドロビンを使った時にアクセス・負荷が偏る話 - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2014/12/01
  • Linuxでシステムに対して意図的に高負荷をかけたい場合 - 元RX-7乗りの適当な日々

    今更感があるかもしれませんが紹介。 stressコマンドを使うと、CPUやメモリ、ディスクに対して意図的に負荷を与えることができます。 どこで使うかというと、、、高負荷時のシステムの挙動を見たい場合、AutoScaling等の負荷状況に応じて自動でスケールアップ/アウトさせるための仕組みのテストをしたい場合、部屋が寒いときにPCに発熱させたい場合wwwなどで使えるのかな、と。 Stressをインストール CentOSやRedHatの場合は、DAG(rpmforge)のリポジトリがあるので、ここのパッケージからインストールしましょう。 DAGをyumのリポジトリに追加する場合は、以下リンクから(CentOS5[x86_64]系の2010/05/14時点の最新版は)"rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm"をダウンロードして、rpmインストールしま

    Linuxでシステムに対して意図的に高負荷をかけたい場合 - 元RX-7乗りの適当な日々
    nishitki
    nishitki 2014/10/15
  • 1