我有一个网站,可供不同大陆的国家访问。我注意到大多数托管公司仅在美国拥有数据中心,例如,当印度人来此站点访问时,这可能会影响性能。 AWS和Google在世界各地拥有自己的数据中心,那么这是否是解决上述疑问的更好选择?他们是否使用某种使网站位于所有数据中心的技术?
有关该网站的更多信息: 这是一个动态网站,高度依赖数据库。它主要涉及文本。那里几乎没有ajax代码。 这是一个问答网站。
答案 0 :(得分:2)
答案 1 :(得分:2)
AWS等云服务提供商具有称为边缘位置的功能。当您部署网站代码时,AWS会将相同的代码部署到世界各地的边缘位置。当用户访问您的网站并且请求到达AWS时,AWS会将请求重定向到地理位置上更靠近该用户的边缘位置。以便更快地将请求提供给用户。
答案 2 :(得分:1)
我注意到大多数托管公司仅在美国设有数据中心,例如,当印度人来此站点访问时,这可能会影响性能。
如果您的网站纯粹是静态内容,则通常不重要(请参阅web caching),除非其流量很大。举一个典型的例子,我管理http://refpersys.org/(实际上由法国的OVH托管),在印度很明显:延迟时间不到几百毫秒。
如果您的网站非常动态,那可能很重要(例如,从印度启动的网络浏览器中的每次击键都需要对位于美国的主机进行AJAX调用)。
详细了解HTTP,也许还有TCP/IP。不要将World Wide Web与Internet(在Web之前已经存在)混淆。
如果性能对您确实很重要,则可以通过在每个大洲进行托管来设置一些分布式和load balanced网络服务。例如,您可能使用一些分布式数据库技术来存储数据(有关database replication的信息),例如以PostGreSQL作为您的back-end database。
当然,您可以在印度找到虚拟主机。
所有这一切都需要一定的成本,主要是软件开发和部署(很少有网络sysadmin技能)。
这是一个问答网站。
然后,它并不是那么关键(假设流量为中小),并且您可以(首先)负担得起位于单个位置的单个主机。如果给定的答案仅在几分钟后才在全世界范围内可见,我认为不会造成任何伤害。
一旦您的网站非常受欢迎,您将拥有重新设计它的资源(人工和计算机托管)。 AFAIK,StackOverflow从单个虚拟主机开始,后来又改进到当前状态。以agile software development的心态设计网站:数据(这是人类用户过去键入的问题和答案)是最重要的资产,因此请确保设计database schema正确地考虑到database normalization),并确保正确且经常地备份您的数据。网络技术也在不断发展(到2021年,网络将与2019年12月的今天完全不一样,请参见this问题)。
如果您想要一个遍布全球的防错问答网站,则可以在设计足够好的过程中获得博士学位。全局分布式数据库一致性仍然是一个研究主题(例如,参见this研究报告)。