>>100
ありがとうございます。ずばり知りたいと思っていたことの解説がありました。
http://www6.plala.or.jp/kozai/
http://homepage3.nifty.com/toremoro/p2p/p2p.html
http://www.p2p-conso.jp/p2p_sionet.html
まだ少ししか理解できてませんが、なにか香りがしますね。いろいろ妄想を膨らませたくなる分野のようです。まずは第一歩からすこしずつ勉強しようと思います。仕組みを考えるには、数学的な理論構築をちゃんとしないといけなさそうです。そして法律的にも。
Web の利用技術
RSS, Trackback や P2P などなど知らないことばかり;;
BitTorrentですが、これは純粋な大容量のファイル交換を目的としています。そのため、ゲーム対戦などの基盤には向いていません。
P2Pフレームワークとしては、オープンソースなものでは、SOBA以外にJavaのJXTA http://www.jxta.org がP2Pの草分け的な存在です。(英語の資料がほとんどですが)。
SOBAはGUIのツールキット(GUIコンポーネント)と共に提供されていて、インスタントなP2Pコミュニケーションに向いています。JXTAはGUIとは完全に切り離した形で提供されているので、いろいろな用途に使えます。フレームワークとしては、Bill Joyが設計しただけあって、シンプルで充実しています。インスタントな使い型もできますし、非同期処理もかのうです。
http://www6.plala.or.jp/kozai/ には、わりと情報が集約されていて、いろいろリンクも張ってあります。
風呂敷を広げます。P2P も範疇に入れようかと。
将棋の対局をするのが目的なのですが、鯖 vs クライアントじゃ、やはり負荷が集中し過ぎます。鯖経由でクライアント同士 game してもらうのも考えたけど、手間ばかりかかってなにかと面倒。やはり P2P が自然だし、リソース的にも無理がありません。
で勉強開始ということで、まずこの辺から
http://bitconjurer.org/BitTorrent/
http://lowlife.jp/yasusii/stories/16.html
http://www.openp2p.com/pub/q/p2p_category
http://www.liris.org/zope/blog/323
今日初めて Trackback 使ってみました。
百聞は一見にしかずで、やっと了解^^
引っ張ってくれる人が居るとこれほど楽なものかと思います。
一方 RDFSummary は mooya さんのところで発展中のようです。
年末に向けていろいろ楽しみです。
euc-jp の時は RDF のチェックで蹴られてたけど
http://feedvalidator.org/check
UTF-8 にしたらすんなり通してくれたので、RSS Valid シール貼ってみました。
>>94
__safe_for_unpickling__ でうまくいきました
class MyDateTime(DateTime):
__safe_for_unpickling__ = 1
self._v_updatedate = MyDateTime()
# self._v_updatedate = DateTime()
としたところ、unpickling error は無くなりました。
__safe_for_unpickling__ 自体は
/usr/share/zope/lib/Components/cPickle/cPickle.c で見付けましたが
なかなか理解が追い付いてきてません。今のところごめんなさいです。
mx,mx.DateTime の方は allow_module 使っても認証ダイアログが出て
しまい、うまくいってません(この辺も自信なし)
>>92 瓦版表示の時に認証ダイアログが出てしまいます。(原因不明;;)
GlobalModules とかの __init__.py に
allow_module と allow_class を使って mx 追加したらだめでしょうか?
関係ないかな?
http://collector.zope.org/Zope/355 のは、試してない
ので分からないですが、
from DateTime import *
import pickle
class MyDateTime(DateTime):
__safe_for_unpickling__ = 1
d1=MyDateTime()
f=open('/tmp/a.dump','w')
pickle.dump(d1,f) # ためしにダンプしてみる
f.close()
f=open('/tmp/a.dump') # ダンプしたものを読み込んでみる
d2=pickle.load(f)
これで unpickling error 起こさないので、いけるような
気もします。参考までに _safe_for_unpickling__ は Zope で
grep かけても出てこない。python の方を見ないといけないところ。
瓦版に Debian セキュリティ勧告を追加
http://www.debian.org/security/
iso-2022-jp 文字化けするので直修正。(RDFSummary の rpm 更新すること!)
>>91 mx.DateTime 使ってみると
助太刀ありがとうございます。試してみました。
確かに unpickling error は出なくなるのですが、
瓦版表示の時に認証ダイアログが出てしまいます。(原因不明;;)
pickles されたファイルやキャッシュを消してクリーンな状態で
zope を再起動してみましたが、ダイアログが出る現象はかわりません。
なおセキュリティタグはいじってません。
http://collector.zope.org/Zope/355 を参考に
class MyDateTime(DateTime):
def __init__(self):
DateTime.__init__(self)
self.__safe_for_unpickling__ = 1
なクラスを作り
self._v_updatedate = MyDateTime()
などとしましたがやはり
not safe for unpickling エラーが出ます。(DateTime直さないとダメ?)
現状は
- self._v_updatedate = DateTime()
+ self._p_updatedate = DateTime()
として ZODB に収納するように変更して、しのいでいます。
# なお環境は zope-2.6.2b5, python-2.2.2 (VineSeed) です
# 踏みこみ少なくて申し訳なし