基于Web的框架可以扩展什么?

时间:2012-08-12 09:16:16

标签: frameworks scalability

非常感谢你。

首先,我将可扩展性视为设计一个系统的能力,当系统的服务需求(无论它们是什么)大大增加时,该系统不会发生变化。您是否需要更多的硬件(垂直或水平0?很好,可以随意添加它,因为系统已经准备好并且已经设计好可以应对它。

我的问题很简单,但可能很难回答。我想知道你在框架中看到了什么,以确保它会相应地扩展,包括命中数和同时运行的会话数。

这个问题根本不是技术,也不是特定的框架,而是一个理论问题。

我知道这非常依赖于拥有良好的数据库设计和适当的硬件背后的复制等等......让我们假设这一切都存在,但是我的框架必须符合某些标准,是什么?

  • 提供内存缓存?
  • 能够在多台计算机上运行(在Web服务器级别)并使用许多复制数据库吗?但是软件中有什么能够实现这一点呢?
  • 等...

请不要将答案与任何特定的编程语言或技术联系起来。

再次感谢,

d。

2 个答案:

答案 0 :(得分:2)

我认为可伸缩性最主要取决于用例:您是否期望大量数据,那么您应该关注数据库,如果它关注流量,关注服务器,是否要添加新数据功能,专注于您的数据模型和您正在使用的框架...

将Twitter等微博客服务与大学网站或GoogleDocs等网络服务进行比较,你会发现完全不同的要求。

答案 1 :(得分:0)

首先,可伸缩性的常见概念是,如果添加更多硬件资源(CPU,内存,带宽等),软件能够提高吞吐量或容量。 不增加资源的软件不可扩展 退出定义后,我认为您的问题与您计划在实施中引入的框架评估有关,这些框架可能会影响您软件的扩展能力。
恕我直言,引入框架时评估的最重要因素是查看其中是否存在隐藏序列化(效果中的序列化转移到/影响您的软件)
因此,如果您引入一个框架,在您的应用程序中引入可能影响您扩展能力的序列化 如何评价?

  1. 仔细的源代码检查(如果是开源的)
  2. 构建该网站的人员是否提供任何性能保证 框架?
  3. 自己做一些测量,看看如何引入这个框架 影响你的表现,如果不满意则更换