我正计划做一些大项目(1 000 000 个用户,大约 500 个请求前秒 - 在热门时间)。为了性能,我将不使用任何关系 dbms(每个请求可能会在关系 dbms 中花费大量指令,如 mysql) - 所以我不能使用 DAL。
我的问题是:
- web2py 如何处理大流量,它是否同时工作?我正在考虑使用 web2py 或 Gork - Zope,
- zodb(Z 对象数据库)如何处理大量数据?与对象关系postgresql有一些比较吗?
请你给我建议。
首先,不要假设数据抽象层会有不可接受的性能,直到您在实践中真正看到它。如果遇到问题,切换到 RAW sql 非常容易。
其次,大多数担心服务器技术处理一百万用户的用户永远不会完成他们的应用程序。选择您认为能够让您在最短的时间内构建出最佳应用程序的任何技术。至少,任何技术都可以通过集群进行扩展。
我同意 mikerobi - 选择能让你发展最快的东西。对我来说,这就是 web2py。
web2py 在 Google App Engine 上运行,因此如果您不想使用关系数据库,则可以使用 Google 的数据存储。
Zope 和 ZODB 已用于大型应用程序,但我仍然会考虑将 Zope 与 MySQL 或类似的东西连接到大型应用程序中。尽管 Zope 有很多开发周期,但它通常与另一个数据库引擎一起使用是有充分理由的。据我所知,这个论点适用于 web2py。