小编Pie*_*rre的帖子

确定Cassandra集群的完整程度

我刚刚导入了大量的数据在9节点集群卡桑德拉之前,我创建一个新的ColumnFamily甚至更多的数据,我希望能够确定我的集群目前有多满(在内存使用方面).我不太清楚我需要注意什么.我不想导入另外20-30GB的数据,并意识到我应该增加5-6个节点.

简而言之,我不知道我现在是否有太少/很多节点用于集群中的内容.

任何帮助将不胜感激 :)

$ nodetool -h 192.168.1.87 ring
Address         DC          Rack        Status State   Load            Owns    Token                                       
                                                                               151236607520417094872610936636341427313     
192.168.1.87    datacenter1 rack1       Up     Normal  7.19 GB         11.11%  0                                           
192.168.1.86    datacenter1 rack1       Up     Normal  7.18 GB         11.11%  18904575940052136859076367079542678414      
192.168.1.88    datacenter1 rack1       Up     Normal  7.23 GB         11.11%  37809151880104273718152734159085356828      
192.168.1.84    datacenter1 rack1       Up     Normal  4.2 GB          11.11%  56713727820156410577229101238628035242      
192.168.1.85    datacenter1 rack1       Up     Normal  4.25 GB         11.11%  75618303760208547436305468318170713656      
192.168.1.82    datacenter1 rack1       Up     Normal  4.1 GB          11.11%  94522879700260684295381835397713392071      
192.168.1.89    datacenter1 rack1       Up     Normal  4.83 GB         11.11% …
Run Code Online (Sandbox Code Playgroud)

cassandra

8
推荐指数
1
解决办法
2万
查看次数

MongoDB在写密集型应用程序中的性能非常差

我正在为一个Web应用程序运行写密集型MongoDB,而且我的性能非常差.话虽这么说,我相当肯定问题与我们的代码,设置和/或我们的使用有关,而不是mongo本身.

我打算用绝望的大锤打开我的头,所以我想知道是否有人会介意看看我准备好的一些输出,看看是否有任何问题.

代码不是太复杂(它在PHP中,顺便说一句).它几乎是 - > find()和 - > update().我确保为这两个调用使用索引,并确认它们确实被查询使用explain().

我已经尝试了1台服务器(ec2 m2.2xlarge),4台服务器(2台服务器的2个分片)和9台服务器(3个服务器的3个分片)并且无法从中获得更多.

在好的时刻,我无法获得超过每秒1500次写入(插入+更新).大多数时候,我很幸运能够达到100次插入/更新的总和,并且我总是有一个很大的"锁定%"并且很多查询排队等待"qr | qw".

现在,我有一个正在运行的脚本,它正在爬行.最糟糕的是,当我查看mongostat一段时间时,"res"中使用的RAM量大约是服务器可用RAM的50%,并且有足够的RAM来容纳所有集合的索引.没有理由为什么这不会像疯了一样吐出数据.

我必须已经将应用程序重新编码2-3次,试图找到更好的数据访问模式.我已经读过关于索引,更新,分片键以及什么不能读取的所有内容.我把mongo打开的所有服务器都使用了8个EBS磁盘raid 10设置并添加了一些性能调整(blockdev,noatime等等).

我知道问题出在我的最后,我不是在责备mongodb.我知道比我更大的公司正在将它用于密集型应用程序并且他们非常喜欢它(例如foursquare).与此同时,我无法理解我做错了什么以及为什么我的表现如此糟糕,无论我做什么.

附加信息:

  • 所有服务器(客户端和服务器)都运行带有MongoDB 1.8.2的Ubuntu 10.04 LTS
  • 所有服务器都位于EC2 East和同一区域中
  • 目前,我回到1 m2.2xlarge服务器(4核,34.2 GB RAM),直到我能找出问题所在.

php performance amazon-ec2 mongodb

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

如何使用NSFileManager setAttributes递归更改目录的权限

我目前正在使用NSFileManager setAttributes来更改目录的权限.我的问题是它似乎没有递归地这样做.有没有办法强迫它这样做?

objective-c

5
推荐指数
1
解决办法
4100
查看次数

将二进制打包c#代码转换为PHP

我试图将以下c#代码转换为PHP,但我不知道要使用哪个pack()参数.

var xorkey = BitConverter.ToUInt32(filedata, 0) >> 8;
xorkey *= 0x8083;
for (var i = 8; i < filedata.Length; i += 0x4)
{
    BitConverter.GetBytes(BitConverter.ToUInt32(filedata, i) ^ xorkey).CopyTo(filedata, i);
    xorkey ^= BitConverter.ToUInt32(filedata, i);
}
filedata = filedata.Skip(4).ToArray();
Run Code Online (Sandbox Code Playgroud)

编辑 - 一直在努力,我到目前为止似乎工作.

$xorkey = unpack("L", $filedata)[1] >> 8;
$xorkey *= 32899; // 32899 == 0x8083

for ($i = 8; $i < strlen($filedata); $i += 4) {
    $bytes = unpack("L", substr($filedata, $i))[1] ^ $xorkey;

    // left to do: BitConverter.GetBytes($bytes).CopyTo(filedata, i);

    // this doesn't work: …
Run Code Online (Sandbox Code Playgroud)

php c#

0
推荐指数
1
解决办法
458
查看次数

标签 统计

php ×2

amazon-ec2 ×1

c# ×1

cassandra ×1

mongodb ×1

objective-c ×1

performance ×1