Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.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
Php 与动态HTML相比,Web服务有哪些优势?_Php_Web Services_Web_Dynamic Html - Fatal编程技术网

Php 与动态HTML相比,Web服务有哪些优势?

Php 与动态HTML相比,Web服务有哪些优势?,php,web-services,web,dynamic-html,Php,Web Services,Web,Dynamic Html,我想知道使用应用服务器(如glassfish)而不是通过动态html页面(如PHP)提供内容有什么好处。我想了解“web服务”的优势,而不仅仅是一个网站,因为我正在开发一个在线商务网站,我想知道从纯Apache切换到glassfish之类的东西的一些经验法则是什么。当你开发web服务时,你是在编程一个接口,而不是一个实现。当您开发一个页面,该页面输出的数据只有您的应用程序知道如何使用,例如专有html页面时,您的做法正好相反 从更广泛的角度考虑您试图实现的目标——您是否将在多个地方、多个技术等方

我想知道使用应用服务器(如glassfish)而不是通过动态html页面(如PHP)提供内容有什么好处。我想了解“web服务”的优势,而不仅仅是一个网站,因为我正在开发一个在线商务网站,我想知道从纯Apache切换到glassfish之类的东西的一些经验法则是什么。

当你开发web服务时,你是在编程一个接口,而不是一个实现。当您开发一个页面,该页面输出的数据只有您的应用程序知道如何使用,例如专有html页面时,您的做法正好相反

从更广泛的角度考虑您试图实现的目标——您是否将在多个地方、多个技术等方面实现和重用此服务。这是您的关键。

与Java世界中的Glassfish一样,Java世界中的Glassfish通常指的是一种软件,除实现Web服务器外,它还运行您的Java(或其他基于JVM的语言)规范上下文中的web应用程序。因此,它基本上只是一个用Java编写的web应用程序的高级Apache。 经验法则:如果您决定使用Java或在Java虚拟机上运行的其他语言,并且需要或想要使用任何J2EE API,那么您将使用应用程序服务器


由于HTML页面通常是人类可读的信息表示,因此Web服务以机器可读的格式提供信息,以便机器可以通过HTTP协议相互交互。该术语主要用于使用SOAP协议的通信,而不是一般的webservice概念。由于Web服务不是特定于语言的,所以无论您使用的是PHP、Java、RubyonRails还是其他实现Web服务的工具,都无关紧要。如果您想提供一种与您的web应用程序交互的方式,而不仅仅是通过用户操作的webbrowser,那么您的决定是什么。

考虑一下web服务的风格

你是在比较Soap和REST吗

RESTWeb服务与web页面非常相似,因为它使用HTTP的所有内置功能。其中,作为SOAPrest服务,需要读取和消化它所需的基础结构

Glass fish将您绑定到一个特定的环境,这意味着它具有极好的可扩展性和无麻烦性,但实际上通常不是这样,需要昂贵的资源来构建和维护代码。(更不用说基础设施和舞台了)

我建议使用一个非常简单的层来生成web服务。例如:PHP和一个小的rest框架,mabee类似于代码点火器的修改版本。因为rest是无状态的,所以很容易扩展。只需添加更多的apache web服务器,直到牛来了。。犯错误或者直到你的数据库被破坏。。但成功总是有问题的。为什么不在云上使用REST实现呢。在amazon上安装一些微实例Web服务器,添加一个抽象关系数据库,然后就可以开始了


但正如其他人在讨论中所指出的,你们不受语言的限制。最好决定你的服务是什么。休息或用肥皂。rest服务可以用Python、Java、PHP等语言构建。。SOAP rest服务可能是用Java构建的,因为所有很酷的工具都在那里。。这可能意味着玻璃鱼。

然而,这与您决定使用什么技术完全无关。你可以在Apache上用PHP编程接口,就像你可以用Glassfish创建笨拙的网页一样。。那么,为了将其视为web服务,有必要将接口公开吗?我的意思是,如果我有一个私有接口,并且我为其编程,而不是实现,那么这仍然会被视为web服务吗?或者仅仅是公开可用的API?Web服务通过HTTP进行通信(也有例外,但这是通常的协议),因此本质上提供了一个公共接口(尽管您可能只是在内部使用)。如果您谈论的是Java接口,那么它们当然必须是公共的。