Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 基于云的计费软件的数据库结构、规划问题_Python_Sql_Angular_Database_Postgresql - Fatal编程技术网

Python 基于云的计费软件的数据库结构、规划问题

Python 基于云的计费软件的数据库结构、规划问题,python,sql,angular,database,postgresql,Python,Sql,Angular,Database,Postgresql,我们正在构建一个基于云的计费软件。此软件是基于web的,应至少具有桌面软件的功能。我们将有5000多名用户同时计费。目前,我们只有250个用户。我们现在需要扩大规模。我们使用Angular作为前端,Python用于后端,React Native用于移动应用程序。数据库使用PostgreSQL数据库。我没有什么疑问,要在我们开始衡量之前澄清一下 使用PostgreSQL for DB将来会出现什么问题 我们使用的不是Integer的主键,而是UUID(用于方便的数据迁移,但它会占用更多空间)。这

我们正在构建一个基于云的计费软件。此软件是基于web的,应至少具有桌面软件的功能。我们将有5000多名用户同时计费。目前,我们只有250个用户。我们现在需要扩大规模。我们使用Angular作为前端,Python用于后端,React Native用于移动应用程序。数据库使用PostgreSQL数据库。我没有什么疑问,要在我们开始衡量之前澄清一下

  • 使用PostgreSQL for DB将来会出现什么问题

  • 我们使用的不是Integer的主键,而是UUID(用于方便的数据迁移,但它会占用更多空间)。这是否会在未来带来任何问题

  • 对于这种缩放,我们是否需要考虑任何DB方法?(现在,对所有用户使用单个DB)

  • 我们计划使用一台规格庞大的服务器(适用于所有用户)。这是好的还是我们需要计划其他的事情

  • 在这种情况下,我们需要使用单独的应用程序服务器和数据库服务器吗


  • 我会尽力回答这些问题。请随意判断

    因此,您正在构建一个基于云的计费软件。现在您有250多个用户,预计未来至少有5000个用户

    现在回答您提出的问题:

  • 使用PostgreSQL for DB将来会出现什么问题
  • 答:PostgreSQL对于生产非常有用。这是一条安全的道路。它在将来不会出现任何问题,但在很大程度上取决于数据库设计。

  • 我们使用的不是Integer的主键,而是UUID(用于方便的数据迁移,但它会占用更多空间)。这是否会在未来带来任何问题
  • ans:使用UUID有其自身的优点和缺点。如果你认为缩放是一个问题,那么你应该考虑更新你的收入模型。<强> < /P> 对于这种缩放,我们必须考虑任何DB方法吗?(现在,对所有用户使用单个DB) 答:制作应用程序的单个DB在初始阶段是好的。当扩展时,特别是在5000个并发用户的情况下,最好考虑转移到微服务。

  • 我们计划使用一台规格庞大的服务器(适用于所有用户)。这是好的还是我们需要计划其他的事情
  • ans:正如我所说,5k并发用户将需要一台强大的服务器(高度依赖于操作,但我假设计算量适中),因此建议规划微服务架构。这是一种可以放大大量使用的服务并缩小其他服务的方式。但请记住,微服务听起来可能很棒,但在实践中,设置起来很痛苦。如果你有一个强大的后端团队,你可以继续这个想法,否则就不要这样做。

  • 在这个场景中需要使用单独的应用服务器和DB服务器

  • 回答:简短的回答是肯定的。详细回答:当你有那么多用户时,为什么要强调你的服务器机器。

    你的问题太广泛,需要重点关注。如果你只能把一个帖子专门写在一个问题上,那将是很好的(并帮助你得到更好的答案)。@法提哈基对不起,我心里有太多的事情。而且,所有这些都是相互联系的。谢谢你的信息。我正在为此收集尽可能多的知识。微服务体系结构,你能给我举个好例子吗?答案是不伦不类的。我不怪你,但投票结束是正确的方式。@JintoAntony我通常不会只提到一篇文章。对它进行大量研究,以便更好地理解它@劳伦斯:嗯,是的,这是真的,因为问题太广泛了。我认为这不应该关闭。很多初学者都有同样的问题。@PSN我同意这个问题是合理的,但在这样的问答论坛上,这个问题无法得到令人满意的回答。这可能需要研究和/或咨询。