将网站从 x64 服务器转移到 x86 服务器

将网站从 x64 服务器转移到 x86 服务器

我在这里运行一个 x64 暂存服务器以及以下内容:

Solr Java 等

但是,我即将购买一台 linode vps 用于生产,并很快意识到 x86 是他们最低 RAM 包的最佳选择(考虑稍后升级)。我的临时服务器是 x64,有 12GB RAM,因此降到 300MB RAM 会感觉非常慢 ;/

以下是我的问题:

1) 将脚本、数据库等从 x64 服务器转移到 x86 服务器时会遇到问题吗?例如 solr 索引

2) 值得购买 x86 软件包吗?我可能稍后会升级,而 x64 可能更适合具有更多 RAM 的服务器?我是否应该坚持使用 x64,因为在低 RAM 下使用时没有太大区别?

干杯

答案1

在这种内存受限的环境中启动 jvm 可能会遇到麻烦。

移动索引不会有任何问题,所有 Lucene 文档都是字节序不可知的,并且不是字对齐的。我唯一遇到困难的从 32 位移动到 64 位的软件包是 rrdtool 档案的集合,它使用机器的原生字长。

请记住,在 x86-64 下,每个指针都是 long,即 8 个字节。在 JVM 上,任何时候都有数十万个对象引用在运行,因此这会累积起来。

答案2

当只有 300 MB 可用时,您几乎肯定会遇到内存问题;即使您剥离服务器操作系统,您也不可能使用超过 250MB 的 Java 堆来运行,而且最有可能的是,您会被限制在 200 MB 或更少。

您可以将 jconsole 指向您的 JVM,查看您当前正在使用的内存,并查看它是否在正确的范围内。

如果您真的想确定,您可以使用建议的系统配置(300 MB RAM,等等)设置一个虚拟机,看看是否可以运行该应用程序;这样您就不会去猜测了。

相关内容