`
simomo
  • 浏览: 26118 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论
文章列表
  这两个是由ESN公司开发的的memcache、mysql客户端 显著特征是: 完全由C、C++完成,更高效 可以与gevent的socket monkey patch很好的配合,实现异步的memcache和mysql访问 文档几乎为0,没有可供参考的例子。摸索了一点点东西记录如下: UltraMemcache 安装 从github或者pypi上下载umemcache,解压后 python setup.py build install 安装 使用 import umemcache mem_client = umemcache.Client('1 ...

AmFast源码浅析

一直以来,很好奇amfast是如何实现服务器端基于长/普通轮询通道的主动推送的。最近看源码有了收获,记录如下。     正本清源——主动推送         正所谓欲将取之必先予之,要想理解服务器端的主动推送,就必须要坚定心中对于http协议: 一次请求,一次回复;没有请求,没有回复! 的信念,坚信除了websocket和flash socket,所有的浏览器上的消息更新都是基于浏览器的主动发出的http请求,所谓的“主动推送”只是个美丽的名字。   隐藏的真相——广播即固化 amfast提供的消息广播的接口如下:   from amfast.remoting impor ...
   用的是ubuntu10.10 server版,自带的mysql。安装mysql-python时提示没有mysql_config文件。解决方法:安装mysql-client 和 libmysqlclient-dev包即解决。
问题暴露: 客户端第一次访问时,总会卡上1——2s才能获得数据,之后再访问时就没有问题了。   问题解决: 在eclipse的django shell模式下测试服务端写的一些接口,在调用需要从数据库查询数据的方法时, 也出现了卡了1——2s的情况,然后提示: the sets module is deprecated   这才意识到,是这个在python2.6中不推荐使用的sets模块导致了问题。 经过查询python2.6的手册:   Deprecated since version 2.6: The built-in set/frozenset types repla ...
因为项目要用到memcache,一直头疼于memcache python绑定的线程安全问题,今天无意中才发现,django的cachebackend已经处理好了~  写道 Django relies on the cache backend to be thread-safe, and a single instance of a memcache.Client is not thread-safe. The issue is with Django only creating a single instance that is shared between all threads ( ...
  最新统计的前五: 1、 Java 18.482% 2、 C      14.986% 3、C++   8.187% 4、python  7.038% 5、php     6.973%     第六是C#   这次统计加上了baidu的搜索结果~      
mysql-python1.2.3可以连接MySQL5.5 环境:Windowsxp python2.6 mysql5.1(之前安装的,没有删除) mingw32 安装mysql5.5: 这个没什么好说的,记得安装的时候把开发人员所需的内容选上(或者完全安装)。 我的mysql5.1还跑在3306端口,所以5.5就设在3307端口。 服务的名字也不能用“mysql”,因为5.1占了,所以我设成mysql5.5   安装mysql-python1.2.3: 安装1.2.2的时候使用的是Windows exe格式的安装包,没有费什么劲,没有想到这个1.2.3的源码包装起来这么费劲。 ...
A模型(表)和B模型(表),俩模型(表)一样。 目标:从A表中取出一条记录,然后转存到B表中。 实现的方法: a = A.objects.all(id = **) a._meta.db_table = 'B' a.save() 居然这样就可以了~ 个人感觉很神奇,因为从python看来,a是A的一个实例,但是只是改了a的一个参数,然后通过调用a自己的方法,居然创建出来了一个B的实例b~ _meta是一个model里所有设定(参数)的集合。
编码与解码 python 内置的数据结构 和 As内置的数据结构之间的转换见:http://code.google.com/p/amfast/wiki/EncodeAndDecode#Encoder_and_Decoder上的表格 自定义的类型映射 amfast支持用户自定义的对象类型。 使用 amfast.class_def.ClassDef对象,以达到用户自定义对象的序列化与反序列化。 使用ClassDefMapper将一个amfast.class_def.ClassDef与一个客户端的对象映射起来。 from amfast import class_def ...
存储session数据 使用connection对象存储session数据 1、RemoteObject 的session 数据 客户端使用RemoteObject连接服务器端时,AMFast 会自动为 RemoteObject 创建一个 connection对象 。 simomo:这里connection是用来存储session数据的。注意:需要用ExtCallableTarget而不是CallableTarget来解析AMF 包或消息,这样才能使用connection对象。   # Use ExtCallableTarget to expose Packet and M ...
因为要用到amfast,所以尝试着将其文档翻译为中文,供大家参考。   MessagingServer(消息服务): 1、overview(概述): 频道集(ChannelSet)对象负责路由(route)受到的请求信息(request message)和派发、发送(dispatch)回复 ...
用命令easy_install amfast安装,最后总是提示: error: Setup script exited with error: command 'gcc' failed with exit status 1 这个页面: http://www.rmansuri.net/2009/11/20/setup-script-exited-with-error-command-gcc-failed-with-exit-status-1/ 上给出了解决办法,要先安装python-dev: apt-get install python-dev 然后再用easy_install 安装amfas ...
为了跑memcache,安装了一个ubuntu server版,纯命令行下安装django、ipython等不在apt-get里的软件很不爽,一直是在用 elinks 这个命令行浏览器去下载。不多废话。下面是简单的路子: 1、wget -q http://peak.telecommunity.com/dist/ez_setup.py    python ez_setup.py    这就把setuptools装上了 2、easy_install ipython    easy_install django    等等…… 就随你喜欢了 wget是个很有用的工具,以前居然没有听说过~~!汗~ ...
Global site tag (gtag.js) - Google Analytics