Articles in the category of 开发
- Home
- 开发
URL PARTTERN 在FLASK里怎样被解析
老坑,现在来填掉:)之前做一个需求,是需要解析Flask里的URL Rule里的参数名字和类型,用来自动生成命令行内的Rest Client的参数。Rule: /disks/<int:disk_id> 需要得到参数: disk (type int)解铃还须系铃人,直接看Flask源码吧:),看看它是如何管理/解析用户在 route 内添加的URL Parttern的.首先,一路...
SQL数据库中的字段设计
About:SQL数据库中,Index,字段类型等等直接影响整个SQL数据库的运行效率,有时候又必须考虑灵活性,所以才有这个话题:SQL数据库中的字段设计。How:这里主要谈三个问题:1.什么时候应该将一个属性作为单独的字段,什么时候可以打包。2.index什么时候用3.如何提高字段灵活性
用动态加载和代码动态生成提高应用灵活性
Why?Web产品一旦上线,重启应用就会造成业务中断,对于实时性要求很高或者业务关联紧密的应用,重启程序是非常重的代价。将代码对象序列化之后保存到存储内(比如redis, 关系数据库),在运行业务的时候通过制定的路由机制加载这部分业务。对于线上应用,使用这种方式可以更加方便的部署新业务。对于性能要求不是很高的场合,可以牺牲一些性能做代码动态装载。
OS.fork等子进程调用中FD的变化
Python中的OS.fork,exec之类的行为,可能导致stdout所指向的FD发生变化,有时候无法在终端获得想要的输出,这时候可能需要在执行子进程的时候手工设置其FD。参考:http://stackoverflow.com/questions/26578799/python-send-sigint-to-subprocess-using-os-kill-as-if-pressing-c...
Pyramid中简化你的代码
简化并修改view_config装饰器因为Pyramid自带的view_config装饰器非常复杂,需要配置的参数比较多,修改一下装饰器,每次可以少写一点代码……def get_with_permission(**settings): # delete debug tag TODO view_configer = view_config(decorator=permissio...