2015年11月28日のブックマーク (20件)

  • HTTPサーバプログラムの作成

    HTTPサーバはTCP/IP通信のサーバの一つです。HTTPサーバはホームページの用 サーバとなるだけでなく、インターネットにおける汎用的な情報発信サーバと して利用されつつあります。実際、HTTPサーバを組み込んだ情報家電製品など が登場してきていてます。インターネット上のすべてのコンピュータにHTTPサー バが組み込まれる時代も遠い未来ではないかもしれません。 ここでは、HTTPサーバプログラムの作成方法について解説します。取り上げる 例題は最も簡単なHTTPサーバであり、HTTPリクエストのメソッドのうち「GET」 にしか対応していません。また、重要なエラー処理以外は省略されています。 しかし、簡単な情報発信であれば十分に使えるものです。他のメソッドや例外 処理は読者の皆様にお任せすることにします。 #include <sys/fcntl.h> #include <sys/socke

  • サーバー送信イベントの使用 - Web API | MDN

    サーバー送信イベント (Server-Sent Events) を使用するウェブアプリケーションの開発は簡単です。サーバー上でフロントエンドへイベントを流すために必要になるコードはわずかですが、クライアント側のコードはウェブソケットで入ってくるイベントを扱う部分とほぼ同じ動作をします。これは単方向の接続ですので、クライアントからサーバーへイベントを送信することはできません。 サーバー送信イベント API は EventSource インターフェイスに含まれています。イベントを受け取るためにサーバへの接続を開始するには、新たな EventSource オブジェクトを作成し、イベントを生成するスクリプトの URI を指定します。例を挙げます。

    サーバー送信イベントの使用 - Web API | MDN
    IzumiSy
    IzumiSy 2015/11/28
    関連: Sinatra Streaming API
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    IzumiSy
    IzumiSy 2015/11/28
    関連: Sinatra Streaming API
  • MongoDBのカレンダー | Advent Calendar 2013 - Qiita

    MongoDBについてみんなで書きましょう。 そんなに肩肘張って考える必要はまったくありません。 「気になってたからとりあえずチュートリアルだけやってみた」とか 「丸の内MongoDB勉強会の過去の資料を復習してみたよ」とか 「MongoDBのODMって正直イケてるの?試してみた」とか 「クラウドで超高いインスタンス借りてベンチ取ってみたぜ」とか 「こんなことできないかなーと思ってやってみたけど力尽きた誰か教えろ」とか 「今開発中の2.6の先取り(2.5.x)してみたぜ」とか 「俺はMongoDBのあの葉っぱロゴがたまらなく愛おしい!」とか 「MongoDBの萌えキャラ書いてみたよ!」とか いや最後の二つはやや冗談ですが、気軽に参加してくださいよー。お待ちしております!

    MongoDBのカレンダー | Advent Calendar 2013 - Qiita
  • Rails3 対応 MongoDB ORM、Mongoid 詳解―前説 - babie, you're my home

    つい先日 1.6.0 がリリースされ、MongoDB の時代がいよいよキタ!って感じです。MongoDB 自体のインストール・操作などは下記の記事を参考にしてください。 Mac OS X で MongoDB を動かす ハンズオンで分かる MongoDB チュートリアル この記事では、Rails3 にふさわしい ORM として、Mongoid を紹介します。 MongoDBRuby ドライバーは、mongo ですが、これは素のドライバーで、Rails などと使用するときは、クラス・オブジェクトに自動でマッピングしてくれる ORM を使用したいところです。 その候補として、 MongoMapper MongoDoc MongoModel Candy Mongoid MongoRecord があります、 この内、プロダクションで使われているのは、MongoMapper と Mongoid

    Rails3 対応 MongoDB ORM、Mongoid 詳解―前説 - babie, you're my home
  • What is an Information Architecture?

    Sinatra で Streaming Sinatra で WebSocket のような stream の簡便な実装を書くことができます. 簡易なチャットシステムや,流れてくるログ拾ってきてブラウザで眺めるなどの用途に使えそうです. get '/', provides: 'text/event-stream' do stream :keep_open do |conn| conn << 'なにがしかの処理' sleep 1 end end loop したい たとえば,ログを眺めるような用途だと,ログを監視して差分を送ってあげるなどの処理が必要になるでしょう. loop ブロックを使用したくなることがありそうです. stream :keep_open do |conn| loop do conn << 'データの差分を送る' sleep 1 end end connection が増幅する

    IzumiSy
    IzumiSy 2015/11/28
  • たかがレシピサイトに何故こんな技術力が必要なのか - クックパッド開発者ブログ

    こんにちは!クックパッド編集室メディア開発グループ長の @yoshiori です。 たまにネットやイベントなどで「たかがレシピサイトになんでこんな技術力が必要なのか」と言われることがあるので今日はそれに真正面から答えてみようと思います。 例えばどういうところで技術使ってるか 他の人の話はこのブログの他のエントリを見てもらえればわかると思うので、僕の所属しているクックパッド編集室での取り組みの中から今回は料理動画を例に説明します。 Adaptive bitrate streaming での配信 クックパッドで配信している動画は基的に「料理動画を支える技術」でも触れられている配信プラットフォームを利用しています。 ここでは裏で動画を「低画質」「普通」「高画質」の 3 パターンでエンコードして、回線状況に応じて最適な画質の動画を HTTP Live Streaming (HLS) で配信してい

    たかがレシピサイトに何故こんな技術力が必要なのか - クックパッド開発者ブログ
  • ユーザ・インターフェースのためのイージングカーブをつくる | POSTD

    フラットデザインの導入以来、アニメーションの質が、今までにないほど、優れたインターフェース作成のために必要不可欠なものとなっています。モーションデザインを通して、製品の総体的なブランドエクスペリエンスを左右するようになり、製品を、市場の他のものと差別化する要素となりました。アニメーションは複雑なインタラクションを簡素化し、優れたデザインを記憶に残るユーザエクスペリエンスにしました。では、質の高いアニメーションはどのように作られるのでしょうか? イージングカーブは多くの要となるコンポーネントの1つで、適切なアニメーションをとり、素晴らしいものに作り上げます。 問題なのは、イージングカーブがどのように機能するかについての理解が、少々難しいということです。 前回の記事 After Effects to CSS で触れたタイミング関数への興味の派生としてこの記事を書きましたが、この記事を読むことで

    ユーザ・インターフェースのためのイージングカーブをつくる | POSTD
  • CSSモジュール ― 明るい未来へようこそ | POSTD

    ここ最近、CSSに対する考え方が広がりを見せています。皆さんの中には、その転換点を見つけようと、Christopher Chedeauの”CSS in JS”という講演を聞いた方もいるでしょう。2014年11月にNationJSで行われたこの講演は、CSSにおける重大な分岐点となりました。まるで高エネルギー粒子が衝突した後のように、それを機に、数ある多様な考え方が、各々の方向へ渦を描くように広がったのです。その例として、 React Style と jsxstyle 、 Radium を挙げましょう。これら3つは、Reactのスタイリングにおける最新かつ最良、そして最も実行しやすいアプローチに含まれており、 各々のプロジェクトのReadmeファイルでも、 そのように言及しています。もし”発明”が、 adjacent possible(一歩先にある可能性) を探ることの一例であるのなら、Ch

    CSSモジュール ― 明るい未来へようこそ | POSTD
  • 平成生まれとは思えない絵を書いてる奴がいる

    1:以下、名無しにかわりましてVIPがお送りします:2012/03/17(土) 03:05:33.49ID:RKMUMLuk0 天才っているもんだな http://momep1ct.web.fc2.com/ilustration/newfile2.html 2:以下、名無しにかわりましてVIPがお送りします:2012/03/17(土) 03:06:40.70ID:c5rQwffE0 逆にいいな 3:以下、名無しにかわりましてVIPがお送りします:2012/03/17(土) 03:07:26.74ID:2sxOZTXH0 結構好き 6:以下、名無しにかわりましてVIPがお送りします:2012/03/17(土) 03:08:01.09ID:9Oh6jcGh0 ここまで徹底してると清々しい 4:以下、名無しにかわりましてVIPがお送りします:2012/03/17(土) 03:07:48.92ID

    平成生まれとは思えない絵を書いてる奴がいる
  • MongoDB 2.4 の性能 徹底評価 - 中年engineerの独り言 - crumbjp

    まとめ 超長くなったのでまとめを上に持ってきた。 巷で言われているチューニングは結構嘘が多い事が解ってきた。 ツール等 workingSet Analyzer は信用ならない。(overSecondsはまあ良い) mongoperfの値は完全に参考にならない。 insert mongoperfの値はinsert性能と関連しない。(何を測ってるんだ?) カラムのプリアロケーションによるUPDATE時のデータ肥大化回避($setOnInsert)はMUST。 クリティカルな時間帯にストレージファイル(2GB)の生成を避けるチューニングの効果は懐疑的。 レコードプリアロケーション・チューニングは頑張る価値が無い。(むしろ逆効果) update 上記の通り必ずin-placeになるようにする。 paddingFactorが動くようだとお話にならない性能劣化 remove かなり高速。 全件削除の場

    MongoDB 2.4 の性能 徹底評価 - 中年engineerの独り言 - crumbjp
  • ももクロスライダーで測る Redis vs MongoDB on Heroku 第二弾 - from scratch

    今日はみどりの日らしく、ももクロスライダーも緑の話が活発です。 さてさて、前回に続いてRedisの話です。 危険なほど速いと言われていますが、実際の実力はどうなのか気になるところです。 確かに他の参考記事を見ると、かなり高速なようです。 redis、それは危険なほどのスピード|サイバーエージェント 公式エンジニアブログ FreeBSDで,mongoDB V.S. Redis - なぜか数学者にはワイン好きが多い じゃーって事で、RedisとMongoDBをベンチマーク比較してみました。 結論から言うと、Redisはやっぱり鬼のように速いです。 ベンチ方法 RedisとMongoにtwitpicから取得してきた ももクロの画像に関するデータを入れておき、それを取り出す処理がどちらが早いかだけを計測しています。更新系の操作も高速なようですが、ももクロスライダーは今は更新系の操作がないので、これ

    ももクロスライダーで測る Redis vs MongoDB on Heroku 第二弾 - from scratch
  • 10分で理解するMongoDBのパフォーマンス - (゚∀゚)o彡 sasata299's blog

    2010年04月25日00:16 NoSQL MySQL 10分で理解するMongoDBのパフォーマンス MongoDBってスキーマレスなDBで、カラムが決められないような場合に使うと効果的なんだと思うんですが、「そういうデータはハッシュにして、JSON 形式で MySQL に保存すれば良いのでは?」という意見をいただいたので、その場合とのバフォーマンス比較をしてみました。 ※最初は MySQL として innodb でしか評価していなかったため、myisam の結果についても追記しました。(2010/04/25追記) ベンチマーク環境の準備 試した環境としては、MySQL 5.1.45, MongoDB 1.2.4 です。MySQL側はこんな感じ。 mysql> desc blogs; +------------+--------------+------+-----+---------

  • 深夜のバスに乗る人達の表情を捉えたフォトシリーズ「last night at the bus stop」

    仕事が終わり、疲れた体を揺らしながら帰路を走行するバス。その中では、さまざまな人達の表情を見ることができます。そんな中今回紹介するのは、深夜のバスに乗る人達の表情を捉えたフォトシリーズ「last night at the bus stop」です。 フォトグラファーのTravis Huggett氏手掛ける、光が漏れるバスを外から撮影し、そのバスに乗る人達のリアルな表情を映しだした、どこか寂しさや切なさも感じられるシリーズ作品となっています。 詳しくは以下 音楽を聞いたりを読んだりして時間を過ごしている人、眠る人、一緒に座る人と一緒に会話したり、スマートフォンを操作するなど、それぞれ過ごし方はさまざま。どの人たちにも共通しているのは、どこか疲れている表情が感じられること。夜という時間帯ももちろんですが、バスの中という密閉された空間にひたすら座るという行為自体がそのような表情にさせてしまうのか

    深夜のバスに乗る人達の表情を捉えたフォトシリーズ「last night at the bus stop」
  • Slant - 46 Best JavaScript IDEs or editors as of 2024

    The Slant team built an AI & it’s awesomeFind the best product instantly

    Slant - 46 Best JavaScript IDEs or editors as of 2024
  • Reactを用いたアプリケーションアーキテクチャ:Fluxを再考する | POSTD

    他のフレームワークやライブラリから React に乗り換える人たちは、「ReactUIのレンダリングに関する問題しか解決しておらず、状態管理とアプリケーションアーキテクチャの選択は開発者に委ねられているのだから、どうやってアプリケーションの状態を管理したらいいのか?」 と疑問に思う傾向があります。FacebookはReactのレンダリングモデルに適している、 Flux と呼ばれるアーキテクチャを勧めています。 この記事では、UIレイヤとしてReactを用いてJavaScriptのアプリケーションの状態を管理する方法を探り、 Om のような ClojureScript ライブラリのアイデアを用いてFacebookのFluxの抽象的なフレームワークを作り変えてみたいと思います。 Fluxの核となる考えは、 データは一方通行で流れるべき というものです。これによってアプリケーションの論証が簡単

    Reactを用いたアプリケーションアーキテクチャ:Fluxを再考する | POSTD
  • お疲れさまXMLHttpRequest、こんにちはfetch - Qiita

    Service Workersでプッシュ通知を受信できるようになったわけですが([1]: GCM)([2]: Web Push)、Chromeではバージョン48まではGCMで通知だけができるようになっただけで、メッセージ体は通知を受けてからService Workerでサーバから改めて受け取るような実装をする必要があったりします。 ここで、Service Workersでは、XMLHttpRequestが使えません。その代わり、XMLHttpRequest (以下、XHR)に代わるWHATWGの仕様としてFetch APIがあり、Service WorkersではこのFetch APIを使うことになっていますので、その使い方を簡単に紹介します。 Fetch API自体は、Service Workers専用のものではなく、メインスレッドでもXHRの代わりに使うことが可能です。現時点で実装し

    お疲れさまXMLHttpRequest、こんにちはfetch - Qiita
  • 【モバイラーが憧れた名機を今風に蘇らせる】 東芝「Libretto ff 1100V」 ~マルチメディアを突き詰めたエンターテイメントモバイル

    【モバイラーが憧れた名機を今風に蘇らせる】 東芝「Libretto ff 1100V」 ~マルチメディアを突き詰めたエンターテイメントモバイル
  • Redis に保存されてる値を見ようと思った時に覚えておきたい redis コマンド | そんなこと覚えてない

    設定したりもっと細かい作業をしたい場合は help コマンドを使う。 種類ごとのヘルプをみたい場合は @ をつけるとよい 例えばリスト関連のコマンドを知りたいなら > help @list といった感じ。 以下は解説 keys 登録されている key がわからないと何もできないので、keyの一覧をみる方法 > keys * 引数にはパターンを入力する hogeではじまるものに絞りこみしたい場合は > key hoge* とかする。shell の場合はアスタリスクはエスケープする必要があるのに注意 $ redis-cli keys \* type redis は key に格納された値の種類によって取得コマンドが違うらしい。 値をみるために種類の確認が必要。 hoge というキーがあった場合は > type hoge とする。 返す値としては string list set zset has

  • RedisをRubyから触ってみた - ごろねこ日記

    前回、多機能高速なキーバリューストアRedisをインストールして、体ソースについてきたクライアントで値を保存したり取得したりしてみました。 前回の記事 今回は同じ事をRubyからやってみたいと思います。 あと、最後の方でRuby+Redisでツイッターのタイムライン的なものを表現してみたり。 インストール ライブラリはgemで提供されています。 $ gem install redis使い方 Redis.newでオブジェクトを生成して、あとはRedisのコマンド(http://redis.shibu.jp/commandreference/index.html)にならってメソッドが実装してあるようです。 ローカルホストの標準ポートでRedisが動いている場合 redis = Redis.new ホストとポートを指定する場合 redis = Redis.new(:host => "10.0.

    RedisをRubyから触ってみた - ごろねこ日記
    IzumiSy
    IzumiSy 2015/11/28