Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.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 LAMP与编译二进制文件_Php_Api_Rest_Architecture_Realbasic - Fatal编程技术网

Php LAMP与编译二进制文件

Php LAMP与编译二进制文件,php,api,rest,architecture,realbasic,Php,Api,Rest,Architecture,Realbasic,我真的很想得到一些简明的建议 我即将开始一个项目,我们将维护大量的财产数据 我们打算使用RESTful接口构建应用程序,以便各种客户端可以连接。ie网络应用、iphone应用、第三方api等 我们真的希望应用程序/api能够快速、响应、可靠 然而,实际上,我们只有一定数量的内部技能,希望确保我们的思维过程朝着正确的方向发展 我们的核心知识是PHP,所以我们最初的想法是使用Memcached创建一个LAMP堆栈(可能用Postgres替换mysql)。我们也可能使用Laravel框架 然而,我们正

我真的很想得到一些简明的建议

我即将开始一个项目,我们将维护大量的财产数据

我们打算使用RESTful接口构建应用程序,以便各种客户端可以连接。ie网络应用、iphone应用、第三方api等

我们真的希望应用程序/api能够快速、响应、可靠

然而,实际上,我们只有一定数量的内部技能,希望确保我们的思维过程朝着正确的方向发展

我们的核心知识是PHP,所以我们最初的想法是使用Memcached创建一个LAMP堆栈(可能用Postgres替换mysql)。我们也可能使用Laravel框架

然而,我们正在考虑用RealBasic(类似于VB,但是是适当的OOP)编写软件并创建字节码。这也包括http服务器——与apache相比,这一切都很简单

后者是不是矫枉过正?从长远来看,我们的http服务器在速度上可能永远无法与apache相比,这会使我们的工作变得更加困难吗


我真的很想听听你的想法。

你有充分的理由编写自己的Web服务器吗?如果你不需要Apache的所有功能,也许你可以选择更小的,例如nginx。另外,如果你想使用Linux,我认为Basic(或任何方言)并不是最好的主意。如果您需要字节码,那么Java可能是更好的选择

如果这是你在家里掌握的技能,我会坚持使用PHP

如果真的需要这种性能,那么总是可以选择使用HipHop编译PHP代码


编写自己的web服务器听起来像是一个疯狂的想法——如果你的系统中有任何一个软件,最好是有经过良好测试和安全的东西,那就是web服务器。即使您尽可能轻量级地编写,编写自己的web服务器也不太可能像Apache或nginx那样运行良好,而且几乎肯定会有严重的安全漏洞。

使用Real Studio创建web服务器并不是那么疯狂,因为您有很多方法可以做到这一点,并且不需要Apache或IIS来完成。您可以创建一个控制台应用程序,其唯一目的是为您的应用程序提供API,也可以创建一个Web版应用程序,该应用程序也可以服务于网页。这实际上取决于您希望通过web端实现什么。我们为许多客户都做了这两件事,对他们来说效果很好


但是,既然您已经熟悉PHP,我想说的是坚持您所知道的。学习Real Studio并不难,但它仍然是一种新的技能,在你不知道的事情(目前)的道路上有着所有必要的坎坷.

您想要使用REALbasic HTTP服务器的唯一方法是将其作为Apache背后的应用程序服务器使用——在某种以任何语言编写的拼凑起来的HTTP服务器上运行面向公众的网站是愚蠢的——因此您将有Apache(或Nginx)参与其中

REALbasic可以很好地胜任这个角色。它编译为机器语言,而不是字节码,并且您的HTTP服务器将构建在其异步单线程服务器套接字框架上,因此性能通常是优异的

也就是说,我怀疑它的性能会比通过缓存(Memcached等)备份的PHP好,PHP是一种比REALbasic成熟得多的web开发技术,没有任何障碍或限制,如果您尝试基于REALbasic的解决方案,您可能会遇到这些障碍或限制

在这种情况下,我认为PHP对您来说是更安全、更好的选择


(注意:我在写这个答案的时候,正在休息一下,编写一个基于REALbasic HTTP服务器的web应用程序,开发它只是一种纯粹的乐趣——REALbasic是一种可爱的语言。)

这当然不是您内部技能的一部分,但对于快速、轻量级的RESTful API,我强烈建议

Erlang是电信公司用来运行电话硬件的函数式语言。它是高度容错的,并且在我看来,非常有表现力。它针对并发执行进行了优化,因此您可以获得多线程的所有好处,而不会遇到麻烦

Cowboy是为erlang编写的Web服务器。它非常轻量级、高效,并且易于编码。我使用cowboy为每个数据中心提供大约25000转/秒的服务(每台机器约1200转/秒),它从未让我失望


如果不打算使用erlang,最好使用apache或nginx。如果您不为自己编写HTTP服务器(只是处理程序),我只会使用RealBasic。

我不认为java是更好的选择,仅仅是因为资源和应用程序/ API的速度。已经使用过很多Java web应用程序,但都不是很快。。。换句话说,很多时候我认为一个网站/ WebApp慢/慢,浏览浏览器的地址栏,我可以看到代码> > JSPX <代码>或。JSP 。如果正确构建,java比PHP快。但是使用你的技能,APC将缓存PHP生成的字节码。谢天谢地,我对这两种软件都很熟悉。Realbasic开发人员有一个相当不错的http服务器示例,其中包括我玩过的会话管理,但没有在野外测试过。所以我不知道它能处理多少容量。我会照你说的做。创建一个控制台应用程序,监听端口并用JSON响应。你有没有找到任何重要的理由去使用一个而不是另一个。我很高兴听到更多关于您创建RB服务器界面的经验。谢谢。我相信http服务器示例是Web版的基础(显然从那时起增长了很多倍)。您可以使用console应用程序执行与Web Edition完全相同的操作(有一些URL限制)。额外的好处是您可以获得GUI网页作为奖励。我们使用We特殊url为桌面应用程序创建了一个很好的网络商店界面,但也有一个管理GUI。最终