最近、セッションストレージはKyoto Tycoonを使っています。ゲームだとFlash生成時の情報をセッションに突っ込んだりするので、セッションデータが大きくなりがちです。それをユーザーごとに頻繁にGet/Setされると結構バカにならないトラフィックになったりulogがすごい勢いで溜まったりします。 Kyoto Tycoonはmemcachedプロトコルで使うことが多いでしょう。実はmemcachedプロトコルには、データを圧縮して通信するオプションがあり、Kyoto Tycoonでもそれを使うことが可能です。 Cache::Memcached::Fastだとこんな感じで指定できます。 my $kt = Cache::Memcached::Fast->new({ servers => [...], compress_threshold => 500, compress_ratio =>
■CakePHPに関する書籍 CakePHP書籍一覧 CakePHPを使った開発で、Authコンポーネントを何気なくつかっていると、突然、IEでなぜかセッションが切れる事がある。色々な情報がネット上に転がっているので、ここらで少しまとめておく。もしも、CakePHPでIEのセッション切れが起きた際は、順番に確認していくと良いと思う。 1.$this->Session->renew();を使っていないか? 毎回、切れるわけではないし、他のブラウザなら使っていても平気みたい(?)だが、フォームのデータ受け渡しなどでセッションを使っている際、うっかり書いてしまうと突然セッション切れを起こす。 2.セキュリティレベルはどうなっているか? app/config/core.phpにあるSecurity.levelの値を確認。「high」でも「medium」でもなく、「low」にしてみる。「hig
Socket.IO のサーバは v0.7 からスタンドアローンでも立てられるようになりましたが、 Express のサーバ上に Socket.IO のサーバを同居させる構成は多いと思います。 しかし Socket.IO は Express が HTTP で確立したセッションとは別のコネクションを確立するため、 例えば、 Socket.IO で接続したユーザが Express で認証したユーザかどうか等が判別できません。 そこで、 Socket.IO で接続を確立時に Express のセッション用の Cookie を取得して、接続を識別できるようにし、 さらに Socket.IO でのやり取りが長くなっても、その間にセッションデータが切れることが無いように、更新する必要が有ります。 Socket.IOv0.7 を用いてこれを実現する方法が、こちらで紹介されていたので、試してみました。 So
We use sessions when we want to preserve certain data across subsequent accesses. PHP allows us to use different handlers when we’re using sessions. The default one is filesystem, but we can change it with session.save_handler in the php.ini. session.save_handler defines the name of the handler which is used for storing and retrieving data associated with a session. We also can create our own hand
expressは初期状態だとサーバーを再起動するとセッションが切れてしまいます。 セッションを維持するためにredisを利用します。 redisのインストール rpmからインストールしました。 wget ftp://ftp.pbone.net/mirror/centos.karan.org/el5/misc/testing/i386/RPMS/redis-2.0.0-rc4.el5.kb.1.i386.rpm rpm -ivh redis-2.0.0-rc4.el5.kb.1.i386.rpm chkconfig –level 3 redis on /etc/init.d/redis start expressにredisを設定する これはすごい簡単です。 /*********************************************************** * Modu
補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブ、はてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2011年1月27日に公開されたもので、当時の徳丸の考えを示すものを、基本的に内容を変更せずにそのまま転載するものです。 補足終わり 橋口誠さんから今話題の書籍パーフェクトPHP (PERFECT SERIES 3)を献本いただきました。ありがとうございます。このエントリでは同書のCSRF対策の問題点について報告したいと思います*1。 本書では、CSRFの対策について以下のように説明されています(同書P338)。 CSRFへの対応方法は、「ワンタイムトークンによるチェックを用いる」「投稿・編集・削除などの操作の際にはパスワード認証をさせる」などがあります。一番確実な方法は両者を併用することですが、ユーザ利便性などの理由から簡略化する場合で
こんにちは、 nodejs.jp の @masahirohです。 JavaScript Advent Calendar の最終日です。クリスマスだけど空気を読まずに Node.js の地味な話をします。ごめんなさい。 さて、 Node.js では Socket.IO を使えば、 WebSocket を使ったアプリケーションを割と簡単に作れるわけですが、これを Web フレームワークと一緒に使う場合、どうやってセッションを共有したらいいんだろう?とふと思いました。ユーザ名とパスワードをメッセージにのせたらいいんですかね? いや、セッション ID をメッセージにのせればいいのかな? うーん・・と思いながら Github をうろうろしていたら SessionWebSocket というアプリケーションを見つけました。セッション管理機能を追加する方法が結構参考になったので、コードリーディングをします
php, mongo, 実験EC-CUBEではsession管理をDBで行っています。しかし、デフォルトのバグがあり、高負荷状態になるとデッドロックがおきデータベースが落ちてしまうことがあります #571 (セッション変数の排他制御で不具合) ? EC-CUBE Trac そこでKVSを使って解決できないものか試してみました。MongoDBのインストール方法色々なとこに書かれているので参考にしてください CentOS5.5にMongoDBをインストールしてみる - 今日も適当ダイアリー » PHPerの為のMongoDB入門: エスキュービズム ラボ BlogCentOSにmongodbをインストールしてみる with php - イノベートな非日常EC-CUBEに組み込む参考に、というかまんま使わせていただきました PHPとMongoDBでセッション管理してみる - 今日も適当ダイアリー
Byju’s is cutting 500 to 1,000 more jobs at the firm, this time eliminating several non-sales roles as well, as the Indian edtech giant pushes to improve its finances, according to a person fami While platforms like Reddit and Twitter are changing rules and making life difficult for developers of third-party clients, the ecosystem of Mastodon apps is still growing. Today, indie developer Jake
CSRF対策のtokenはセッションIDで良い セキュリティ的にワンタイムトークン>セッションIDではない。 という話が、この辺の記事に書かれています。 高木浩光@自宅の日記 - クロスサイトリクエストフォージェリ(CSRF)の正しい対策方法 高木浩光@自宅の日記 - CSRF対策に「ワンタイムトークン」方式を推奨しない理由, hiddenパラメタは漏れやすいのか? 肝はこういう事のようです tokenは外部のサイトから知り難い(実質知り得ない)ものでないといけない セッションIDはcookieに格納される document.cookieは自ドメインのものと親ドメインのものしか見れない→外部サイトで動かすJavaScriptからは参照できない セッションIDは『暗号学的に安全な擬似乱数生成系で生成されているはず』(引用) 推測も事実上できない 補足すると、セッションIDを使用したCSRF対
I recently started working with Compojure, a web framework for programming language Clojure. After playing around with basic GET and POST requests I tried to store and load data from a session. As Compojure is quiet new, there is not much documentation how to deal with sessions, particularly as Compojure and it’s API still changes fast. In the following post I’ll show a brief example on how to cre
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く