Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
![LocalDB: 開発者向け軽量SQL Express](https://cdn-ak-scissors.b.st-hatena.com/image/square/5d8644907911326d6edf185f4f88e00423c1ad50/height=288;version=1;width=512/https%3A%2F%2Fcdn.infoq.com%2Fstatics_s1_20240807062301%2Fstyles%2Fstatic%2Fimages%2Flogo%2Flogo-big.jpg)
いやぁ・・・Rails3はいいですね(`・ω・´) b Rails2とはなんだったのか・・・というレベルの完成度で、 なんとなく納得しないままRails2を使っていた私も、 Rails3になってからはバリバリに使いまくりです*1 そんなRailsを動かすAppサーバとして、 以前から定番になっていたのがpassengerでして、 私もApacheやnginxと組み合わせて使ってました*2 ただ、最近よく耳にするのがnginxにunicornを組み合わせた構成です http://unicorn.bogomips.org/ 前々から気になっていたものの、なかなか手をつけられなかったのですが、 仕事でもプライベートでもちょうどRails3アプリをリリースするタイミングだったので、 nginx+unicornの環境を試してみました なお、非常に細かな解説がある良記事がありますので、 ぜひそちらを先
米Googleは米国時間2011年7月28日、Webページ高速化サービス「Page Speed Service」を発表した。Webサイト運営者向けに提供するもので、Webページをより高速で読み込めるよう最適化する。 Page Speed Serviceを利用するには、サービスに登録し、自身のWebサイトのDNSエントリーをGoogleに知らせる。するとPage Speed ServiceがサーバーからWebサイトのコンテンツを読み込んで、パフォーマンスを最大限に高める方法でコンテンツを書き直す。これを世界のGoogleサーバーからサイト訪問者に配信する。サイト訪問者はこれまでどおりそのWebサイトにアクセスし、速度が向上している以外は、今までと変わらずに利用できる。 同サービスにより、Webサイト運営者は、CSSの連結、画像の圧縮、キャッシング、リソースのgzip圧縮といったWebパフォー
By David Mytton, CEO & Founder of Server Density. Published on the 21st July, 2011. Over the 2 years we’ve been using MongoDB in production with our server monitoring tool, Server Density, we’ve built up significant experience and knowledge about how it works. Back in 2009 when I was looking at a replacement for MySQL I looked at Cassandra but dismissed it because MongoDB had several advantages, a
横浜市立大医学部の男子学生=当時(20)=に暴言を吐いたり、暴力を加えたりしたとして、同大は29日、医学部の50歳代の男性教授を停職3カ月の懲戒処分とした。 同大によると、教授は被害者学生とは別の医学部の学生から相談を受けた際、被害者学生の問題行動が原因と思い込み、2月22日の医学部の学期末試験開始直前、試験会場で被害者学生に名誉を傷つける発言をしたという。 被害者学生は身に覚えのない暴言の理由を聞くため教授の部屋を訪ねると厳しい叱責を受け、土下座をさせられ、頭を足で踏みつけられ、頭を丸めることを要求された。 教授は同大の調査に対し、自らの一方的勘違いに基づき暴言や暴力を振るったことを認め、「心よりおわびし反省している。大学教員として持つべき品位、品格を持ち得ていなかった」と話しているという。 【関連記事】 男性教授を停職8カ月=酒気帯び運転で逮捕 大阪大、助教2人を停職=元
写真1●楽天テクノロジーカンファレンスでソースコード公開を発表するROMAの開発者 西澤無我氏(左)と、Rubyの開発者で楽天技術研究所フェローのまつもとゆきひろ氏(右) 楽天は2009年10月24日、同社が独自開発した分散キー・バリュー型データストア「ROMA」をオープンソース・ソフトウエアとして公開した。ROMAはスケールアウトが容易で、耐障害性の高いデータストア。「楽天市場」と「楽天トラベル」で、ユーザーによる閲覧履歴の保存にROMAを使用している。同日に開催した「楽天テクノロジーカンファレンス」に合わせて、「github」でソースコードを公開した。 ROMAは、楽天技術研究所フェローのまつもとゆきひろ氏(プログラミング言語「Ruby」の開発者)と協力して、2007年から開発してきた分散キー・バリュー型データストアである(写真1)。Rubyを使った大規模システムを実現するための分散処
NOSQLについて解説した前回の記事は、いかがだったでしょうか。今後のアプリケーションでは、増え続けるデータを扱うことが非常に多くなると思います。前回の記事が、こうしたケースに適した新たなストレージの1つとして、NOSQLを理解するきっかけになっていたら幸いです。 連載2回目の今回は、NOSQLの1つである「okuyama」の全体概要と、機能的な特徴を紹介します。 1. 「okuyama」の概要 okuyamaは、まだ聞きなれない方も多いかと思いますが、筆者が開発している分散キー・バリュー・ストアです。2009年12月ごろから開発を始めました。現在はSourceforge.jpにて公開しています。もともとは学習を兼ねて作成したため、一部のログ・ライブラリなどを除き、すべて1から実装しました。2010年1月にファースト・リリースを行い、現在はバージョン0.8.6となっています。 以降は、ok
分散KVS(キーバリューストア)は、RDBMSの代わりになると思ってはいけない。RDBMSでは当たり前だった機能の一部は、あきらめる必要がある。このため、重要なデータをむやみやたらと分散KVS上に置くのはやめた方がよい。 分散KVSであきらめなければならない機能には、次の四つがある、 ・トランザクション機能 ・排他制御機能 ・読み取り一貫性を保証する機能 ・スプリットブレイン対策機能 逆にいえば、これらを取り込まないことで、分散KVSはRDBMSではかなわなかった、無尽蔵なスケーラビリティーや、極端に短いレイテンシー(要求が返ってくるまでの遅延時間)による高パフォーマンスを実現できたわけだ。 ところが、使い方を間違えれば、たちまち問題が生じてしまう。とりわけ、業務システムにおける重要なデータを分散KVS上に置く場合は注意が必要だ。 トランザクション処理に支障 重要なデータとは、不整合や損失
クラウドのプラットフォームとなる、スケーラブルな計算システムと分散オブジェクトストアなどのソフトウェアをオープンソースとして開発しようという「OpenStack」がスタートしました。 OpenStackの中心となったのは、クラウド事業者のRackspace HostingとNASA(アメリカ航空宇宙局)。そのほか、デル、シトリックス、NTTデータ、インテル、AMD、RightScaleなど多くの企業が参加を表明しています。 OpenStackのWikiには、ミッションが次のように記されています。 to produce the ubiquitous Open Source Cloud Computing platform that will meet the needs of public and private cloud providers regardless of size, by
Before using/purchasing the products and services on apps.gov, please do so in accordance with your agency's policies and procedures pertaining to Procurement, Information Technology, Cyber Security, Privacy, Accessibility, Social Media, and any other applicable Federal mandates. If you have any questions about your agency's policies and procedures, please contact your agency's Office of the Chief
An official website of the United States government Here's how you know The .gov means it's official. Federal government websites often end in .gov or .mil. Before sharing sensitive information, make sure you're on a federal government site. The site is secure. The https:// ensures that you are connecting to the official website and that any information you provide is encrypted and transmitted sec
連邦政府のクラウドシリーズ最終回は、その他の事例を見ていこう。 ◆ Data.gov まずData.gov。 このサイトは、連邦政府のCIO Vivek Kundra氏が就任後、実行した3つ(Apps.gov、Data.gov、Federal TI Dashboard)のうちの1つ。勿論、連邦政府のクラウドの柱となるApps.govが目玉だ。そして、このData.govはApps.govに近 々移行が予定されている。Data.govは、政府系機関が持つ情報を市民向けに開示する目的で作られた。画面から解るように、①生データ(Raw Data Catalog)、②分析ツール(Tool Catalog)、③地域別データ(Geo Data Catalog)がカタログとして提供される。これを用いてユーザーとなる市民や団体は、自由な加工や分析が出来る。対応するデータには、連邦政府提供の ものと州政府の
グーグルがNoSQL軽量ライブラリ「LevelDB」をオープンソース化。SQLiteとの比較ベンチマークも公開 キーバリュー型データストアは、いわゆるNoSQLデータベースの代表的な種類の1つ。LevelDBは以下のような特徴を備えています。 基本的な操作は、Put(key,value), Get(key), Delete(key) 1つのトランザクションとして複数の変更操作が可能 データは自動的に圧縮し保存される SQLite、Kyoto TreeDBとの比較ベンチマークも LevelDBはC++で書かれたライブラリで、今後のChromeブラウザのIndexedDBはLevelDBで実装されると説明されています。 Upcoming versions of the Chrome browser include an implementation of the IndexedDB HTML5
LevelDB is a fast key-value storage engine written at Google that provides an ordered mapping from string keys to string values. We are pleased to announce that we are open sourcing LevelDB under a BSD-style license. LevelDB is a C++ library that can be used in many contexts. For example, LevelDB may be used by a web browser to store a cache of recently accessed web pages, or by an operating syste
Overview Kyoto Cabinet is a library of routines for managing a database. The database is a simple data file containing records, each is a pair of a key and a value. Every key and value is serial bytes with variable length. Both binary data and character string can be used as a key and a value. Each key must be unique within a database. There is neither concept of data tables nor data types. Record
MongoDB is a document-oriented database that stores data in flexible, JSON-like documents. It supports features like replication, auto-sharding, and indexing. The document discusses using MongoDB with Ameba Pico's photo tagging service, including initial implementation with one shard, expanding to multiple shards as user numbers grow over time, and repairing and upgrading shards over time to suppo
Haskellというプログラミング言語を知っていますか? 全く聞いたことがないという人が多いかもしれません。そういう名前の言語があるのは知っているけど,どんな言語かは知らないという人もいるかもしれませんね。でも最近では,一部の先進的なソフトウエア開発者の間で,一種のブームと言えるほど熱狂的に受け入れられています。 なぜならば,Haskellは様々な優れた特徴を持っているからです。最初に,他の言語にはあまり見られない際だった特長を一つだけ紹介してみましょう。「遅延評価(lazy evaluation,怠惰評価ともいう)」です。 遅延評価とは,与えられた値を必要になるまで評価(計算)しないということです。この性質により,不必要な計算が行われる無駄をなくすことができます。また,「潜在的に無限の大きさを持つデータ構造」といった通常のプログラミング言語では扱いの難しいものを直接扱えるため,より直接的
Python + Flaskでサンプルアプリを書いてfluxflexにデプロイしてみたら、思いの外使い勝手が良かった。 fluxflex fluxflexとは、クラウドホスティングサービスのひとつ。 Platform as a Service、略してPaaSなどと呼ばれてるサービス。 競合するサービスにdotcloud, Heroku, GAEなどが存在してる。 複数の言語(いまのところPHP, Ruby, Python, Perl, Node.js, Haskell)が利用できて、フレームワークも好きなものが使えて、FastCGIで動く。 個人的な印象で言えば、dotcloudに近いものを感じる。 dotcloudは、規定のクライアントをインストールして、基本コンソールでデプロイしたりなんやかんやする形だけど、fluxflexは、Githubにソースコードが存在していたらボタン1つでデプ
Annual Suggested Retail Price Click 'Buy Premium' to purchase via the reseller Cleverbridge Why does your Mac need malware protection?The tighter control exercised over the Apple ecosystem makes Macs more secure, but cyberthreats are growing more sophisticated by the day. Macs are not immune to threats. Your Mac security should keep in step with rapidly evolving attack vectors such as phishing, id
2011年7月28日木曜日 trippieceとは? 皆様 <trippieceとは?> 皆さんは、気の合う仲間、趣味の合う仲間と居るときって楽しいですよね? 例えば僕はバドミントンが好きなんですが、「webクリエイターで、バドミントンをやろう!」という会をたまに、もっち君(@mocchicc)と企画しています。朝9時から12時までバドミントンをして、お昼はwebの話をペチャクチャしながら食べ、解散する会です。非常に楽しいんですよね。毎回違う人が来るので新しい友だちが出来て、刺激を貰えます。 でも、意外と、「趣味の合う人と趣味をする。」機会って少ないと思いませんか? 偶然的に出会った人たちが同じ趣味を持ち合わせていることは少ないんだと思います。小中高大学とかね。 だから、それをサークルのように集える機会を作ろう!趣味や関心を軸にして、人と人とが出会い、体験をシェアするサービスを作ろう!とい
MonetDB is a high performance relational database system for analytics RobustMonetDB offers a robust SQL compliant database interface, enabling applications ranging from pure analytics to hybrid transactional/analytical processing. It supports common features including keys, joins, views, triggers, and stored procedures, along with full-ACID properties for concurrent transactions. Additionally, Mo
Mac:Macを快適に動かし続けるためにも、メンテナンスが大切だということは「Macの基本的なメンテナンス方法」でもご紹介しました。 今回ご紹介する『IceClean』はコマンドラインを使って動くので、自分でコマンドを使う必要がありません。 ディスクユーティリティのようなメンテナンスツールを使うと、使用中のディスクを診断したりファイルを変更するのは難しいので、ディスクを長い間メンテナンスで使えなくなるのが困りものです。 IceCleanはそれらの問題を回避するために、シンプルなユーザーインターフェイスの裏で、これらのユーティリティをコマンドラインで走らせます。システムディスクやディスクのパーミッションの検証・修復、不明な設定ファイルのクリーンアップ、ダッシュボードやドックが固まらないようにするなど、かなり色々なタスクが実行可能です。 IceCleanは、定期的に実行するようにも設定できます
git.jsはnode.jsで作られたWebベースのGitリポジトリブラウザ。 git.jsはnode.js/JavaScript製のオープンソース・ソフトウェア。Gitの面白い所は個々にリポジトリがあることだ。それによって分散化を実現し、かつオフラインでも開発ができるようになった。リポジトリにはこれまでの開発が全て詰まっており、いつでも参照できるのが嬉しい。 ログ Gitリポジトリを取り込んでしまえば、リポジトリを操作するために都度ネットワークアクセスする必要もない。リポジトリブラウザが高速動作するのはとても良い。今回紹介するのはWebベース、JavaScript製のGitリポジトリブラウザであるgit.jsだ。 git.jsはサーバサイドでローカルのGitリポジトリの情報を読み込みつつ、それをWebブラウザ上で表示する仕組みになっている。node.jsを使っているのでどちらもJavaS
nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server, originally written by Igor Sysoev. For a long time, it has been running on many heavily loaded Russian sites including Yandex, Mail.Ru, VK, and Rambler. Here are some of the success stories: Dropbox, Netflix, FastMail.FM. The sources and documentation are distributed under the 2-clause BS
Bigtableの概要 Bigtableとは 構造化データを管理するための分散化ストレージ 膨大な数の汎用サーバーをつなげてペタバイト規模のデータを扱えるよう設計されている Bigtableの歴史 およそ7人年の開発作業を経て、2005年4月からプロダクション利用を開始 2006年時点では、Googleの60以上のプロジェクトがBigtableを利用 検索, Analytics, Finance, Orkut, Earth, YouTube, Mapなど Bigtableが動くサーバーの構成 <Googleの典型的なクラスターノード構成:引用元> 個々のノードの基本構成 Intelベースの安いPC Linux OS Schedulerスレーブ Schedulerマスターの指示に従ってノード上に各種サービスをデプロイする GFSチャンクサーバー GFSのチャンク(データ)を保存する タブレッ
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "スプリットブレインシンドローム" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2023年5月) スプリットブレインシンドローム(split-brain syndrome)またはネットワークパーティション問題とは、複数のコンピュータ(ノード)を相互接続して1台のサーバのように動作させるシステム(密結合クラスター)において、ハードウェアやインターコネクトの障害によりシステムが分断され、1つのサービス(仮想IPを含む)がクラスタ内の複数のノード群で同時に起動してしまい、サービス供給が停止してしまう状況のこと。 スプリットブレインシンドロー
投機的実行(とうきてきじっこう、英: speculative execution)とは、コンピュータに必要でないかもしれない処理をさせることである。この性能最適化技法は、パイプライン化されたプロセッサなどのシステムで使われている[1][2]。 概要[編集] 投機的実行は性能最適化の一種である。その主たる考え方は、処理が必要とされるかどうかを知る「前」に実行するというもので、それによってその処理が必要だとわかった「後」でその処理をすることで生じる遅延を防ぐ。その処理が不要だったと判明した場合、その結果を単に無視する。目的は余分な計算資源が利用可能な場合に並行性を向上させることである。 以下のようなテクノロジーがこの考え方を採用している。 メモリとファイルシステムにおけるプリフェッチ 分岐予測 データベースシステムにおける楽観的並行性制御[1] プロセッサ[編集] 近年のパイプライン化されたマ
This paper addresses the problem of scheduling concurrent jobs on clusters where application data is stored on the computing nodes. This setting, in which scheduling computations close to their data is crucial for performance, is increasingly common and arises in systems such as MapReduce, Hadoop, and Dryad as well as many grid-computing environments. We argue that data intensive computation benef
DailyJS - A JavaScript blog. Google CodeやGitHubをはじめさまざまなプロジェクトホスティングサービスが存在する現在では、オープンソースプロジェクトはとても簡単にはじめられる。ただし、そういったプロジェクトのすべてが優れた結果を残せるわけではない。大半のプロジェクトは終わらせることもできず、ただ誰にも触られることのない存在になっていく。 プログラマであれば誰しもより優れたプログラマになりたいと考えるだろう。WebにはプログラミングテクニックやTIPS、デザインパターンやアンチパターンなど、さまざまなプログラミングに関するノウハウがあり、多くのプログラマがそうしたノウハウを活用している。しかしながら、いくら努力してもいまいち自分のスキルの上達を感じられない方も少なくないだろう。 以前からよく言われていることだが、Alex Kessinger氏が7月2
Ruby(1.8.6)で大量のデータを検索することがあったので、ハッシュと配列の検索速度はどのくらい違うのかを検証してみた。 検証用コード ※面倒なので変数名とか超適当にした。 # compare_hash_speed_with_array.rb 1 #!/usr/local/bin/ruby 2 n = 120000 3 4 a = {} 5 t1 = Time.now 6 n.times do |t| 7 a.update(t * 10000 + t => t + 123456) 8 end 9 t2 = Time.now 10 p "#{t2 - t1} sec for making hash sample" 11 12 b = [] 13 t3 = Time.now 14 n.times do |t| 15 b << [t * 10000 + t, t + 123456] 16 e
「結婚したいですか?」 「彼氏はいますか?」 「将来、子供は欲しいですか?」 会社で聞いたら、即問題視されそうな質問を、戸惑うことなく口にするテレビ番組のリポーターやキャスターたち。 「金メダル取って、もてるようになりましたか?」という質問を、柔道家の塚田真希さんやレスリングの吉田沙保里選手にしたVTRを流し、スタジオで笑う人々。 いったい何なのだろうか。不愉快な気分になった。そう、女子サッカーのワールドカップで初優勝を果たし日本中に勇気と元気をくれた、なでしこジャパンのメンバーが帰国後、テレビ出演した時のことである。 「女性だけのチームをまとめるのって、大変でしょ?」 「オヤジギャグは、女性の心をつかむため?」 「全国の女性部下を持つ上司たちが、監督のノウハウを知りたがってるでしょ」 佐々木則夫監督にも、ん? という質問ばかりが繰り返された。 え~っと、つまり、女性部下は扱いにくいってこ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く