加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 带Rails的SAAS架构

发布时间:2020-12-17 02:02:00 所属栏目:百科 来源:网络整理
导读:我正在计划一个需要模块化的新软件的基本架构. 我正在尝试定义多租户应用程序,以便为所有用户运行单个实例. 我需要的是可以随时随地扩展,所以我不喜欢在负载均衡器后面产生多个应用程序(单一政治架构)的想法,因为它可能是需要更多资源的计算的单个部分. 因此
我正在计划一个需要模块化的新软件的基本架构.
我正在尝试定义多租户应用程序,以便为所有用户运行单个实例.

我需要的是可以随时随地扩展,所以我不喜欢在负载均衡器后面产生多个应用程序(单一政治架构)的想法,因为它可能是需要更多资源的计算的单个部分.

因此,我正在考虑面向服务的体系结构,它将rails应用程序作为Web客户端和其他服务,可以使用任何语言进行虚拟编写,并通过rails应用程序通过API进行访问.

我还想让这些API向用户开放,以便与他们现有的软件集成,并轻松扩展这些服务.

我有一些具体的问题:

>为新创业公司(1-5名员工)提供这种架构是一个好主意吗?
>使用API??我不需要使用任何RPC,因为API请求本身就是RPC,我对这个概念是否正确?
>什么是API的一个很好的标准(REST只定义如何访问资源)?
>实际上,将这些API暴露给客户的最好(=好)方式是什么?通过Web Rails应用程序?直接通过代理使它们在同一个域下可用?可以通过HTTP请求以RESTful方式访问API.
>使用这种架构,拥有VPS,云或专用服务器会更便宜吗?我喜欢云,因为它们具有失败的容忍性,它可以让我们免于担心数据持久性和备份(包括我们想要构建几乎100%可用的架构的事实).
>任何其他建议或观点,任何简单的开始点思考这一点将非常感激.

我非常了解Python,C/C++,JS,Perl,其他pl和我最近开始使用Ruby / Rails.我选择最后一个,因为在我看来,这个社区非常注重建设服务,而我(在极端表演之前)的思维是能够尽快学习并有人分享经验和学习,有一些实际的例子(我知道它是关于一个架构,而不是实现它的PL,但我认为在一个仍在使用web1或web2.0风格的不成熟环境中更容易弄错).

附:我还需要编写基本的架构设计,你有什么模板我可以从哪里开始?我确实需要与我的团队和其他非常专业的专业人士分享,我想让它完整且易于理解.

希望在这里读一些好的建议!

谢谢,
亚历克斯.

解决方法

建筑

这是一个示例堆栈,我认为它主要是做你想要完成的事情:

>一个或多个应用服务器
>一个或多个数据库服务器
>零个或多个作业服务器

实例

> Chef用于配置
>独角兽或乘客
> Nginx

应用

> Ruby on Rails
>查看Grape的简单API

更具体的答案

>

would it be a good idea to have this kind of architecture for a new startup (1-5 employees)?

如果操作正确,这种方法可以非常稳定和稳健.你不想做的事情是你花费所有时间管理服务器的情况.你希望得到它,能够快速处理问题实例,并努力使你的应用程序做的事情.如果你做得对,创建实例可以很简单,完全自动化.
>

using APIs i don’t need to use any RPC since the API request itself is an RPC,am I right on this concept?

是.
>

what would be a nice standard for the APIs (REST only defines HOW to access resources)?

在这里,我们需要更多地澄清您需要如何使用RESTful design来实现特定目标.
>

what could be,pratically,the best (= a good) way to expose those APIs to customers? Via the Web Rails application? Directly via a proxy that makes them all available under the same domain? APIs would be accessible in a RESTful way so via HTTP requests.

应通过HTTP和RESTful软件设计访问域(或子域).它可能会返回JSON或其他东西.全取决于你.
>

with this kind of architecture would it be less expensive to have VPS’s,Cloud,or dedicated servers? I like clouds because of their failure-tollerant nature,it would free us from worry about data persistence and backups (including the fact that we want to build an architecture almost 100% available).

你得到你所付出的.我推荐云服务器.如果您准备“自己动手”,请查看Heroku以开始使用,或者检查Rackspace.或引擎场.
>

Any other suggestion or point of view,and any simply start point to think about this would be very appreciated.

我会尝试使用免费的Heroku帐户创建测试API.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读