フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
YAPC::Asia Tokyo 2013 にて「PSGI/Plack・Monocerosで学ぶハイパフォーマンスWebアプリケーションサーバの作り方」というはなしをします。 トークの内容は 先日、MonocerosというPlack::Handler(サーバ)をリリースしました。MonocerosはStarmanやStarletと同じくPrefork型ですが、AnyEventを使い、C10Kのような多数のコネクションを捌くことができる特徴を持ち、非常に高いパフォーマンスを備えています。 このセッションではStarmanやStarlet、Twiggyといった各Plack::Handlerの内部構成の簡単な紹介、Monocerosを実装する上で学んだPlack::Handlerの構成や作成方法から、forkやUNIXプロセス、Linux TCPの話を交えて、高性能なWebアプリケーションサーバ
<< 2013/07/ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1. mrubyのmrb_gc_arena_save()/mrb_gc_arena_restore()の使い方 >> _ mrubyのmrb_gc_arena_save()/mrb_gc_arena_restore()の使い方 Twitterで質問を受けたので、 mrubyのmrb_gc_arena_save()/mrb_gc_arena_restore()の使い方 という解説を行った。が、1つ140文字のTwitterでの解説にはどうしても無理があるので、 こっちでまとめることにする。 まずは、Twitterの発言*1はこんな感じ。 arenaの目的。利用中のオブジェクトはGCに回収されないよう保護
diffビューア/マージツールのMeldの開発者は7月28日、最新安定版「Meld 1.7.4」をリリースした。「Subversion 1.8」のサポートなどが特徴となる。 Meldはファイルやディレクトリの比較ができるGUIツール。2方向および3方向での差分表示が可能で、Git、Bazaar、Mercurial、Subversionなど主要なバージョン管理システムをサポートする。視覚的に分かりやすいUIを特徴とし、自動マージ、リアルタイムでの比較情報アップデートなどの機能を備える。多くのLinuxディストリビューションで公式パッケージとして提供されているほか、WindowsやMac OS Xでも動作する。 Meld 1.7.4では、コミットダイアログがコミットメッセージを自動で内包するようになったほか、フォルダ比較でもリアルタイム検索を利用できるようになった。また、6月に公開されたSub
Webシステムの方式設計をする際に、わりと悩むのがアプリケーション・サーバのセッション(session)の保存先です。アプリケーションサーバとは、TomcatやJBoss,IISやRuby on Railsなどで利用するUnicornやPassengerなどです。そもそもHTTPの基本仕様がステートレスな為、状態を保持する為にはどこかに状態を保持する必要があります。その解決策がセッションになります。そこでセッションの保存戦略を考える必要があるのですが、アプリケーションサーバやサイトの用途や性格、扱うデータの気密性・重要性によっても変わってきます。 それ以前にセッションの保存先のことの呼び方の定番が何かすら解らなかったりします。セッション・ストアとかセッション・ストレージとか、はたまたセッション・マネージャーとか。今回は、セッション・ストアで統一します。 主なセッションストアの種類と保存戦略
先月にに引き続き、今月もアニメーションについて解説していきます。 先月は高レベルAPIのトランジションを使用しましたが、今月は低レベルAPIのタイムラインを使用します。 タイムラインの基本 前回、アニメーションの原理としてDukeが手を降る絵を示しました(図1)。これを特定の時間で切り替えて、動きを表現するわけです。 この1コマ1コマのことを英語ではフレーム(Frame)と呼びます。 コンピュータを使用してアニメーションを行なう場合、前回も言及したようにすべてのフレームを記述する必要はありません。必要な部分だけ記述して、後は補間して描画します。 前回使用したトランジションの場合、始めと終わりだけを指定すれば、中間の部分は自動的に補間を行なってくれます。しかし、始めと終わりだけの指定だけでは不十分な場合もあります。たとえば、途中で動きが変化する場合などは中間部分でフレームを指定する必要があり
Vagrantで手軽に構築してオープンPaaS「Cloud Foundry」を理解する:DevOps時代のJavaプログラマのためのオープンクラウド入門(2)(1/4 ページ) オープンなクラウドで重要性を増すJava。DevOps時代のJavaプログラマはアプリケーション開発者(Dev)もデプロイや運用(Ops)面におけるクラウド/インフラ技術への幅広い理解が必要となる。本連載では、さまざまなオープンクラウド技術を紹介していく。今回は、オープンソースのPaaSである「Cloud Foundry」を紹介。また、環境構築が手軽にできる「Vagrant」を使ってローカルにCloud Foundryの開発用稼働環境を用意してみよう。 Cloud Foundryとは Cloud Foundryはヴイエムウェアが中心となって開発をしているオープンソースのPaaS構築用ソフトウェアです。ソースコードは
複数のプログラマが関わる場合、優れたコードを書くだけではプロジェクトは成功しません。全員が最終目標に向かって協力することが重要であり、チームの協力はプロジェクト成功のカギとなります。本書は、Subversionをはじめ、たくさんのフリーソフトウェア開発に関わり、その後Googleでプログラマを経てリーダーを務めるようになった著者が、「エンジニアが他人とうまくやる」コツを紹介するものです。「チームを作る三本柱」や「チーム文化のつくり方」から「有害な人への対処法」までエンジニアの社会性について、楽しい逸話とともに解説します。 目次 推薦の言葉 日本語版まえがき ミッションステートメント 謝辞 はじめに 1章 天才プログラマの神話 1.1 コードを隠して 1.2 天才の神話 1.3 隠したらダメになる 1.4 チームがすべて 1.5 三本柱 1.6 実践 HR T 1.6.1 エゴをなくす 1.
最近はplenvを使うべきって感じだったんだけど、promptとかemacsとかを対応させるのがちょっと面倒でサボっていた。そろそろやばいと思ったので全部plenvに移行した。 インストール macだったらbrewで提供されているので入れる。https://github.com/tokuhirom/plenv を参考に。 $ brew update $ brew install plenv $ brew install perl-build $ plenv install 5.14.2 # お好みのperl入れる $ plenv shell 5.14.2 $ plenv install-cpanm promptに現在利用しているperlのversionを出力する 以下のように、promptにperlのversion出てるとうれしいのでそういう感じにする。 plenv version-nam
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く