タグ

tuningに関するtvskのブックマーク (23)

  • MySQLで論理削除と正しく付き合う方法

    24. 削除 フラグ︖ というかそもそも論理 削除 とか 削除 フラグなんていうか ら話が掴みにくくなる スーパー非表⽰フラグとか表⽰ステータスとかにすればいいんじゃ ね︖ - そうすれば、それはレコードの 属性 の⼀つなので、リレーショナル モデル的に納得がいく 運営のみ閲覧可能フラグとかユーザー非表⽰フラグとかでもいい ステータスならENUM(ʻNOT̲DELETEDʼ, ʻDELETED̲BY̲USERʼ, ʻDELETED̲BECAUSE̲DMCAʼ, ʻDELETED̲BECAUSE̲PORNʼ, ..)とか︖ ただし”display̲status <> ʻNOT̲DELETEDʼ“とかやると死ねる。 とはいえそんなクエリー流すの管理画⾯だけであるべきなので、テーブルスキャンく らいは覚悟しろという気でいる。 - 23/33 26. 削除フラグのインデックス そして全ての(ユーザ

    MySQLで論理削除と正しく付き合う方法
    tvsk
    tvsk 2024/04/17
    論理削除
  • 雑なMySQLパフォーマンスチューニング

    26. EXPLAIN mysql> EXPLAIN SELECT * FROM table_1 a JOIN `table_2` s ON a.user_id=s.`user_id` AND s.site_i d=120 WHERE app_id=8250G *************************** 1. row *************************** id: 1 select_type: SIMPLE table: a type: ref possible_keys: PRIMARY,ix_table_1,ix2_table_2,ix3_table_1,idx_table_1_06,idx_table_1_07,idx_t able_1_09 key: idx_table_1_06 key_len: 4 ref: const rows: 13496 Ext

    雑なMySQLパフォーマンスチューニング
  • ネットワーク、サーバー、クライアントの性能検査

  • VPNスループット | OpenVPN.JP

    OpenVPNのスループットは、[1] サーバーとクライアントのスペック、[2] 使用している回線、[3] OpenVPNの設定値、の3つの要素が主に関係します。 サーバーとクライアントのスペック OpenVPNでは通信の暗号化や署名処理をCPUを使って行うため、特にVPNサーバーのスペックがスループットに直接影響を与えます。高いスループットを出したい場合は、できるだけ高いスペック(CPU)のPCVPNサーバーにすると良いでしょう。また、AES-NIが使用できる場合にはさらにスループットの向上が期待できます。 OpenVPNの暗号化/署名処理はOpenSSLをベースにしているため、OpenSSLの処理速度とOpenVPNのスループットは大きく関係します。OpenSSLには処理速度を測定するためのコマンドラインオプションがありますので( openssl speed )、この測定結果も重要な

    tvsk
    tvsk 2021/12/06
    VPNスループットに対する支配的な要因
  • ネットワーク/ストレージの処理能力をチェックするためのベンチマークツール 2ページ | さくらのナレッジ

    サーバー上でさまざまなサービスを構築する前に、そのサーバーの処理能力を把握しておくことは重要だ。特にネットワークの帯域やストレージの速度といったリソースはサービスの品質に大きく関わってくる。そこで、今回はこれらの性能を調査するためのベンチマークツールやその使い方を紹介する。 ネットワークの性能を調査するベンチマークツール まずはネットワーク関連の性能を調査するベンチマークについて紹介しよう。ネットワークの性能といっても、その指標は次のように複数ある。 スループット(速度、帯域幅) レイテンシ(遅延) パケットロス(損失パケット) まず1つめは、スループット(ネットワークの速度)だ。帯域幅などとも呼ばれるが、ネットワークの性能としてもっとも重視されるのはこれだろう。ネットワークの速度が早ければそれだけ多くの情報をやり取りできるし、またより多くの接続に対して迅速に反応できるようになる。通常スル

    ネットワーク/ストレージの処理能力をチェックするためのベンチマークツール 2ページ | さくらのナレッジ
    tvsk
    tvsk 2021/09/03
    Network Diagnostic Tool(NDT
  • 第27章 システムタスクの自動化 | Red Hat Product Documentation

    お客様向けカスタマーサポートドキュメントサポートケースを管理サブスクリプション管理Red Hat Ecosystem Catalogパートナーを探すパートナー向けパートナーログインパートナーサポートパートナーになる試用、購入および販売Red Hat MarketplaceRed Hat ストア営業チームへのお問い合わせトライアルの開始Learning resourcesトレーニングと認定資格開発者の場合Hybrid Cloud ラーニングハブインタラクティブなラボ学習コミュニティーRed Hat TVオープンソースコミュニティーAnsibleシステム管理者向けアーキテクト向け

    tvsk
    tvsk 2021/07/03
    cronとanacronの違いを100字程度で。
  • LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 2編 | NHN Cloud Meetup

    連載 LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 1編 4.ネットワークcapacity関連パラメータ 4.1 maximum file count Linuxをはじめとする一般的なUnixソケットは、まるでファイルのような扱いを受けます。 システム全体で保有できるファイル数が制限されていれば、当然ソケットの全体数にも影響を与えるでしょう。 Linuxでシステム全体が保有できる最大ファイル数は、fs.file-maxカーネルパラメータで設定します。 以下のようなコマンドで現在の設定値を確認できます。 $ sysctl fs.file-max fs.file-max = 775052 一般的に、この値は適度に大きな値が設定されているので、余程のことがない限り、修正することはないでしょう。 ただ、システムが非常に多くのファイルとソケットを使用している

    LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 2編 | NHN Cloud Meetup
  • 負荷が低いのにアクセスを捌けきれない時の対応 - Carpe Diem

    概要 MongoDBCPU使用率やロードアベレージが高くないのに処理が詰まっている現象が起きました。 その時間にbatchが動いていてアクセスが急に増えることが原因と言うのは分かっているのですが、負荷的には十分余裕があり不思議な状態でした。 そこでdstatで見るポイント - Carpe Diemでも述べたように、負荷の状態から判断する基準があります。 ロードアベレージを確認する 1が高ければCPU、ディスクI/O、メモリにボトルネックがある 1が低ければTCPコネクションにボトルネックがある 今回の現象から判断するに、TCPコネクションに原因がありそうです。 原因調査 Too many open filesは出ているか ファイルディスクリプタが足りない場合はコネクション数が足りずに処理が詰まってしまいます。 そしてその場合Too many open filesというエラーが出ます。 し

    負荷が低いのにアクセスを捌けきれない時の対応 - Carpe Diem
  • Stray Penguin - Linux Memo (Journald)

    RHEL/CentOS 7 から (...と言わず他の多数のディストリビューションも)、伝統的な initsystemd に取って代わられ、自ずと SYSLOGsystemd スィートの一部である journal というものに替わってしまった。しばらくは「RHEL7糞らえ」と遠ざけていたのだが、遂に触らざるをえない機会が訪れ、そうもいかなくなった。こうなったら毒をらわば皿まで。使い切ってやろうではないか。 永続ストレージの有効化 少なくともこれだけはやっておきたい。RHEL/CentOS 7 のデフォルトでは、ジャーナルは /run/log/journal に書き込まれるが、これはメモリ上の揮発性のログであり、リブートすれば消えてしまう。そもそも /run/ は tmpfs つまりRAMディスクである。journald.conf の既定値は Storage=auto であり

  • cookpadTV ライブ配信サービスの”突貫” Auto Scaling 環境構築 - クックパッド開発者ブログ

    インフラや基盤周りの技術が好きなエンジニアの渡辺です。 今回は私が開発に関わっている cookpadTV の Auto Scaling 環境を突貫工事した事例をご紹介します。 同じチームのメンバがコメント配信回りについても書いていますので興味があれば合わせて読んでみてください。 クッキングLIVEアプリcookpadTVのコメント配信技術 エントリは Amazon EC2 Container Service(以降 ECS) をある程度知っている方向けとなっています。 細かいところの説明をしているとものすごく長文になってしまう為、ご了承頂ければ幸いです。 Auto Scaling について 一般的に Auto Scaling は CPU やメモリ利用量によって増減させるのが一般的です。*1 私が属している部署で開発保守している広告配信サーバも、夕方のピークに向けて CPUUtilizati

    cookpadTV ライブ配信サービスの”突貫” Auto Scaling 環境構築 - クックパッド開発者ブログ
  • Administering the Monitoring Service

  • Using pipelining to speedup Redis queries

    How to optimize round-trip times by batching Redis commands Redis pipelining is a technique for improving performance by issuing multiple commands at once without waiting for the response to each individual command. Pipelining is supported by most Redis clients. This document describes the problem that pipelining is designed to solve and how pipelining works in Redis. Request/Response protocols an

    tvsk
    tvsk 2019/01/23
    RTT、バッチ実行、メモリ使用量。ベンチマークスクリプト
  • MySQL 5.6ではprofilingが非推奨になってしまった件 | GMOメディア エンジニアブログ

    こんにちは、DBAのたなかです。 べんりなべんりなprofilingですが、5.6からは非推奨になってしまいました。 mysql56> SET profiling= 1; Query OK, 0 rows affected, 1 warning (0.03 sec) mysql56> SHOW WARNINGS; +---------+------+----------------------------------------------------------------------+ | Level | Code | Message | +---------+------+----------------------------------------------------------------------+ | Warning | 1287 | '@@profiling' is

    tvsk
    tvsk 2018/07/24
    MySQL の performance_schema の使いかた 導入
  • Redmineチューニングの実際と限界 - Redmine performance tuning

    Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.

    Redmineチューニングの実際と限界 - Redmine performance tuning
    tvsk
    tvsk 2018/07/04
    運用に耐えるシステム。評価者の観点。しがらみなし
  • Linux のメモリー管理(メモリ−が足りない?,メモリーリークの検出/防止)(Kodama's tips page)

    サ−バ等に使っているPC のメモリが十分かどうか気になる事は多いと思う. 調べ出すと フリーメモリーの不足や SWAP にメモリーがはみだしている様子など 心配な事がいろいろでて来る. PC の動作が遅くなる原因は様々な要因が絡み合っているので, 表面に現れた症状だけでは効果的な対策が分からない事もある. 以下では, メモリ−関連にしぼって解説する. メモリの状況を調べる メモリ−は十分なはずなのに 余裕が無い? どのプロセスがメモリを消費しているのか? メモリーのリークを検出する方法? 防止する方法? メモリ−は十分なはずなのに SWAP を使ってる? じゃ, 当のメモリ−不足はどうしたら分かるの? メモリーと SWAP 領域はどのくらい確保すると良いのか メモリの状況を調べる メモリの利用状況を調べる方法は, free, top, ps, vmstat, /proc/meminfo

    tvsk
    tvsk 2018/01/19
    vmstat 30 で スワップ活動量を把握して対処する
  • suz-lab.com - suz lab リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    tvsk
    tvsk 2018/01/18
    「デフォルトでは、下記のように実メモリの半分のサイズになっています」fstab でマウント設定時にサイズ指定する方法によって対処
  • わかりやすいJPA (5):JOIN FETCH

    はじめに これはJPAを解説する連載の5回目です。 うっかりすると、JPQLでは予期しなかった大量のSQLが発行されてしまう場合があります。これは “N+1” 問題と言われているものですが、解決のためには次のような4つの選択肢があります。 JPQLでJOIN FETCHを使う Criteria API(JPQLをプログラムとして書く)でFetch Joinを記述する Named Entithy Graph を使う Dynamic Entity Graph を使う ここでは、1.のJPQLによる方法について解説します。また、そのほかの方法も、この後の章で順次、詳しく解説する予定です。 N+1問題とは 次のような具体的な例で考えましょう。 // すべてのEmployeeエンティティを得る TypedQuery<Employee> query = em.createQuery("SELECT e

    わかりやすいJPA (5):JOIN FETCH
    tvsk
    tvsk 2017/03/01
    q'inner loop order entity' N+1問題を回避する. JOIN FETCH か エンティティグラフ
  • 再現性のあるスロークエリーには「SHOW PROFILE」を試してみよう

    MySQLの組み込みプロファイラー SHOW PROFILEステートメントはMySQLサーバー組み込みのプロファイラーから情報を取り出すためのステートメントです。細かいことを言と、これが利用可能かどうかはビルドオプション(cmake -DENABLED_PROFILING=ON)で決まりますが、少なくともOracleが配布しているバイナリーではこのオプションが有効な状態でビルドされているため、ほとんどの環境で利用できるでしょう。 プロファイラーというと小難しく思えますが、「そのクエリーが実行されていた期間、どのStatus(SHOW PROCESSLISTで"State"と表示されているもの)にどのくらいの時間かかったか」を表示してくれるもので、セッション単位でオンラインに有効・無効を切り替えられるため、身構える必要は全くありません。まずはその内容を確認するため、試しに具体的なステートメン

    再現性のあるスロークエリーには「SHOW PROFILE」を試してみよう
    tvsk
    tvsk 2017/02/21
    サーバ組込のプロファイラ。セッションで有効にすると、発行したクエリの実績値を確認できる
  • パフォーマンスを求めて - お前の血は何色だ!! 4

    結局、わかったことは、 次の4つ。 index から 実体へのシークは遅い。 すべてがindex内で完結するクエリーは早い。 limit をつけても where や order by すると意味がない。 indexを張るなら Using indexe をゲットできないと負けかな。 では、select で取得する値すべてに index を張りますか? 場合によっては可能ですが、テーブルに文字列なんかがふんだんに含まれていると難しいものがあり、現実的ではありません。 そこでこんな方法を提案します。2段階にわけてクエリーを打ちます。 A. task テーブルの 2008/6/5 〜 2008/6/18 のデータを開始日順にならべて、先頭5件だけ表示せよ。 select SQL_CALC_FOUND_ROWS * from task where task.task_starttime <= '20

    パフォーマンスを求めて - お前の血は何色だ!! 4
    tvsk
    tvsk 2017/02/21
    インデックス & order by,副問い合わせ
  • どうしてメモリはスワップするのか!?

    こんにちは。斎藤です。 最近、新しいスキー板が欲しいなと思っています。現在使っているOGASAKAの板は5年目に入り、メーカーからこれ以上はチューンナップ(メンテナンス)はできないよ、と言われてしまいました。もし、次に買うなら、スノーボーダーの人と一緒にパウダーに飛び込みやすいセミファットタイプが良いのかなと考えています。皆さんのオススメ、ぜひ教えてください。 さて、今日はLinux Kernel上でのメモリ管理、特にページ回収(Page Reclaim)とスワップに絞り、「スワップの理由」「ページを回収する仕組み」そして「スワップの様子を観察する」の3点に分けてお話しします。「スワップするのが気持ち悪い」と考えている方は少なくないと思いますし、私もそう考えていた時期がありました。しかし、それは当に悪い事なのか、今回掘り下げて行きます。 ※主な対象Kernelは2.6.32(Red Ha

    どうしてメモリはスワップするのか!?