标签归档:原创

review board 安装使用小结

抽出了一些业余时间,折腾了几天,终于基本拿下了review board,安装配置完毕,并创建了第一个测试review code。这过程中,遇到了不少问题需要记录一下的:

1. easy_install安装相关库的时候,很经常是极其郁闷,国外的源基本被墙,所以这里记录了一些国内对应的源 http://pypi.douban.com/  豆瓣  http://pypi.hustunique.com/  华中理工大学 http://pypi.sdutlinux.org/  山东理工大学 http://pypi.mirrors.ustc.edu.cn/  中国科学技术大学,使用方法:easy_install -i 源 库;

2. 因为环境是使用apache+mod_wsgi,编译mod_wsgi模块的时候,请注意指定–with-apxs=这参数,尤其需要注意的是–with-python 这个参数,因为linux系统(centos)一般默认安装python2.4,我们使用py的时候,往往会重新安装为python2.7,因为需要指定你的python版本,免得带来不必要的麻烦;

3. python环境推荐使用python2.7;

4. 安装mysql-python库的时候,你有可能像我一样,安装没报任何的错误,结果import MySQLdb的时候却报错了,是尝试ln -s /usr/local/mysql/lib/mysql/libmysqlclient* /usr/lib  然后再ldconfig  有可能解决你的问题;

5. 下一步尝试使用post-review;

6. 缓存有空在改成memcached即可,现在使用的是file;

7. 图略。

学习diff 和 patch 使用方法

演练:

备注:

单个文件
diff –uN from-file to-file >to-file.patch
patch –p0 < to-file.patch
patch –RE –p0 < to-file.patch
多个文件
diff –uNr from-docu to-docu >to-docu.patch
patch –p1 < to-docu.patch
patch –R –p1 <to-docu.patch

配置Nginx与Lua的history

配置Nginx与Lua的history。

备注:安装Lua或者LuaJIT都是可以的。

svn迁移记录

这两天需要将旧的测试服务器的svn迁移到新的测试机器上。然而旧的svn结构是每个项目为一个svn库的,如下结构:
svn://127.0.0.1/www1
svn://127.0.0.1/www2…….
新的测试svn的结构是只有一个svn库为test,如下结构:
svn://127.0.0.1/test/www1
svn:/127.0.0.1/test/www2…..

现在需要将旧svn库导入新的svn库,步骤如下:

当然,如果新迁移的目录结构为svn://127.0.0.1/test/www目录/www1目录 导入的命令则为

经测试,搞定!

备注:

迁移导入的时候,请先建立好目录www1,www2或www/www1 否则报错!

mysql备份脚本

写脚本之前先试试

脚本

测试

搞定。

svn自动发布系统(web)

对自己写的svn发布系统总结:

1. 目标(web)机器创建rsync服务,并使用帐号为 www用户

2. svn代码机器安装python及pysvn库

3. svn 增加钩子 调用同步脚本py

4. 同步脚本py(通过pysvn检出或更新 副本到目录data,并获取检出或更新文件列表 生成rsync命令)

5. 测试

备注:

同步脚本做好logs,并记录好什么时候谁进行了同步

难点:理解rsync服务,特别是它对及层目录没的时候该如何才能自动创建目录及文件,还有需注意svn 删除操作的时候,rsync服务是需要刷新整个目录来删除的,所以需注意一些目录的排除刷新。

代码整理好再公布。

回顾音乐达人项目

目标:未知

需求:

1. 普通人 (注册帐号,独立网页空间,收藏视频,关注音乐达人及申请成为音乐达人)

2. 音乐达人

1)注册帐号

2)创作视频

3)上传视频并填写相关资料及联系方式

4)审核视频

5)通过则为音乐达人,不通过需重复上面流程

6)拥有独立网页空间 (音乐达人曲风,浏览量,作品等等)

……

3. 技术 nginx php flash js redis memcached cdn 云存储 ffmpeg等等…….

备注:

无法提供详细。申请及审核流程是否合理直接影响整个项目。

 

 

vip项目改造总结

vip项目改造总结:

1. 增加年费标识

2. 充值表分表(临时请求,充值成功及备份)

3. 预消费分摊表(分表,按月)

4. 充值接口建议增加额外策略接口

5. 财务报表按日分摊

6. 即时生成分摊表改后台队列跑及以接口形式调用生成分摊记录

7. 分摊表生成改存储过程

8. 分摊表记录建议从库生成

9. 做好监控脚本

备注:财务报表需求是个头大的活。

symfony2 创建实体

As I figured it out, until now, Symfony2 hasn’t got a common schema.yml for all entities (an entity is a class/object that maps the correspondent table) as was in Symfony 1.4, but the database configurations are made separate for every entity. In these conditions creating a database starting from the existing entities is a much more laborious task than it was in Symfony 1.4, but not impossible.

There is, although, another solution to this problem, building the entities starting from an existing database. There is a good tutorial in Symfony2 cookbook, but I will also list here the commands needed to complete this task. All of these commands assume that I configured the parameter.ini correctly, so Symfony knows which is the database to use, and also that the bundle Main/MyBundle is initialized, in order to store the entities that will be created.

1. First Symfony needs to generate the metadata corresponding to the tables through the following command. This will create YAML files but it can also create XML files.

     php app/console doctrine:mapping:convert yml ./src/Main/MyBundle /Resources/config/doctrine/metadata/orm --from-database --force

2. Now Symfony can import the configurations from the metadata files

     php app/console doctrine:mapping:import MainMyBundle yml

3. The entities can be generated based on the configuration files

     php app/console doctrine:generate:entities MainMyBundle

That’s all!

But one needs to pay attention to the way he builds his database from the beginning.  For example the relations too must be specified when building the database otherwise Doctrine will not be able to detect them. In phpMyAdmin this is done in the following way:

  • go to the structure of the table that will contain the foreign key
  • create an index on the field that you want it to be a foreign key
  • go back to the structure of the table and click Relation View
  • on the field that we want to make a foreign key specify to which other key it is related

For example if you want to have two tables book and author, than the primary key will be in author table, since it is unique, but one author can write one or many books, and the foreign key will be the author_id field in book table.

- See more at: http://blog.aelius.fr/blog/2011/10/symfony2-generate-entities-starting-from-a-database/#sthash.ei56Buf8.dpuf

python scp小工具

相信大家都有同感,每次开发项目测试的时候,本地修改完了放到测试服务器进行测试,肯定会为每修改一次就要手动更新到测试服务器进行测试感到烦躁等。抽了点时间自己写了个python scp使用,减轻了这种烦躁。不多说,贴代码:

接下来,肯定是测试下了

当然,这个小工具还需要完善,可以结合ssh 进行检测是否存在目录进行新建,然后进行同步。

至于你是否绑定到自己的编辑器里或放到定时任务里,那就自己喜欢了。

又一篇原创。转载请保留地址:http://www.zshuiquan.com/blog/archives/149 谢谢!