- 浏览: 23720 次
- 来自: ...
最新评论
文章列表
# -*- coding:utf-8 -*-
import struct
def pack(command_id, sequence, session_id, body):
"""
网络传输
@param command_id: 协议编号
@param sequence: 序列号
@param session_id:
@param body: 包体,str类型
@return: 二进制串
"""
heade ...
基于redis的sorted set实现排名(Ranking)和等级玩家搜索功能。testcase1()有方法的调用样例:
#-*- coding: utf-8 -*
import redis
import random
# 调试开关
_DEBUG = False
# 删除缓冲
BUF_SIZE = 128
def _import_func(func_name):
components = func_name.split('.')
if len(components) == 1:
return globals()[f ...
def init(sck)
sck.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
#连接60秒没有任何数据开始发送探测
sck.setsockopt(socket.SOL_TCP, socket.TCP_KEEPIDLE, 60)
#探测发包时间间隔为6秒
sck.setsockopt(socket.SOL_TCP, socket.TCP_KEEPCNT, 6)
#探测次数为5次
sck.setsockopt(socket.SOL_TCP, socket.TCP_ ...
手机游戏通用账号结构
- 博客分类:
- 工作总结
1.账号服务器:
数据库表结构 guid,mail, password
2.游戏服务器
数据库表结构:guid, uid
方式1 : 直接登录 和 账号登录分开处理,直接登录不过账号服务器。
方式2 :直接登录 和账号登录统一处理,都过账号服务器。
import pylibmc
_curr = pylibmc.Client(['127.0.0.1'], binary=True)
_curr.behaviors = {'cas':True}
最新版本pylibmc支持cas操作
concurrence examples
#server
#chat.py
from concurrence import dispatch, Tasklet, Message
from concurrence.io import BufferedStream, Socket, Server
class MSG_WRITE_LINE(Message): pass
class MSG_QUIT(Message): pass
class MSG_LINE_READ(Message): pass
connected_clients = set() #set of curren ...
globals()函数返回一个map,这个map的key是全局范围内对象的名字,value是该对象的实例.
def _import_func(func_name):
components = func_name.split('.')
if len(components) == 1:
return globals()[func_name]
mod = __import__(components[0])
for comp in components[1:]:
mod = getattr(mod, comp)
...
#-*- coding: utf-8 -*-
import string
def translator(frm='', to='', delete='', keep=None):
if len(to) == 1:
to = to * len(to)
trans = string.maketrans(frm, to)
if keep is not None:
allchars = string.maketrans('', '')
delete = allchars.translate(all ...
在你的py脚本中加入以下几行代码
import os,sys
from django.core.management import setup_environ
import settings
setup_environ(settings)
苹果最近修改了规则,正式上线之前申请时请使用沙箱地址
客户端支付成功,发送信息到服务器,进行二次验证。
#-*- coding: utf-8 -*-
from django.http import HttpResponse, HttpResponseRedirect
import simplejson as json
import httplib
def pay_check(request):
uid = request.uid
params = request.POST.get('params','')
if not para ...
利用mysql的LAST_INSERT_ID实现一个简单的自增长的id。
mysql建表
CREATE TABLE `sequence` (
`id` int NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
#初始化
INSERT INTO sequence VALUES (0);
#-*- coding: utf8 -*-
import MySQLdb
import settings
def generate():
db_args = settings.DB_ACCOUNT_PASSWORD['far ...
linux 定时任务
- 博客分类:
- linux
为当前用户创建cron服务
1. 键入 crontab -e 编辑crontab服务文件
例如 文件内容如下:
*/2 * * * * /bin/sh /home/admin/jiaoben/buy/deleteFile.sh
保存文件并并退出
*/2 * * * * /bin/sh /home/admin/jiaoben/buy/deleteFile.sh
*/2 * * * * 通过这段字段可以设定什么时候执行脚本
/bin/sh /home/admin/jiaoben/buy/deleteFile.sh 这一 ...
首先需要明白在django模板系统中,有两种封装模板变量的类:
一个是django.template.Context,这是最常用的,我们在使用render_to_response方法的时候传入的第二个dictionary参数,就会被这个Context类封装一次,然后传到模板当中;
另一个是django.template.RequestContext,它和Context类相比有两个不同之处。
第一个不同的是,在生成一个RequestContext变量的时候,需要传入一个HttpRequest对象作为它的第一个参数:
c = RequestContext(request, {'foo': 'b ...
map函数作用于给定序列的每一个元素,并用一个列表来提供返回值。
map函数python实现代码:
def map(func,seq):
mapped_seq = []
for eachItem in seq:
mapped_seq.append(func(eachItem))
return mapped_seq
#-*- coding: utf-8 -*-
import urllib
import urllib2
import time
def post(url, data):
req = urllib2.Request(url)
data = urllib.urlencode(data)
#enable cookie
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor())
response = opener.open(req, data)
return re ...