注册个用户名,就可以在子域名生成一个网店
这个在程序流程上的原理是怎么样的? 我想应该不是,每个子域名都去部署一个应用程序吧?
怎么做到用很简单的方式,一个用户名对应一个自己的网店 各个网店之间的数据又是互相独立的
可以,下面得 route 把外界访问都转移到 domain 下,实现了多个域名绑定到一个站点,并且各自独立。
# visit from outside
scope module: 'domain', constraints: SiteConstraint.new do
get '/', controller: :home, action: :index
get ':action', controller: :home
get 'catalogs/list_(:id)_(:page)', to: 'catalogs#show', default: {formmat: "html"}
get 'articles/:id', to: 'articles#show'
get 'pages/:id', to: 'pages#show'
get 'products/:id', to: 'products#show'
end
class SiteConstraint
def initialize
$RUNNING_SITES = Site.select(:domain).all_actived.map{|ss| ss.domain }
puts Time.now.to_s(:db) + "*"*100
puts "Running sites: #{$RUNNING_SITES.join(', ')}"
end
def matches?(request)
$RUNNING_SITES.include?(request.host)
end
end
个人觉得 class SiteConstraint 写的不好,还没想到好方法。
#5 楼 @est 是,主要是看规模,newrelic 是 per table per app per hour. http://highscalability.com/blog/2011/7/18/new-relic-architecture-collecting-20-billion-metrics-a-day.html
云计算里面的 IaaS、PaaS、SaaS 三层,IaaS 对数据隔离特性要求最高,而 SaaS 对数据隔离特性要求最低。 SaaS 的应用,在数据隔离上,有三种做法:数据库实例隔离、表隔离(@hooooopo 指出的 newrelic 就是这种)、元数据隔离。
这三种隔离方式,在研发友好速搭期间,都尝试过。最后我们用的,是成本最低的元数据隔离方案。把所有数据(订单、商品、主题文件等)都存在数据库。后面就是从零开始写业务逻辑。目前针对国内的电商业务,友好速搭比 shopify 好很多。
国内很多同类产品,总在代码层面偷懒,稍微修改现有开源系统,搞个自动部署,就拿出来促进主机和域名销售,这么做成本不低,受到制约很多,没法在软件层面形成竞争力。
#13 楼 @blacktulip 元数据隔离,就是每条数据有个 app_id 属性。。。。这种描述数据的数据就叫元数据。。。听起来高大上的名词实际上在代码里就一句话:
if session[:user_id] == Item.user_id 类似的。。。。
#12 楼 @ChrisLoong 这硬广告打得。。。。。。话说你们网站有严重的 ycombinator 教科书风格啊。。。。各种 pattern 都是 100% 符合各种 startup 教条的。。。。。。。
@ChrisLoong 体验了下,确实不错。bootstrap 也号称能适应各种设备,但实际使用起来效果并不太理想,spree 用了 bootstrap 模板在手机上的效果并不好,还要多方面的修改
@ChrisLoong 你是指为了满足这部分 mobile 用户,只能单独推出相应的主题,只适应 mobile?,放弃既能在桌面端显示,又能在 Mobile 显示?
@ChrisLoong 电脑端的 B2C 有淘宝,京东,一号店这些大头在垄断着,小型的商家自己搞个店铺基本上没什么机会,推广门槛很高,而现在流行的微商,利用微信进行朋友圈的营销,还挺管用的。这可能是为何 手机版网站会比较流行的原因吧。
另外,你们那边有推荐客户奖励机制吧?向你们那推荐客户能获取一定的推荐费的?
#30 楼 @luffycn 合伙伙伴有单独的后台。 目前有三种收益方式(以后也许有更多): 帮客户创建网站,开发费用自行协商。网站做好就可以转给客户,以后这个站的月租,都会收到提成。 还有另一块,就是主题市场,可以开发付费版的主题,放到主题市场,有客户购买,就有收入。 类似主题市场,还会有插件市场,广州这家摄影工作室的预订就是通过插件做的。
合作伙伴是邀请制,有意向的话,可以发邮件到 [email protected],介绍自己的技术背景,以及过往项目案例,我们评估通过后,会进一步联系。如果离我们公司近,也可以抽空来办公室聊,随时欢迎。
@ChrisLoong 听上去更像是前端工程师或者设计师更能做好的一个工作。我前端很弱 都是 copy 别人的 css style 或者在现成的 CSS 代码稍微修改。
@ChrisLoong 有时候客户的要求会比你想像的来得更苛刻一点。单纯的前端修改可能也无法满足,比如某个客户经营的是茶类的销售,他可能希望主题能贴近自然生态,这是需要一定的设计功底。后端工程师去折腾这些 photoshop 成本会有点高