タグ

ブックマーク / thinkit.co.jp (23)

  • gRPCに関する初のカンファレンス、gRPC ConfがGoogle本社で開催

    マイクロサービスのベースとなるRPCフレームワークのgRPCに関するカンファレンスが、Google社で開催された。 クラウドネイティブなアプリケーションでは、アプリケーション全体を小さなプロセスに分割してステートレスなコンテナの集合体として実装することが最近のトレンドだ。その際の「プロセス間の通信をどうするのか?」については、REST APIというのが大凡の解答だったように思える。 それに対して、Googleが社内で使用していたStubbyの経験を活かして、オープンソースとして公開したのがgRPCだ。2016年にGooglegRPC 1.0を公開し、CNCFでのインキュベーションプロジェクトとなったのが約半年後の2017年1月、その後2019年3月に至るまですでに多くのユースケースで利用が拡がっている。そのgRPCに関する初めてのカンファレンスgRPC Conf 2019が、Googl

    gRPCに関する初のカンファレンス、gRPC ConfがGoogle本社で開催
    tuki0918
    tuki0918 2019/04/23
  • ISUCON史上初の学生チーム優勝! 勝利のカギは「チームワーク」と「失敗からの学び」

    決められたレギュレーションの中で、お題となるWebサービスを限界まで高速化するチューニングバトル「ISUCON」。最大3名でチームを組み、アプリケーションに自由に手を加え、出題者が用意したベンチマークで最も優れたスコアを叩き出したチームが優勝となるコンテストだ。 2018年で8回目の開催となるISUCON8(予選参加チーム数528組(一般432、学生96)、参加者合計1392人。うち30チームが選出場)に激震が走ったのは10月のこと。ISUCON史上初の学生チームが優勝をさらったのだ。稿では、優勝チームのメンバーである中西 建登さん、市川 遼さん、薮 雅文さんにISUCON優勝までの軌跡を聞いた。インタビュアーはリードエンジニアの亀岡 亮太さんに務めていただいた。 個性的なメンバーでチームを結成 亀岡:自己紹介をお願いします。 中西:電気通信大学2年の中西です。もともとサーバー運用会社

    ISUCON史上初の学生チーム優勝! 勝利のカギは「チームワーク」と「失敗からの学び」
    tuki0918
    tuki0918 2019/02/14
  • HBaseの概要とアーキテクチャ

    はじめに ネットワークに接続されたセンサ機器の普及により、IoT(Internet of Things)が注目を集めています。IoTでは様々なセンサ機器が膨大なデータを生成するため、システムが管理するデータ量は急激に増加しています。このような膨大なデータを管理するためのデータストアとして、RDBと比較して高い性能とスケーラビリティを持つNoSQLが注目を集めています。 「Apache HBase」(以降、HBase)はNoSQLの1つで、センサ機器が生成する時系列データを管理するための有力なデータストアとして注目されています。連載では、HBaseを用いたシステム設計のノウハウと、1,000万個のスマートメータから収集したデータによる性能検証の結果を紹介します。 今回は、まずNoSQLにおけるHBaseの位置付けを説明し、その後でHBaseの概要とアーキテクチャについて説明します。 NoS

    HBaseの概要とアーキテクチャ
    tuki0918
    tuki0918 2018/09/04
  • Project Calicoのアーキテクチャを見てみよう

    はじめに 第1回ではProject Calicoの概要や登場した背景、技術的な特徴などについて紹介しました。今回は、機能や特徴を実現するためにCalicoがどのようなネットワークを構成するのか、どのようなアーキテクチャになっているか解説していきます。 用語解説 まず、用語について説明します。 ワークロード(Workload) Calicoネットワークで管理されるコンテナや仮想マシンの総称です。Kubernetesによって起動されるDockerコンテナやOpenStackのNovaインスタンスなどがこれに当たります。今回はわかりやすいようにコンテナと言い換えて説明していきます。 Calicoノード ワークロードが動作する物理または仮想のサーバ。 ワークロードエンドポイント(Workload Endpoint) ワークロードが実行されるホスト上にあり、コンテナや仮想マシンが接続されるTAPイン

    Project Calicoのアーキテクチャを見てみよう
    tuki0918
    tuki0918 2018/06/26
  • Deep Learning Lab初のエンジニア向けイベント「異常検知ナイト」レポート

    実社会でディープラーニング(深層学習)の利用拡大を目的としたコミュニティ「DEEP LEARNING LAB」は異常検知に関する質問が非常に多かったことを受け、2月14日に異常検知ナイトを開催した。同コミュニティ初となるエンジニア向けのイベントで、深層学習で異常検知問題を解く方法論や異常検知関連の最新技術情報に関する情報を共有した。 2時間以上に渡るロングタイムなイベントの中から、稿では主要なセッションのレポートをお届けする。セッション後の質問やライトニングトークなどに興味があれば、ぜひYouTubeライブのアーカイブをご覧いただきたい。 異常検知入門 最初に登壇した株式会社Preferred Networksの比戸 将平氏は、異常検知の概要を説明した。イベント当日がバレンタインデーということで、「会社でチョコを3つもらいました」「今年はチョコ0個でした」「今年も彼女が手作りどら焼きをく

    Deep Learning Lab初のエンジニア向けイベント「異常検知ナイト」レポート
    tuki0918
    tuki0918 2018/05/16
  • v1.0がリリースされたログ収集のFluentdが目指す「黒子のような存在」とは?

    Fluentd 1.0のリリースに合わせてトレジャーデータのデベロッパーにインタビューを実施し、「黒子のような存在になりたい」という背景を訊いた。 CNCF(Cloud Native Computing Foundation)配下のログ収集のためのオープンソースソフトウェアであるFluentdは、2017年にバージョン1.0がリリースされた。記念すべき1.0というマイルストーンを達成したFluentdのデベロッパーにしてトレジャーデータ株式会社のシニアソフトウェアエンジニア、中川真宏氏にインタビューを行った。 まずリリース1.0の発表ということで1.0とそれ以前のバージョンの違いなどについて教えてください。 ツイッターなどでも誤解されている方を見かけますが、実は0.14と1.0で中身は何も変わっていないんですね。Fluentdは、0.12という最も広く使われているバージョンと最新の0.14

    v1.0がリリースされたログ収集のFluentdが目指す「黒子のような存在」とは?
    tuki0918
    tuki0918 2018/02/15
  • Pull Requestのマージオプションあれこれ

    今回はPull Requestのマージ時に選べる3つのオプションについてお話したいと思います。 題の前に: GitHub Satellite 題に入る前に、さる5月22日、ロンドンにて開催された弊社カンファレンスGitHub Satelliteについて簡単に触れたいと思います。 GitHub Satelliteというのは、GitHub社が定期的に開催しているカンファレンスシリーズの1つです。1番上位のカンファレンスが毎年秋にサンフランシスコで開催される"Universe"(宇宙)、2番目が春開催の"Satellite"(衛星)です。昨年はアムステルダム、今年はロンドンでの開催となりました。なお、今年からさらに3番目の"Constellation"(星座)が東京で開催されることとなり、実際に開催されました。 さてそのGitHub Satelliteにおいて、プラットフォームとしてのアップ

    Pull Requestのマージオプションあれこれ
    tuki0918
    tuki0918 2017/07/13
  • Ansible:さらにPlaybookをきわめる

    連載の第4回、第5回では「Ansible応用編」と題して、Ansibleの応用的な使い方やTipsについて詳しく解説していきます。前回(第4回)は、Ansibleのベストプラクティスに沿ってPlaybookを再整理する方法を紹介しました。今回は、Ansibleの持つ各種機能を活かしたPlaybookの効率的な記述方法やつまずきやすいポイントの回避方法を紹介します。 Playbookを効率的に書く 同種の処理をまとめる 同じ処理を何度も実行する際には、Loop構文を使うことで処理をまとめて記述できます。処理をまとめることで記述を簡潔にし、Playbookのメンテナンス性を高めることができます。 基的なLoop構文 基的なLoopの記述方法は、以下のようになります。「with_items」アトリビュートに、YAML記法のシーケンス(配列に相当)形式で定義しておくと、実行時に各要素が順次展

    Ansible:さらにPlaybookをきわめる
    tuki0918
    tuki0918 2017/04/11
  • 現代PCの基礎知識(7):仕様書を紐解くとわかる―本当はややこしいUSB

    はじめに 今回はUSBについて解説する。Universal Serial Busの頭文字を並べたUSBは、自由に抜き差しが可能な有線接続の通信インタフェースとしてだけでなく、スマートフォンなどの小型電子機器への電源供給手段として最も身近なインタフェースだろう。そんな手軽で便利で身近なみんな大好きUSBだが、実際にはかなりややこしい存在なのだ。今回はそんなお話である。 ややこしいその1 巨大すぎる規格 USBの規格はUSB Implementers Forum, Inc.(USB-IF)という業界団体が策定し公開している。現在USB-IFから取得できる主な規格書は、以下のようなものだ。 Universal Serial Bus Revision 3.1 Specification Universal Serial Bus Revision 2.0 Specification Wireless

    現代PCの基礎知識(7):仕様書を紐解くとわかる―本当はややこしいUSB
    tuki0918
    tuki0918 2016/12/24
  • スローログの集計に便利な「pt-query-digest」を使ってみよう

    今回は「pt-query-digest」を使用して、チューニングしたいSQLがスローログに記録されている場合の調査方法について説明します。 pt-query-digestとは pt-query-digestはPercona社が開発・配布するMySQL用のユーティリティーキットで、「Percona Toolkit」の1つです。最新ドキュメント(2016/3/22現在)はこちらにあります。pt-query-digestの基的な使い方は「スローログをノーマライズ・集計し、人間が判断しやすい形式で出力させる」です。基的にはスローログ用と考えますが、スローログ以外にもジェネラルログやバイナリーログ(mysqlbinlogコマンドの出力を入力する)、パケットキャプチャー(tcpdumpコマンドの出力を入力する)などが利用可能です。 Percona Toolkitのインストール まずはPercona

    スローログの集計に便利な「pt-query-digest」を使ってみよう
    tuki0918
    tuki0918 2016/11/25
  • Dockerの誤解と神話。識者が語るDockerの使いどころとは? Docker座談会(前編)

    では題に入ります。まず、Dockerは何がいいのか、あるいはどういうことには向かないか。実際に仕事で関わっている立場から語ってください。 松井:SIerをやっていて、最近はお客様からDockerという言葉が出てくるようになりました。とあるお客様からは、Solarisコンテナーで動いているシステムが古いので乗り換えたい、そのためにDockerはどうかと具体的な話を聞かれました。一方、「Dockerってどう?」と漠然とした話をいただいて、お客様の環境でしたらこう使えます、という話をすることもあります。 実案件まではまだありません。アプリケーションが対応していないと使えない、という話になることが多い。Dockerでは、いままでのアプリをそのまま使おうとすると、失敗すると思います。 前佛:無理をしてDockerを入れるのは違うと思いますね。Docker社が、仮想化を置きかえるというような見せ方を

    Dockerの誤解と神話。識者が語るDockerの使いどころとは? Docker座談会(前編)
    tuki0918
    tuki0918 2016/02/22
  • 優れた上級PHPエンジニアを名乗るためのスキルとは?

    的な機能として、特に意識せずに使っている文字列操作。 似た機能の違いを理解して使い分けるのがポイントです。

    tuki0918
    tuki0918 2016/01/03
  • Tintri本社訪問、インハウスのラボは絶賛拡張中

    エントランスにはTintriのロゴや世界観を盛り込んだ壁画がある。ロゴを中心にしてサーバーの構成部品であるCPUやメモリーなどを配置し、その裏側には世界各地のランドマークを配して青空と雲(クラウド)を背景にして、「世界のクラウドコンピューティングを支えるTintriの仮想化サーバーとストレージ」を表現しているのだろうか。 今回はラボと称される開発のためのサーバー群が設置されている施設を見学した。約40余りのラックに一番最初に出荷した製品から最新の製品まで2セットづつ配置し、過去のバージョンのOSやハードウェアを組み合わせて検証出来るようになっているという。ラボに入ると過去のTintriの製品が隙間なくラックに収まっているのが確認できる。過去のTintriのロゴは緑、製品は黒をベースにした外観で従来の他社のストレージ製品と差別化が難しかった。過去のTintriの製品を利用しているユーザーは分

    Tintri本社訪問、インハウスのラボは絶賛拡張中
    tuki0918
    tuki0918 2015/09/18
  • MySQL Cluster:NoSQL+SQL、NoSQLも使える高可用性インメモリRDBMS | Think IT

    MySQL Clusterとは? MySQL ClusterはMySQLとは開発ツリーの異なる別製品で、共有ディスクを使わずにアクティブ−アクティブのクラスタ構成が組めるリレーショナルデータベースです。単一障害点が無い構成を組むことができ、可用性が高いため、米国海軍の航空母艦における航空機管制システムなど、ミッションクリティカルな分野でも多く利用されています。また、デフォルトではデータをメモリ上に持つインメモリデータベースであり、トランザクションを高速に処理できるため、リアルタイム性が求められるアプリケーションにも向いています(インメモリデータベースであっても、データの永続性は担保されています)。 MySQL Clusterの基礎となっている技術は、通信機器ベンダのエリクソンで携帯通信網の加入者データベース向けに開発された Ericsson Network DataBase(NDB)と呼ば

    MySQL Cluster:NoSQL+SQL、NoSQLも使える高可用性インメモリRDBMS | Think IT
    tuki0918
    tuki0918 2014/12/06
  • Serverspec誕生からインフラCIの今後までを開発者に聞いてみた

    インフラ構築の現場で活用が広がっている国産OSS「Serverspec」をご存知でしょうか。Think ITで活用連載を執筆したTISの池田氏と、開発者であるServerspec Operationsの宮下氏のインタビューが実現したので対談形式でお届けします。Serverspecってなに? という方はぜひこちらの連載もご覧ください。 宮下:宮下です。よろしくお願いします。4月からフリーランスでソフトウェアエンジニアとして仕事をしています。個人事業主の届け出を出すと屋号を付けられるので、「Serverspec Operations」にしてみました。ただ、特にそれを前面に押し出して活動しているわけでもなく、今はクックパッドでフルタイムで仕事をしています。主にインフラ周りの業務、たとえばVagrantを導入したり以前から使っているPuppetの整備をしたりなど、あとはインフラCI※の整備をしてい

    Serverspec誕生からインフラCIの今後までを開発者に聞いてみた
    tuki0918
    tuki0918 2014/11/18
  • Serverspec誕生からインフラCIの今後までを開発者に聞いてみた

    インフラ構築の現場で活用が広がっている国産OSS「Serverspec」をご存知でしょうか。Think ITで活用連載を執筆したTISの池田氏と、開発者であるServerspec Operationsの宮下氏のインタビューが実現したので対談形式でお届けします。Serverspecってなに? という方はぜひこちらの連載もご覧ください。 宮下:宮下です。よろしくお願いします。4月からフリーランスでソフトウェアエンジニアとして仕事をしています。個人事業主の届け出を出すと屋号を付けられるので、「Serverspec Operations」にしてみました。ただ、特にそれを前面に押し出して活動しているわけでもなく、今はクックパッドでフルタイムで仕事をしています。主にインフラ周りの業務、たとえばVagrantを導入したり以前から使っているPuppetの整備をしたりなど、あとはインフラCI※の整備をしてい

    Serverspec誕生からインフラCIの今後までを開発者に聞いてみた
    tuki0918
    tuki0918 2014/11/11
  • RailsのテストフレームワークRSpecの基礎知識

    実践Ruby on Rails 4 現場のプロから学ぶ格Webプログラミング 顧客管理システムの構築を体験しながら、Railsアプリケーション開発のノウハウを習得! この記事は、書籍『実践Ruby on Rails 4 現場のプロから学ぶ格Webプログラミング』の内容を、Think IT向けに特別にオンラインで公開しているものです。詳しくは記事末尾の書籍紹介欄をご覧ください。 記事では、テストフレームワークとしてRSpecを採用します。RSpecをうまく活用すると、簡潔で読みやすいテストコードを書くことができ、Railsアプリケーションの保守性を高めることができます。 しかし、RSpecの用語法や表記法はやや独特で、慣れるまでには時間がかかります。読者の中にはとまどいを覚える方がいらっしゃるかもしれませんが、次章以降を読み進めるうえでの鍵となりますので、是非じっくりと読んで理解してく

    RailsのテストフレームワークRSpecの基礎知識
    tuki0918
    tuki0918 2014/07/09
  • [ThinkIT] オープンソース時代の企業システム選択ポータル

    2024/8/11 オープンソースのアプリケーション開発フレームワーク「Flutter 3.24」「Dart 3.5」リリース 2024/8/11 「KDE Frameworks 6.5.0」リリース 2024/8/9 「Samba 4.20.4」リリース 2024/8/5 新しいカーネルが採用された「Arch Linux 2024.8.1」リリース 2024/8/4 エレコムの無線LANルーターに複数の脆弱性、JPCERT/CCが注意喚起 2024/8/3 オープンソースのコンパイラ「GCC 14.2」リリース 2024/8/3 プログラミング言語「Rust 1.80」リリース 2024/8/1 「Xen 4.19」リリース 2024/7/31 機械学習フレームワーク「PyTorch 2.4」リリース 2024/7/31 バージョン管理システム「Git 2.46.0」リリース

    tuki0918
    tuki0918 2013/06/03
  • 教科書的ではなく、現場にあったデータベース設計のコツ

    前回はデータベース設計をする際に誰もがぶつかる問題である、「列名に日語を使うか?」「どのデータ型を使うか?」ということをテーマに取りあげました。今回も引き続き、データベース設計をする際に迷いやすい点をいくつか取りあげてみようと思います。 今回は前回と同様、SQL Serverのサンプルデータベース「Northwind」を元にして、データベース設計で迷いやすい点について考えてみましょう。図1は「Northwind」をER図にリバースした中から、エンティティ「商品」「商品カテゴリ」をサブウィンドウで表示したものです。 図1のように商品を分類するためにカテゴリコードをつけるエンティティ構造はよくあります。しかし実際の販売管理システムにおいては、このようなフラットなカテゴリ構造は不便です。なぜかというと、一般に商品カテゴリなどは表1のように階層構造で分類する必要があるからです。 01 ハードウェ

    tuki0918
    tuki0918 2012/12/30
    階層構造(パス方式)が便利そう
  • クッキーより便利になったブラウザ標準ストレージ - Web Storage

    TIPS 034:ストレージにデータを保存する TIPS 035:ストレージのデータを取得する TIPS 036:ストレージのデータをツールから確認する TIPS 037:ストレージからすべてのデータを取り出す TIPS 038:ストレージ上のデータを削除する TIPS 039:ストレージにオブジェクトを出し入れする TIPS 040:ストレージの登録/更新/削除を監視する サンプル一式は、会員限定特典としてダウンロードできます。記事末尾をご確認ください。 ストレージは、大きくセッションストレージとローカルストレージに分類できます。両者の違いは有効範囲です。 セッションストレージ(Session Storage)は、ブラウザが起動している間だけ有効です。ブラウザを閉じたタイミングでデータは破棄されますし、異なるウィンドウ/タブ同士でもデータを共有することはできません。 一方、ローカルストレ