2014/2/8に行ったゲームサーバ勉強会でのスライドです。 サーバー未経験者がソーシャルゲームを通して知ったサーバーの事。 失敗経験を元に何故今がこうなっているかというのを詰め込みました。 初心者〜中級者向け勉強会だったので、なるべく非エンジニアでもイメージで伝わるようにちょっとだけ心がけてます。
注意 このエントリは、会社の公式見解などでは全くありません。 社内のエンジニアたちのグループチャットで聞いて、集まった意見をまとめただけです。 このエントリはただの備忘録として書き留めただけだったのですが、 全く予想外に、多くの反響を頂き戸惑っています。。 頂いたコメントの中には「このレベルも知らないでクックパッドに入れるのか」といったものもありましたが、 一応、個人的には、例えばDB周りだとオラクルシルバ取得程度の知識はありますm()m 「良い環境にいるのだから改めて初心で勉強したい」という旨で皆に尋ねた結果であり、、 もしガッカリさせるようなことがあれば非常に心苦しいです。 良くも悪くも自分がこれらを消化できるかという話なので、 ここに並んでいる本を見てクックパッドをどうこうは思ってほしくないです。。 申し訳ありません。。。 summary the books which I have
国内注目のWebサービスを支える言語・フレームワーク・アーキテクチャ一覧【2013年版】 をもとにナウい感じのサービスなどをまとめた。分類がおかしいかもしれないのん コード管理 ソースコードは Git で管理しているところが増えている Git GitHub GitHub Enterprise: Enterprise 向け Gitlab Gitlab Cloud Gitlab CE: オープンソース Gitlab EE: Enterprise 向け BitBucket Stash: Enterprise 向け codebreak; RhodeCode Gitorious GitPrep GitBucket GitHubクローンまとめ 無料でGitHubのような機能を実現するための候補 | Act as Professional - hiroki.jp 料金 private repositor
(2014.12.3追記:このblogの内容は、以下の書籍にも反映させた。) SQLレベルの差異 MariaDB5.5とMySQL5.5ではSQLレベルでの違いはほとんどなかった。autoincrementの最大値の扱いくらい。 ただし、MariaDB10.0でREGEXPがマルチバイト対応になったので、アプリ側は注意。 項目 MySQL MariaDB Autoincrement 最大値に達すると、以降は最大値を繰り返す。Warningのみ。エラーにならない。tinyintなら…,125,126,127,127,127… 最大値-1まで。以降はエラーを返す。tinyintなら…,125,126,ERROR,ERROR,… EXPLAIN文 JSON形式 バージョン5.6から 未対応 Optimizer Trace バージョン5.6から 未対応(ただし、MariaDBのほうがオプティマイザ
pryはいざというとき、便利だなと思う@HIROCASTERでございませう。 hirb-unicodeを使って、pry操作中のActiveRecordの結果をSQLの結果っぽく表示します。 通常は以下の様な表示になります。 ちょっと、よく見ないとわかりづらいですよね。 それが hirb-unicode によって、 この様にテーブル表示してくれます。件数が多くあると、通常通りの表示に比べて、とても見やすくなります。 また、文字が多くターミナルの横幅が足らなければ、自動的に この様に表示します。MySQLを利用している人にはおなじみの表示です。 導入方法 pryやpry-raisを導入していることを前提とします。 Gemfileに gem 'hirb-unicode' と、記述して、 $ bundle install などをしてgemをインストールします。 次に .pryrc ファイルを作成し
平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識
クリアネオの特徴 無添加・無着色だから肌が弱い人でも安心 ワキガや嫌な臭いの原因となる菌を殺菌・消毒 お得な定期コースは、購入縛りなし!いつでも解約可能 体臭の悩みは老若男女問わず共通の悩みですが、他人には相談しにくいので1人で悩んでいる人が多いんです。 体臭って、自分でニオイが気になった時は、他の人はもっとクサイと思っています。 もしあなたが、自分でワキガかも…と思うのであれば、周りの人はあなたのニオイに気づいているかも… クリアネオは、そんなワキガ臭や足のニオイなど、イヤーな体臭全般を10秒でカットしてくれるんです。 クリアネオの効果や口コミを調査しましたので徹底解説します。 購入時に特典が付いてくるのでお得 公式サイトはコチラ ※特典は毎月変わるので公式サイトでご確認ください クリアネオはどんな人におすすめ? クリアネオの殺菌率は、なんと99.999%!体臭の悩みを解消してくれるクリ
1. <Insert Picture Here> MySQL 日本語利用徹底入門 日本オラクル株式会社 MySQL Global Business Unit テクニカルアナリスト 奥野幹也 2012 年 5 月 29 日 Copyright© 2012, Oracle. All rights reserved. 2. 2 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。ま た、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはでき ません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確 約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オ ラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊 社の裁量により決定されます。 Oracle と Java は、 Oracle Cor
これだけ見れば大丈夫!ーMySQLパフォーマンス監視のツボ(クエリ編) こんにちは、インフラ担当新人の nob です。 サーバー監視ツールで MySQL を監視しているのにデータが多すぎて活用していない。という方はいませんか?その豊富なデータをパフォーマンス・チューニングに活用しない手はありません。今回はサーバー監視ツールのグラフを読み解いた実戦経験を元に、「これだけ見れば大丈夫」というツボをまとめてみました。 これだけ見れば大丈夫! クエリ編 3つのつぼと5つのグラフ (その1)監視ツールが何を見ているのか知る (その2)監視のキモ、グラフ3点セット (Questions, Lock Waits と Transaction Handler) (その3)グラフでチェックする SQL チューニング ( Select Type と Handler) シンプルでお勧め、サーバー監視グラフ化ツール
去年からほそぼそと作ってきた、EmacsからDBを操作できるツール Emacs DBI を紹介します。 Emacs DBI の簡単な紹介 このツールの目的は、クロスプラットフォームで便利なDB操作環境を実現することです。 pgAdmin や MySQL Query Browser のようなGUIの良さをCUIで実現してみようとしてみました。すなわち、ぼくのかんがえたさいきょうのDBツールです。ちなみに、このツールにとってEmacsはただの実行環境です。Emacs使わない人でも使うと便利だと思います。 データベース画面 e2wmで3ペインの画面 機能概要 以下のような機能があります。 EmacsとDB接続可能なPerlが動けばターミナルでも何処でも動く DB定義、テーブル定義がすぐ見れる auto-complete によるSQL補完 接続先DBにからキーワード、型名、テーブル名、カラム名など
「O'Reilly Japan - 実践ハイパフォーマンスMySQL 第2版」の次のバージョンと言うべき「実践ハイパフォーマンスMySQL 第3版」の「Chapter 8, Optimizing Server Settings.(第8章:サーバー設定の最適化)」の原文が全文無料公開中です。 High Performance MySQL » Sample Chapter http://www.highperfmysql.com/sample-chapter/ コレが表紙 図もちゃんとあり、具体的な項目が多いのでかなり参考にできます。 目次は以下のような感じとなっています。 8. Optimizing Server Settings(サーバー設定の最適化) How MySQL’s Configuration Works(MySQLの設定の仕方) Syntax, Scope, and Dynam
MySQLがダウンしたときに自動的に別のMySQLへ処理を引き継ぐことで、高可用性を実現するフェイルオーバーツール「MySQL-MHA: MySQL Master High Availability manager and tools」がオープンソースとして公開されたことを、作者の松信嘉範(まつのぶよしのり)氏がブログで伝えています。 Yoshinori Matsunobu's blog: Announcing MySQL-MHA: "MySQL Master High Availability manager and tools" 松信氏はモバゲーなどで知られるDeNAに勤務しており、MySQL-MHAによる自動フェイルオーバー機能はDeNAのインフラ運用を支えているとのこと。同氏のブログから引用します。 Difficulties of master failover is one of
MySQL の勉強をせずにフレームワーク等で SQL を書かずに Web サイトを構築していました。データ数も2万件程度でしたので、そこまで困ることはありませんでしたが、今回100万弱の商品データを扱う機会ができたので、MySQL のチューニングや発行する SQL について見直す機会がありました。 この記事では MySQL を高速化するのに行った対策など勉強したものを自分用にメモしておきました。 条件式で比較するカラムにインデックスを使用して高速化 商品コードで存在しない商品を見つけて、商品をDBに登録するという処理を行っている場合、4万件超えたころから処理に2秒以上かかるようになってきます。12万件超えた頃には10秒程度かかるようになってしまいましたが、商品コードのフィールドに対してカラムインデックスを貼ることで0.2秒に短縮することができました。 MySQL のリファレンスにも以下のよ
はじめに アクセスが急増すると、応答時間が著しく悪化するサイトはありませんか? 普段は200ミリ秒以内で安定してアクセスをさばいているのに、イベントやらキャンペーンやらを開始した瞬間から、普段の2倍や3倍のアクセスが殺到し、その結果、レスポンスタイムが3秒とか9秒とかかかるようになってしまうことってありますよね。 あるサイトの実状 つい先日まで、そんなサイトが私の目の前にもありました。自社で運営している某ソーシャル系のサイトなんですが、イベント開始時刻と同時にアクセス数が急増するのです。とはいえ、所詮は普段の2倍とか3倍程度の数なのだから、少なくとも1秒以内にレスポンスを返せるくらいの性能は維持したいものです。 しかし実際は困ったことに、応答に3秒以上もかかってしまう処理が大量に発生してしまう状況に陥ってしまっていました。これはきっと、どこかにボトルネックがあるに違いありません。 仮説を立
これまでPublickeyではデータベースのスケーラビリティに関するさまざまなトピックを取り上げてきました。クラウド時代にはスケーラブルなデータベースのニーズがこれまでになく高まっているためです。 この記事では、これまで取り上げてきたデータベースのスケーラビリティに関する技術を少しまとめて紹介しようと思います。 従来のリレーショナルを拡張 従来のリレーショナルデータベースに対して、技術的工夫を凝らすことでスケーラブルなデータベースを実現しようというアプローチにも、さまざまなものがあります。 データベース研究者の大御所、マイケル・ストーンブレイカー氏は、リレーショナルデータベースは決して遅くないと主張。リレーショナルデータベースが遅い原因はロック、ラッチ、リソース管理にあるとして、それらを極力排除した「VoltDB」を開発しています。 NoSQLを上回る性能のVoltDB、そのアーキテクチャ
MySQLのmasterとslave 1:1にして参照をslave向けるのってやりたがる人多いみたいだけど、性能たいして上がらない割に可用性落ちるだけだからやめようキャンペーン 2011-06-19 00:16:30 via YoruFukurou MySQL はレプリケーションが簡単に構成できるのですが、時折 master 1台 に対して slave 1台、更新処理は master に、参照は slave に、という構成を目にします。 個人的にはこの構成はお勧めでないと思っているので、その理由を考察してみます。 1. 可用性が落ちる 当然ですが、master, slave のどちらが落ちても影響を受けるために可用性が低下します。 2. 全体の性能がほとんど上がらない master 1台ですべてのクエリを処理する場合と比べて、可用性が落ちる引き換えとして見合った性能向上が得られるか、という
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く