Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >PHP和MongoDB极其缓慢(15秒)

PHP和MongoDB极其缓慢(15秒)
EN

Stack Overflow用户
提问于 2012-08-28 05:56:44
回答 2查看 2K关注 0票数 1

我设置了蒙戈,一切都很好。当我使用MongoVUE或shell时,一切都像闪电一样快。

不过,在为Windows安装PHP驱动程序之后,每个查询都要花费15秒以上。甚至这个来自PHP.net的简单教程也需要15秒的时间。

教程示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    $time_start = microtime(true);
    // connect
    $m = new Mongo();

    // select a database
    $db = $m->comedy;

    // select a collection (analogous to a relational database's table)
    $collection = $db->cartoons;

    // add a record
    $obj = array( "title" => "Calvin and Hobbes", "author" => "Bill Watterson" );
    $collection->insert($obj);

    // add another record, with a different "shape"
    $obj = array( "title" => "XKCD", "online" => true );
    $collection->insert($obj);

    // find everything in the collection
    $cursor = $collection->find();

    // iterate through the results
    foreach ($cursor as $obj) {
        echo $obj["title"] . "\n";
    }
    $time_end = microtime(true);
    $time = $time_end - $time_start;

    echo "\nOperation took $time seconds\n";

输出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Calvin and Hobbes XKCD Operation took 15.000731945038 seconds

我使用的是Windows7、WAMP、MongoDB 2.0.7和Windows驱动程序(v1.1.12) 来自吉突布

在答复评论中的问题时:

问:你有没有在你的系统上测试过其他PHP代码以及它的持续时间?

A:,这实际上是一个更大的web应用程序的一小块,其他的一切都很好。我很乐意发布你们认为有用的基准。

问:你在蒙戈描述过这个问题吗?

A:是的。如果我在shell中运行它,它会立即得到一个响应。

问:这是什么WAMP版本?

A: WampServer 2.2

问:这是什么PHP版本?

A: 5.3.13

问: mongodb里面已经有数据了吗?

A: --在我发布的基准测试之前,我删除了所有的数据库,所以它只有下面的代码插入的数据。

问:计算机的规格(主要是内存)是什么?

A: AMD X4 840T2.9GHz处理器,4GB DDR3 RAM,64位操作系统

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-28 06:27:19

我同意15秒太荒谬了。即使打开SafeMode,教程代码的运行时间也应该接近0.5秒(如果是这样的话)。您已经关闭了SafeMode,从插入代码可以看到:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// add a record
$obj = array( "title" => "Calvin and Hobbes", "author" => "Bill Watterson" );
$collection->insert($obj);

// add another record, with a different "shape"
$obj = array( "title" => "XKCD", "online" => true );
$collection->insert($obj);

您正在执行异步插入,这意味着PHP代码不会等待DB的返回,因此理论上,对DB的调用不应该是代码中的问题。

不过,find()可能会造成问题,所以我将对其进行分析。

司机仍有可能导致某种程度的减速,但这是极不可能的。为进一步帮助我们:

  • 您是否在您的系统上测试过其他PHP代码以及它的持续时间?
  • 你在蒙戈描述过这个问题吗?
  • 这是什么WAMP版本?
  • 这是什么PHP版本?
  • 魔王已经有数据了吗?
  • 计算机的规格(主要是内存)是什么?
票数 2
EN

Stack Overflow用户

发布于 2012-08-28 06:05:45

插入新数据库需要一段时间,因为MongoDB需要先预先分配数据库文件。随后的插入将很快。除此之外:只执行一个插入的基准测试是没有意义的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12160867

