`
xiaoyu966
  • 浏览: 254637 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
前言   初学python时,第一次见到“@”符号,感觉很眼熟,如果是学习过java或者接触过AOP(面向切面编程),对于这个符号应该是比较熟悉的。实际上,python中的@也是AOP思想的一种实现。   python的@,官方语言叫做“decorators”,即装饰器。这是python的一大特性,对于初学者来说,很难透彻的理解decorators。本文以多个python例子为引,层层深入,帮助读者来透彻的理解decorators。   从函数开始   decorators和函数是密不可分的,因此必须对python的函数有所了解,之前我写过一篇函数基础的博客,链接如下:htt ...
函数基础 关于函数基础,可以查看我的另一篇博客:http://yunjianfei.iteye.com/blog/2186064 与本文相关的,有两个重要概念:变量作用域(scope)与生命周期(lifetime) 如果对于这两个概念有所疑惑,可以先去了解一下。   嵌套函 ...
从定义开始 众所周知,函数是可以重用的程序段,它们允许你给一块语句一个名称,然后你可以在你的程序的任何地方使用这个名称任意多次地运行这个语句块。   python的函数是用def关键字来定义,主要包括:函数名、函数参数、函数体、函数返回值。     #!/usr/bin/env python def foo(): return 1 print foo()  以上例子的运行结果为:   1  该例子中,函数名为foo, 我们通过foo()来调用该函数,打印返回值1   函数Scope python函数运行的时候,会创建自己的scope,即作用域( ...
这篇文章的目的在于对Tornado这个异步服务器软件的底层进行一番探索。我采用自底向上的方式进行介绍,从轮询开始,向上一直到应用层,指出我认为有趣的部分。 所以,如果你有打算要阅读Tornado这个web框架的源码,又或 ...
废话不多说,直接上github:https://github.com/yunjianfei/distributed_lock   直接读代码即可,这里就不详细解释了,一切尽在代码中~
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================ 在使用Mysql的过程中,数据达到不同的量级,都要进行相应的优化,否则会成为整个系统的瓶颈。 下面是我针对Innodb做出的一些优 ...
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================ 前言 在做分布式系统开发的时候,分布式锁可以说是必需的一个组件。最近做了一些调研和尝试,经过对比,基于ZooKeeper的分布 ...
今天按照zookeeper官网的文档配置了一套zookeeper集群。链接如下: http://zookeeper.apache.org/doc/trunk/zookeeperAdmin.html#sc_systemReq 按照官网的建议,我配置了3台的测试环境,三台完全启动之后,查看状态,两台是follower,一台是leader.   ./bin/zkServer.sh statusJMX enabled by defaultUsing config: /opt/yunfei/zookeeper-3.4.6/bin/../conf/zoo.cfgMode: follower./bi ...
MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重。本人从13年7月份起,一直在美团核心业务系统部做慢查询的优化工作,共计十余个系统,累计解决和积累了上百个慢查询案例。随着业务的复杂性提升 ...
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================ Gearman是一套非常优秀的任务分发框架,可以用于分布式计算。现在我来介绍一下gearmand服务的安装启动以及gearman的 ...
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================   Supervisord是用Python实现的一款非常实用的进程管理工具,在批量服务化管理时特别有效。可以将非Daemon的应 ...
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================ 在centos、rhel的OS下,我们一般通过chkconfig来管理服务,比如开机自动启动服务之类。 这里我贴出一个很好用的 ...
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================ 废话不多说,直接上主题。 1. 下载nginx源码,直接运行命令: cd /root wget http://nginx.o ...
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================   在HTML页面中,如果想提交表单后不刷新整个页面,通过ajax来提交是比较常用的方法。 Jquery针对ajax也做了一些 ...
============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ ============================================================================ 做web设计的时候,经常会遇到父表,子表的问题,例如:班级表&学生表, 集群表&主机表等等。。说白了就是数据库设计 ...
Global site tag (gtag.js) - Google Analytics