摘要:
Linux has built-in support for keepalive. You need to enable TCP/IP networking in order to use it. You also needprocfssupport andsysctlsupport to be ... 阅读全文
摘要:
dbpydbpy是一个python写的数据库CURD人性化api库。借鉴了webpy db和drupal database的设计。 如果喜欢 tornado db 或者 webpy db这类轻巧的db库,或者想发挥原生SQL优势,那么值得一试。Featues灵活简单天马行空的SQL构建语法糖线程安全... 阅读全文
摘要:
static_cast可以用来类的上行转换,也可以用来下行转换,但这样可呢有安全问题用来void* 的转换整形之类的非指针转换dymanic_cast用于指针和引用的转换用于上行转换,下行转换回失败如果不是完整的原对象将会失败。const_cast用于转换const属性的对象。 或者移除。class... 阅读全文
摘要:
模板语法有点像php!/usr/bin/env python"""#demo.py.html test if 1 ?> Yes, it is No it is not ... 阅读全文
摘要:
使用sqllite3和metadata简单的封装了个简单的orm#!/usr/bim/python#-*-coding: utf-8 -*- import threadingimport sqlite3 import sys __module__ = sys.modules[__name__] de... 阅读全文
摘要:
简单的memory cache。可以用来内存缓存任意函数方法。#!/usr/bin/python import functoolsfrom threading import RLockimport logging LOGGER = logging.getLogger(__name__)class ... 阅读全文
摘要:
聊天系统Contents聊天系统叙聊天的类型现有的几个开源方案Jabber/XMPP的弊端轻巧的MQTT架构设计实现叙对于互联的多用户在线游戏,聊天是不可少的。聊天的类型这里分类是按用户的多少来分类。单点类型很简单如Skype(QQ)那样,你可以和好友,一对一的在线聊天。多点类型如Skype,可以自... 阅读全文
摘要:
主要是一个简单的cherrypy hello例子import cherrypyfrom jinja2 import Environment, FileSystemLoaderimport os def create_server(): euterpectl = EuterpeRoot() ... 阅读全文
摘要:
分布式任务系统 (Python)github地址https://github.com/thomashuang/Lilac/blob/master/README.rst这里将介绍Liac的设计架构,首先分布式任务系统的定义是在多台服务器执行定时任务。实现技术分布式定时调度,可以同时在不同服务执行。使用... 阅读全文
摘要:
给cherrypy 打gevent WSGIServer的patch1. patch Serving 类2. 关闭python的原生WSGIServer具体使用例子参考 我的开源项目 https://github.com/thomashuang/Lilac#!/usr/bin/env pythoni... 阅读全文
摘要:
这是关于chunk encoding传输以前相关传输编码的处理。没有做压缩解码的处理。import tornado.ioloopimport tornado.iostreamimport socketclass WebRequest(object): LINE_END = b'\r\n' ... 阅读全文
摘要:
在数据库访问时,建立连接需要400-500毫秒的时间。如果使用连接池可以增强系统的性能,主要缓存保留一定数量数据连接,可以重复使用。但并不是使用连接池就能改进性能,下面列举常见的连接池问题和什么是好的连接池。是否使用连接池?使用连接池的条件是,是否使用连接池后,能减少数据库连接所用的时间,并整体增强... 阅读全文
摘要:
企业系统架构评估标准1.吞吐量,在简单桌面系统,我们可以认为拷贝文件所用时间和拷贝文件大小作为一个简单的吞吐量概念,在企业系统中,我们把在等效时间所完成的事务,比如一秒可以完成2w事务。2.延迟和响应,对单个外部请求返回回复所用的时间,从请求开始到得到回复期间的时间响应延迟。3.并发量,在单位时间能... 阅读全文
摘要:
阅读全文
摘要:
Uwsgistart uswgiuwsgi --harakiri 360000 --body-read-warning=10000 --max-fd=65536 -b 1000000 --http-buffer-size=65536 --post-buffering 8192 --post-buff... 阅读全文
摘要:
prerequisitesneed gcc compiler apt-get install install build-essentialspcre apt-get install libpcre3 libpcre3-devinstall zlib library apt-get... 阅读全文
摘要:
Couchbase V(管理任务)多读写在Couchbase2.1中支持硬盘多读些(Multi- Readers and Writers),一般双核4G服务默认3个thread4核16G内存一个设置为 8个线程Server Warmup在Couchbase重启后,需要经历热身阶段才能进入运行状态:初... 阅读全文
摘要:
Couchbase IV(管理与维护)管理常用命令Command Descriptionserver-list List all servers in a clusterserver-info Show details ... 阅读全文
摘要:
Couchbase III(Python Library)第一步安装使用pip安装:>pip install couchbase --quiet确认是否安装成功:>python -c "import couchbase" API 第一印象from couchbase import Couchb... 阅读全文
摘要:
Viewsview的作用是从没有结构和半结构的数据对象中抽取过滤需要的信息,并生成相关的index信息,通常生成json数据。 view通过迭代bucket所有文档而提取过滤信息,进而生成index。一个bucket可以有多个设计文档,一个设计文档(Design Document)可以有多个view... 阅读全文
摘要:
Couchbase第一印象(架构特性)面向文档 保存的字节流总有一个 DOCUMENT ID(Object_ID)高并发性,高灵活性,高拓展性,容错性好面向文档的集群存储系统每个文档用一个唯一的Doc ID均衡负载Buckets vs vBuckets1. Bucketscouchbase的存储逻辑... 阅读全文
摘要:
排行榜在游戏中非常常见的功能之一,在游戏中有各种排行榜,如工会活跃度,玩家的英雄战斗力排行等。当数据上亿时,如果使用数据库直排是致命的慢,远远超出用户接受的响应时间。也对数据库造成非常大的压力。本文将会讲述千万用户级别的用户排行系统的一些设计理念并讲述数据库直排以及使用桶排和内存数据优化排行榜。在讲... 阅读全文