Web services 同时使用web和应用服务器?

Web services 同时使用web和应用服务器?,web-services,Web Services,例如,像Facebook这样的公司如何创建一个功能齐全的web服务器,同时还拥有一个可以与itor相切的应用服务器?我认为他们正在这样做。一般来说,我对编程和计算机科学都是新手,刚刚制作了我的第一台web服务器,但后来我想到了一些事情。该公司如何让您在手机/平板电脑上发表评论,然后切换到笔记本电脑查看手机的效果。据我所知,他们都有不同的服务器。我使用apache作为我的web服务器facebook是一个应用程序,我认为它必须使用应用程序服务器,而网站本身只是一个HTTP web服务器。如何操作?

例如,像Facebook这样的公司如何创建一个功能齐全的web服务器,同时还拥有一个可以与itor相切的应用服务器?我认为他们正在这样做。一般来说,我对编程和计算机科学都是新手,刚刚制作了我的第一台web服务器,但后来我想到了一些事情。该公司如何让您在手机/平板电脑上发表评论,然后切换到笔记本电脑查看手机的效果。据我所知,他们都有不同的服务器。我使用apache作为我的web服务器facebook是一个应用程序,我认为它必须使用应用程序服务器,而网站本身只是一个HTTP web服务器。如何操作?

不同类型的服务器没有什么特别之处。服务器只是连接到网络的计算机,它接收输入并提供输出。对于web服务器,它被编程为在对其进行查询时提供HTML。应用程序服务器也被编程为提供响应,但它可能不是HTML,而是某种为应用程序提供数据的工具。然而,没有什么可以阻止应用程序查询web服务器事实上,这正是你的浏览器所做的——一个获取网页的应用程序

但在您给出的示例中,您缺少了拼图的一个关键部分,那就是数据库。Facebook和几乎所有系统都将有一个中央数据库,供其应用服务器和web服务器使用。以下是Facebook架构的基本示意图:

当您在网站上发布Facebook状态时,浏览器会将该信息发送到web服务器。由于Facebook每分钟有数百万个请求,因此需要使用负载平衡器将您的请求路由到多个服务器中的一个。然后,Web服务器将在MySQL数据库中创建一个条目,存储元数据,如发布它的用户ID、时间以及您编写的文本内容

当您在手机上查看个人资料时,手机应用程序将请求web服务获取您的状态。现在很多时候(如果不是大多数的话),这也是通过HTTP请求完成的——这是一个特殊的URL,它提供了一个端点到他们的系统中,您可以连接到该系统。获取用户123456的facebook提要可能如下所示:

http://graph.facebook.com/v2.3/123456/feed HTTP/1.1
然后,处理这些请求的web服务将查询数据库,并返回您刚刚作为序列化对象发布的状态,以便应用程序根据需要进行处理。当然,这些所谓的应用程序允许其他第三方应用程序连接到系统中,并以正确的权限获取和发布数据!。整洁,嗯


当您第一次开始学习计算机科学时,您可能会将大部分数据存储在内存中,即静态变量、硬编码值或平面文件,即从文本文件读取。然而,在几乎所有的实际应用程序中,您都需要一个专用的数据库来处理大量的请求。这就是为什么你可以在不同的设备上看到你的状态。无论你如何访问Facebook,你都在访问同一个数据存储

你找到问题的答案了吗?