我在windows azure中创建了Neo4j虚拟机。如何提高它的性能?现在需要30-50秒的时间才能进行简单的查询。如何改进呢?有人可以帮忙吗?
我的样本数据模型如下:
public class Users
{
public string email
{
get;
set;
}
public string password
{
get;
set;
}
public string firstname
{
get;
set;
}
public string lastname
{
get;
set;
}
public string dob
{
get;
set;
}
public string gender
{
get;
set;
}
public string id
{
get;
set;
}
public string facebookId
{
get;
set;
}
public string googleId
{
get;
set;
}
public string profile_pic
{
get;
set;
}
public Guid Recoverid
{
get;
set;
}
public Guid Emailverification
{
get;
set;
}
public string HighSchool
{
get;
set;
}
public string College
{
get;
set;
}
public string Employer
{
get;
set;
}
public string Currentcity
{
get;
set;
}
public string HomeTown
{
get;
set;
}
public bool registerationstatus
{
get;
set;
}
public string Language
{
get;
set;
}
public string Username
{
get;
set;
}
public string FullName
{
get;
set;
}
public string joinDate
{
get;
set;
}
public string primeryrecoverymail
{
get;
set;
}
public string secondaryrecoverymail
{
get;
set;
}
public string loginnotification
{
get;
set;
}
public string Mobileno1
{
get;
set;
}
public string Mobileno2
{
get;
set;
}
public string FuturePostSettings
{
get;
set;
}
public string FriendrequestSettings
{
get;
set;
}
public string Contactmesettings
{
get;
set;
}
public string Lookmebymail
{
get;
set;
}
public string LookmebyPhone
{
get;
set;
}
public string isvisible
{
get;
set;
}
public string userstatus
{
get;
set;
}
#endregion
}
和查询是
var datas = client.Cypher.Match("(user:User)").Where((Users user) => user.email == email && user.password == password).Return(user => user.As<Users>()).Results;
答案 0 :(得分:1)
我最近遇到了同样的问题。一切都在我的本地机器上运行良好,但是当我尝试使用Azure时,它就像一只三条腿的狗。您正在超时的事实表明您正在爆炸JVM。最后我改变了两件事
不要将Azure VM Depot用于Neo4j for Windows。该版本已经过时了。如果我能记得正确,它的版本是1.8。相反,我按照link中的安装进行了操作。这非常有帮助。我使用了A3 VM(4核,7G RAM),它似乎适合我基地的1M节点。
我在JVM设置方面遇到了很多问题。这是我真正的问题,我怀疑它是你的。根据您的具体情况,请参阅Neo4j documentation。您将需要更新neo4j-community.vmoptions文件,您将在Java VM Tuning下的Neo4j选项中找到该文件。我不是Java人,但我添加的条目是 -Xmx -Xms -Xss -XX:+ UseConcMarkSweepGC 显然,你需要根据这些要求加入你的价值观。对于我的VM,我使用4G作为-Xmx(即-Xmx4G)。请注意,其他论坛主题中的很多人都建议更新conf / neo4j-wrapper.conf文件以更新您的JVM设置。这是误导性的,因为需要更改neo4j-community.vmoptions文件。