小编bug*_*yci的帖子

在内存中运行MongoDB是否会在RAM上创建重复项

您可以在RAM上创建ramdisks,tmpfs等,以创建用于不同应用程序的分区.

在以下帖子中发布了类似的一个:如何将MongoDB用作纯内存数据库(Redis样式)

MongoDB使用驻留内存来处理热数据.

因此1)使用ramdisk是否复制相同数据的ram用法?

2)有没有办法禁用驻留内存的使用?


编辑:我们可以将托管操作系统视为CentOS或Ubuntu服务器,因为它们是最重要的服务器.

memory mongodb

9
推荐指数
1
解决办法
423
查看次数

流浪的公共网络可以ping,但无法从apache服务器获得响应

我使用下面给出的Vagrantfile设置为virtualbox配置了vagrant.我可以从主机(HM)连接到虚拟机上运行的Web服务器.

我也可以从网络机器ping服务器,但当我尝试从网络访问Web服务器时,虚拟机(VM)获取请求并说它响应(apache),但网络机器(NM)没有得到回应.

如何配置vagrant或virtualbox从NM访问?我尝试在VM接口文件上将eth1更改为eth0,但它没有用.Vagrant无法放松机器.

提前致谢

Vagrantfile:

config.vm.define "web" do |web|
  web.vm.box = "raring"
  web.vm.network "public_network", ip: "192.168.0.53", bridge: 'eth0'
  web.vm.provider "virtualbox" do |v|
      v.customize ["modifyvm", :id, "--memory", 1024]
  end
end
Run Code Online (Sandbox Code Playgroud)

主机界面

eth0      Link encap:Ethernet  HWaddr 54:04:a6:68:7d:85  
      inet addr:192.168.0.102  Bcast:255.255.255.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:576  Metric:1
      RX packets:142100 errors:0 dropped:0 overruns:0 frame:0
      TX packets:110704 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:61653460 (61.6 MB)  TX bytes:14976111 (14.9 MB)
      Interrupt:55 Base address:0xa000 
Run Code Online (Sandbox Code Playgroud)

虚拟机界面

eth0      Link encap:Ethernet  HWaddr 08:00:27:49:4c:f1  
      inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0 …
Run Code Online (Sandbox Code Playgroud)

virtualbox vagrant

7
推荐指数
1
解决办法
2046
查看次数

后续的onBind()调用不会被触发

使用姜饼2.3.4 api lvl 10.

我在启动完成后启动服务.为此,我添加了一个启动服务的广播接收器.我在启动器中使用相同的服务.我试图通过向Intent添加额外的参数来绑定服务.通过广播回复从服务中获取结果.

问题是当它第一次绑定时,会触发服务上的onBind().进一步的绑定不会调用服务上的onBind().我相信问题是服务直接在after_boot启动.当我没有在启动时启动服务并让活动使用Context.BIND_AUTO_CREATE启动它时,它的行为与预期一致.

我想出的唯一解决方案是更改服务的onUnbind()并在服务的onRebind()调用中发出onBind().我不喜欢这个解决方案,因为它可能会破坏以后的Android版本,导致onBind()方法被调用两次.

那么为什么后续绑定不会在启动完成后启动的服务上触发.欢迎任何其他优雅的解决方案.

PS:我已经在aidl中实现了它,但我不喜欢它,因为服务将做一些异步的东西来返回数据,我必须在两个应用程序中添加aidl文件,将添加导致膨胀代码的处理程序.

提前致谢.我的代码片段:

服务的清单:

        <intent-filter>
            <action android:name="com.organization.android.ACTION_BOOT_COMPLETED" />
        </intent-filter>

         <intent-filter>
            <action android:name="com.organization.android.WORK_INTENT" />
        </intent-filter>
    </service>

    <receiver android:name=".CoreServiceReceiver" >
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" >
            </action>

            <category android:name="android.intent.category.HOME" >
            </category>
        </intent-filter>
    </receiver>
Run Code Online (Sandbox Code Playgroud)

当我绑定到服务时:

Intent intent = new Intent(WORK_INTENT); intent.putExtra("param",param);

context.registerReceiver (broadcastReceiver, new IntentFilter("com.organization.android.WORK_RESULT"));
context.bindService(intent,mConnection, Context.BIND_AUTO_CREATE);        
Run Code Online (Sandbox Code Playgroud)

}

当我得到结果时:

context.unbindService(mConnection);
context.unregisterReceiver (broadcastReceiver);
Run Code Online (Sandbox Code Playgroud)

android android-intent android-service

3
推荐指数
1
解决办法
2207
查看次数