复制
相关文章
Django 基于 jquery 的 a
<1> $.ajax的两种写法: $.ajax("url",{}) $.ajax({}) <2> $.ajax的基本使用 $.ajax({ url:"//", data:{a:1,b:2}, type:"GET", success:function(){} }) $.get() 方法 创建一个 static 文件夹,用来存储 jquery.min.js 配置 settings.py, 在最后添加 STATICFILES_DIRS=( os.pa
py3study
2020/01/15
4270
Django 基于 jquery 的 a
基于 Next.js 的新博客
其实 Hexo 用着是很舒服的。完全静态,主题模板修改起来很简单,很容易就能达到想要的效果。只是一些功能比如 Services Worker 和 LazyLoad 都只能用比较粗暴的方法实现,不美观,而且难维护。 早眼馋别人的各种 Gatsby 和 Next.js 开发的博客了,可自定义强、现代、自带各种优化。Next.js 的官网还有一套简单的教程可以直接上手,跟着教程做完后直接就获得了一个现成的博客系统,或者说是 Markdown 解析器? 总之我们可以从这上面下手。
Cesirdy
2023/05/29
8330
基于 Next.js 的新博客
基于jquery拆分姓名的方法[纯JS版]
之前已经分享过一个在dom中用户输入姓名后自动用js拆分成姓与名到表单中的jquery插件,由于项目的需要,需要一个在客户端自动拆分,但不需要将拆分结果呈现给用户的方法,所以又写了一个独立的方法,贴出来跟大家分享交流
风柏杨4711
2021/03/15
6500
Python import同级modul
    看了一段Python的基础视频,正好赶上单位需要做个小工具。索性拿它练练手,刚刚开动就遇到一个新的问题:目录引用。简单的说,就是将不同的功能代码,分到不同的目录文件中,代码中涉及到同级目录调用,问题就出来了“SystemError: Parent module '' not loaded, cannot perform relative import”。
py3study
2020/01/07
8440
基于 Next.js实现在线Excel
如果要从头开始使用 React 构建一个完整的 Web 应用程序,需要哪些步骤? 这当然不像把大象装进冰箱那么简单,只需要分成三步:打开冰箱,拿起大象,塞进冰箱就好。
葡萄城控件
2022/09/19
6.6K0
基于JQuery实现的瀑布流布局
分享一个基于JQuery实现的瀑布流布局,效果如下: 实现代码如下,欢迎大家复制粘贴。 <!DOCTYPE html> <html> <head> <meta http-equiv="Co
越陌度阡
2020/11/26
9310
基于JQuery实现的瀑布流布局
基于 Next.js 的 SSR/SSG 方案了解一下?
本文主要是讲讲如何使用 Next.js 框架实现服务端渲染,将有效提升网页的 SEO 和首屏渲染速度,说不定哪天就用上了,是吧!
小东同学
2022/07/29
5.6K0
基于 Next.js 的 SSR/SSG 方案了解一下?
Python import同级目录报错
参考:http://blog.csdn.net/geekleee/article/details/52505233
py3study
2020/01/07
4.9K0
Python import同级目录报错
vue同级组件传值
侧边栏是aside组件,上面是toolbar组件,现在希望点击侧边栏每个路由都能在toolbar的当前位置处及时更新相应的值,大型应用通常使用vuex管理这部分功能,由于同级组件不能直接传值,需要一个中间件,我们可以先将数据传递给公共的父组件,然后父组件再将数据传递给需要的子组件。
4O4
2022/04/25
7100
vue同级组件传值
基于JQuery实现的图片拖拽缩放特效
给大家分享一个基于JQuery实现的图片拖拽缩放特效,效果如下: 实现代码如下,欢迎大家复制粘贴。 <!DOCTYPE html> <html> <head> <meta http-equi
越陌度阡
2020/11/26
5.4K0
基于JQuery实现的图片拖拽缩放特效
基于jQuery+JSON的省市联动效果
省市区联动下拉效果在WEB应用中使用非常广泛,尤其在一些会员信息系统、电商网站最为常见,开发者一般使用AJAX实现无刷新下拉联动。 本文将讲述利用jQuery插件,通过读取JSON数据,实现无刷新动态下拉省市二(三)级联动效果。
全栈程序员站长
2021/12/23
2.8K0
基于jQuery的自适应图片左右切换
大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。 效果预览:http://hovertree.com/code/jquery/smjv6d0n.htm
全栈程序员站长
2021/12/22
6.3K0
基于jQuery的自适应图片左右切换
基于腾讯云CVM搭建ChatGPT-Next-Web
本文主要叙述ChatGPT-Next-Web在腾讯云CVM云服务器上使用Docker镜像的方式搭建。
buzzfrog
2023/06/02
3.2K2
基于腾讯云CVM搭建ChatGPT-Next-Web
js如何引用同级元素
https://coder.itclan.cn/fontend/js/17-yinyong-tongji-elem/
itclanCoder
2023/02/26
7.9K0
js如何引用同级元素
基于JQuery实现电梯导航特效
分享一个基于JQuery实现的电梯导航效果,效果如下: 以下是代码实现: <!DOCTYPE html> <html lang="en"> <head> <meta charset="ut
越陌度阡
2020/11/26
4.6K0
基于JQuery实现电梯导航特效
VUE 路由守卫 next() / next({ ...to, replace: true }) / next(‘/‘) 说明
但是在看别的项目时常常能看到next('/logon') 、 next(to) 或者 next({ ...to, replace: true }) 这又是啥意思呢
安德玛
2022/03/08
3.5K0
基于jQuery 常用WEB控件收集
基于Jquery开发的Autocomplete插件。具有易于使用,配置简单,既可以利用Ajax读取数据也可以直接从本地获取数据。
全栈程序员站长
2022/07/05
7.5K0
基于JQuery EasyUI的WebMVC控件封装(含源码)
  JQuery EasyUI类库,大家不会陌生,出来已经有很多年了。个人感觉还是很好用的,作者更新频率也很快,bug也及时修复。   最近在整理以前的代码,找到了这个组件,它是将EasyUI组件封装成MVC控件,这样我们就可以不用写那些html标签了,我们先看看调用方式 <form id="form1"> @Html.HiddenFor(c => c.ID) @Html.HiddenFor(c => c.EditMode) @Html.HiddenFor(c => c.CodeTy
用户1219352
2018/02/01
1.6K0
基于JQuery EasyUI的WebMVC控件封装(含源码)
基于JQuery EasyUI的WebForm控件封装(含源码)
      做WebForm软件的朋友们,对于JQuery EasyUI类库肯定不会陌生,它是基于JQuery类库编写的,据说是国人开发的,真是神人啊.使用此控件,可以大大减轻我们的工作量.相比微软的
用户1219352
2018/02/01
1.6K0
基于JQuery EasyUI的WebForm控件封装(含源码)
基于jQuery或Zepto的图片延迟加载插件
当我们网站的页面图片过多时,加载速度就会很慢。尤其是用手机2G/3G访问页面,不仅页面慢,而且还会用掉很多流量。我们主题之前也都采用了图片的懒加载形式,但都不完美,部分主题还采用了占位图片来控制懒加载,今天换一种js图片懒加载,它原理就是将页面内所有需要加载的图片全部换成一张默认的图片(一般尺寸很小),只有图片在可视区域才去请求加载,这样的话应该就能满足我们日常所需,好了不说废话先按照教程操作试试,后期主题会逐一更新,稍安勿躁!!!
李洋博客
2022/11/03
3.2K0

相似问题

jQuery使用next()获取同级返回未定义

12

如何针对jquery或css中的next或同级元素?

30

.next() jquery函数跳过下一个同级

21

基于next的td的jQuery变更类

46

选择jQuery中同级的同级

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文