我一直在评估用于开发基于社交网络的应用程序的技术堆栈。以下是我认为非常适合这种应用程序类型的堆栈:
界面 -- ASP.NET MVC, Flash (Flex)
商务服务 -- 基于节俭的服务
使用 Thrift 的优势之一是为了解决 future 用户群快速增长时会出现的扩展问题。所有业务逻辑都可以使用 REST、JSON 等作为服务公开,这也允许我们在情况需要时使用基于 C++ 或 Erlang 的服务。
数据库 -- mySQL, CasSandara
mySQL 可用于存储需要持久化的数据。 Cassandara 将用于存储持久化数据的全局标识符。由于 Cassandara 也非常擅长通过引入更多节点来扩展,这也将利用基于 Thrift 的服务。而且 Cassandara 和 Thrift 之间也有原生支持
缓存服务器 -- 内存缓存
如果需要任何非脏数据,来自业务服务的任何请求只会与 Memcached 对话,否则会有一些后台作业会使数据库中的缓存无效。
问题是:
此堆栈背后的主要目标之一是轻松扩展更多节点,这也有助于我们使用 Linux 机器,它将显着降低我们的成本
想法请..
最佳答案
您没有提供有关您的数据模型的详细信息,但是如果您正在尝试执行类似于 facebook、twitter、digg 或 reddit 的操作,那么 Cassandra 应该是一个不错的选择,因为您知道这些公司都在使用 Cassandra。
Cassandra 的优势之一是您不需要单独的缓存层:Cassandra 的内置键和行缓存,以及仅添加机器进行扩展的能力,使 memcached 变得不必要。
关于.net - Thrift、.NET、Cassandra - 这是正确的组合吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2482751/