Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.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 从JQuery插件收集使用情况分析数据_Php_Javascript_Jquery_Pubnub - Fatal编程技术网

Php 从JQuery插件收集使用情况分析数据

Php 从JQuery插件收集使用情况分析数据,php,javascript,jquery,pubnub,Php,Javascript,Jquery,Pubnub,我正在完成一个JQuery插件,我需要在插件处于活动状态时收集一些活动的使用数据。这些数据需要远程存储在我的服务器上 然而,我正试图找到最好的方法来做到这一点。我想,这将类似于网络分析数据的收集方式。我现在看到两种选择,我在下面概述了基本步骤 A.阿贾克斯- 采用这种方法: 我使用JQuery在JQuery插件中设置一个Ajax请求,以将数据发布到服务器 我设置此服务器以捕获发布的数据,然后使用PHP将其插入到数据库表中 B.插座- 采用这种方法: 我注册了一个像PubNub这样的服务 我在JQ

我正在完成一个JQuery插件,我需要在插件处于活动状态时收集一些活动的使用数据。这些数据需要远程存储在我的服务器上

然而,我正试图找到最好的方法来做到这一点。我想,这将类似于网络分析数据的收集方式。我现在看到两种选择,我在下面概述了基本步骤

A.阿贾克斯- 采用这种方法:

  • 我使用JQuery在JQuery插件中设置一个Ajax请求,以将数据发布到服务器
  • 我设置此服务器以捕获发布的数据,然后使用PHP将其插入到数据库表中
  • B.插座- 采用这种方法:

  • 我注册了一个像PubNub这样的服务
  • 我在JQuery插件中使用PubNub Javascript SDK将消息“发布”到给定的“通道”
  • 我设置了一个专用服务器或云服务器,并使用SSH登录,安装一个web服务器+数据库+PHP,确保它正常工作
  • 我创建我的PHP脚本(使用PubNub PHP SDK)“订阅”我的插件将发布消息的PubNub“通道”,然后设置从消息中捕获数据并插入数据库表的机制
  • 我将supervisord设置为对我的php脚本进行后台监控,然后启动后台程序,因为我需要一个长期的php进程来通过服务器运行PubNub Subscribe功能
  • 我更喜欢A,因为它对我来说是最简单的选择,我可以使用任何托管的MySQL/PHP服务器以最小的麻烦完成它。然而,当插件被用于数千个不同的网站,或者一些非常繁忙的网站,在我的远程服务器上每秒可能有10-100个数据库提交时,我担心这种方法的性能如何

    使用B方法代替sockets是否更有意义,因为我需要PubNub订阅,所以成本可能会高得多。另外,由于我不需要异步连接,因为我只需要为每个用户发出一个请求,所以我认为与直接发送到我的服务器的可靠的ol'HTTP请求相比,套接字可能过于苛刻(而不是通过PubNub发送消息,然后再发送给我)

    什么才是最好的办法来完成这样的事情


    提前感谢。

    选择A是肯定的。另外,如果你真的担心PHP脚本的点击量太大,那么可以看看AppFog之类的东西。它们提供了相当多的免费点击量,如果出现问题,可能会减轻服务器的负担。

    你是对的,套接字是多余的。甚至谷歌分析也使用HTTP请求发送数据。这些请求不需要及时(例如毫秒无关紧要),因此没有理由打开套接字。

    @Patrick感谢您的反馈。倾向于一个已经,只是想得到一些反馈。是的,插座是多余的。甚至谷歌分析也使用HTTP请求发送数据。这些请求不需要及时(毫秒不重要),因此没有理由打开套接字。@Patrick,谢谢。请你把你的评论作为回答,谢谢。我也会查看AppFog。我正在考虑使用Rackspace云服务器为此设置一个专用服务器实例,我可以根据需要进行扩展和负载平衡。