- 主题:如何部署?
1、WebApp不要用存储过程,这是基本规则。
2、灌数据的数据源配置问题:你把数据源配置不要和灌数脚本放在一起,放在单独文件里面不就得了。
【 在 wuhaochi 的大作中提到: 】
: 具体点?
: 如果都在根目录下一个脚本里,那每次APP有点什么改动,都需要去改这个脚本。
: 而且如果某个APP,可能比较独立的,被移除了,这个脚本也得改,这样不太好吧。
: ...................
--
FROM 124.42.13.*
你要是用Django,你说的这些部署问题:多数据源独立访问、数据初始化、数据源独立配置这些东西,Django自身都有既定的解决方案。你自己好好看看文档吧。
PG的分库也有它自己的Proxy解决方案,你自己用存储过程实现Mapping,费力不讨好。
【 在 wuhaochi 的大作中提到: 】
: 请问为何不能用存储过程啊?
: 因为不用似乎是不可能的。比如我现在一个需求是访问各个数据库的某些表,即根据用户在界面上提供的ip port dbname username pasword,去连接数据库,查询完就不需要再连接了。这些连接信息不是死的,这样的话如果不用存储过程,那多复杂啊。
: 我用的postgresql,写了个用 postgres forward data wrapper作映射的mapping_db()函数,再用一个django's raw sql, 用起来就方便多了。如果不用存储过程,代码要套几层呢。
: ...................
--
修改:dhcn FROM 124.42.13.*
FROM 124.42.13.*
你需要看看别人写的同类Django开源App,你的架构Graph有点混乱。
感觉你好像在做phpmyadmin这样的工具,其实PG有这样的工具。
【 在 wuhaochi 的大作中提到: 】
: 没有
: 我是想这样,从源码“安装”出来两份,一份可以是debug version,一份可以是relase version。这个“安装”,也就是简单的文件复制,再者目录结构调整,比如可以把各个APP下面的存储过程复制到一个共同的目录下。可以动态生成两个版本的数据库配置信息。
:
--
修改:dhcn FROM 124.42.13.*
FROM 124.42.13.*
如果SaaS,每个用户建立时,创建与用户名绑定的数据库源信息。甚至独立地去生成一套部署实例,后者可能更符合SaaS的隔离要求。
【 在 wuhaochi 的大作中提到: 】
: 没phpmyadmin这么复杂。
: 其实需求很简单,因为我们有不同的用户,每个用户有独立的数据库。所以每个人去浏览信息时,就会去读属于他的数据库。
: 而人是在变化的,所以数据库也会动态地进入或退出。
: ...................
--
FROM 124.42.13.*