タグ

2018年8月8日のブックマーク (6件)

  • Linux / x86_64の割り込み処理 第1回 | 技術文書 | 技術情報 | VA Linux Systems Japan株式会社

    「割り込み処理」とは、読んで字のごとく、通常の流れでプログラムを実行している所へ割り込んで別のプログラムを実行させることです。通常は、周辺デバイスなどからのイベント通知に使われるハードウェア割り込みを指しますので、稿でも以下その意味で使います。 Linuxに限らず、現在一般的なOSでは、ディスクやマウスなどのデバイス入出力の他、タスクの切り替えや定時処理などさまざまな場面で割り込み機能を駆使して作られています。 ところで、現在一般的なPC/PCサーバは、IBM PCやIBM PC/AT以来約30年間、互換性を保ちながら発展してきたものであり、こと割り込みまわりに関しては、たいへんに複雑です。これを制御するLinuxも、この複雑さに対応するために、複雑な作りになっています。 稿では、この複雑なLinuxの割り込み処理の低レイヤ (もっともハードウェアに近い部分) について解説していきます

    Linux / x86_64の割り込み処理 第1回 | 技術文書 | 技術情報 | VA Linux Systems Japan株式会社
  • 株式会社ツナググループ・ホールディングス

    人材の確保が難しい時代にあっても、 その状況を鮮やかに一変させるカードは きっとある。 私たちは業界のインフラとなって さまざまなサービスを展開し、 採用シーンのあらゆる課題を 解決に導きます。 その時々、それぞれの場面で 最善の一手を考え続け、 先進的かつユニークな 人材調達・活躍支援サービスの力で つながった先の景色まで支えていきます。

    株式会社ツナググループ・ホールディングス
  • どのようにデータ基盤を作ったのか?「俺の考えた最強のデータ基盤」は使われない

    どのようにデータ基盤を作ったのか?「俺の考えた最強のデータ基盤」は使われない:開発現場に“データ文化”を浸透させる「データ基盤」大解剖(3)(1/2 ページ) 「ゼクシィ縁結び・恋結び」の開発現場において、筆者が実際に行ったことを題材として、「データ基盤」の構築事例を紹介する連載。今回は、「データ基盤」の開発プロセスについてお伝えします。 「使われるデータ基盤」を構築するために筆者が取り組んだ試行錯誤を紹介する連載『開発現場に“データ文化”を浸透させる「データ基盤」大解剖』。前回はデータパイプラインを支える基盤システム設計について解説しました。第3回となる今回は開発プロセスについてお伝えします。 なお、技術要素としてはPythonやBigQuery、ツールとしてGitHubやJIRAを扱いますが、他の手段でも代替可能な内容です。細部にとらわれずにご自身の担当する業務や組織に当てはめながら

    どのようにデータ基盤を作ったのか?「俺の考えた最強のデータ基盤」は使われない
  • デプロイの度に障害が起きるシステムを安全にした話 - エムスリーテックブログ

    鉄道では個人の注意力だけでなくシステムにより安全を確保している。 写真は「タブレット閉塞式」のタブレットを交換する様子。1つの区間にはタブレットを持った列車しか進入できないため、衝突事故を防ぐことができる。(作者 Spbear [CC BY-SA 3.0 ], ウィキメディア・コモンズより) こんにちは、エムスリーでソフトウェアエンジニアとして働いている小です。 私は基盤開発チームという、エムスリーの複数のサービスにまたがって使われるシステムを開発・運用するチームに所属しています。 基盤開発チームが担当するシステムの1つに、会員向けメルマガの配信システム「メールコンシェルジュ」があります1。 エムスリーはメールコンシェルジュで1日数十万通のメルマガを配信しており、機械学習でメルマガを最適化する施策2などもメールコンシェルジュの存在が前提になっています。 このようにエムスリーにとって重要な

    デプロイの度に障害が起きるシステムを安全にした話 - エムスリーテックブログ
  • Go Fridayこぼれ話:非公開(unexported)な機能を使ったテスト #golang | メルカリエンジニアリング

    はじめに メルペイ エキスパートチームのtenntennです。 メルカリグループでは、毎週金曜日にGo Fridayという社内勉強会を開催しています。 毎週やっているとそれなりに知見が溜まってくるので、定期的に”こぼれ話”としてブログを書こうという話になりました。 今回の記事では、先日のGo Fridayで話題にあがった非公開な機能を使ったテストについて扱いたいと思います。 なお、Goにおけるテストの手法やテストしやすいコードの書き方については、GopherCon 2017でも発表があったmitchellhさんの”Advanced Testing with Go”(スライド/動画)が参考になります。テーブル駆動テストやテストヘルパーなど非常に勉強になるので、まだ見たことのない方はぜひスライドや動画をご覧ください。 TL;DR Goのテストではテスト対象とテストコードを別パッケージにできる

    Go Fridayこぼれ話:非公開(unexported)な機能を使ったテスト #golang | メルカリエンジニアリング
  • サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。先日親知らずを抜歯した時、つらすぎたので MySQLJOIN のことを考えて心の平静を保っていました。 サイボウズの製品のひとつである kintone はニーズに応じて自由に業務アプリのようなものを手軽に作ることができ、データの検索条件やソート条件も細かくカスタマイズ可能で、様々なレベルでのアクセス権も設定可能という非常に便利なツールです。 しかしその機能を支える裏側では複雑なクエリが発行され、MySQL に多大な負荷をかけています。サイボウズのクラウドには数十テラバイトに登る MySQL データがあり、数千万件オーダーのテーブルを複数 JOIN するクエリが毎秒のように実行されるという、エンジニア魂が滾る環境です。 現在サイボウズでは性能改善に力を入れており、僕もその業務に従事しています。例えば2018年

    サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