SQL Server 2005 + JavaEE application on one computer in production

时间:2021-01-16 10:36:41

We have project with a server witch have about 3000 requests at day from client. 30-40 on-line users. And smth about 30-40Gb data increase per year. And system should be on-line 24x7.

我们有一个服务器项目,每天有大约3000个请求来自客户端。 30-40位在线用户。并且每年约有30-40Gb的数据增长。系统应该24x7全天候上线。

Where can we locate the SQL server better? On one computer with JavaEE container or on standalone computer?

我们在哪里可以更好地找到SQL服务器?在一台装有JavaEE容器的计算机上或在独立计算机上?

What pros and cons on this ways?

这方面的利弊是什么?

3 个解决方案

#1


2  

Of course, as Cade Roux explained, it's always better to put them on separate servers (in case they connected via LAN (and not Internet)).

当然,正如Cade Roux所解释的那样,将它们放在不同的服务器上总是更好(如果它们通过LAN(而不是Internet)连接)。

If, however, your budget isn't enough for two machines, or you already have a powerfull machine, you can use virtualization. Make 2 virtual machines, one for the Java EE container, one for the database server. This gives all the benefits explained by Cade Roux, with a single physical machine.

但是,如果您的预算不足以支付两台计算机,或者您已经拥有强大的计算机,则可以使用虚拟化。制作2个虚拟机,一个用于Java EE容器,一个用于数据库服务器。这提供了Cade Roux使用单个物理机器解释的所有好处。

#2


2  

All of the above posters suggestions are correct.

所有上述海报建议都是正确的。

However, 3000 requests a day does not sound like much.

但是,每天3000次请求听起来并不多。

  1. How much of a budget do you have for hardware/software?
  2. 你有多少预算用于硬件/软件?
  3. How powerful is your machine?
  4. 你的机器有多强大?
  5. Have you run some performance analysis with simulated load tests with both running on the same machine?
  6. 您是否在模拟负载测试中运行了一些性能分析,两者都在同一台机器上运行?

Of course, if you can have a separate server for each, it is much better for the reasons specified above. If not, and your machine is adequate to run both, you can achieve some of the advantages of separate machines by running a VM, but if your hardware crashes or OS crashes, the VM won't buy you anything.

当然,如果每个服务器都有一个单独的服务器,那么由于上面指出的原因,它会好得多。如果没有,并且您的计算机足以同时运行两者,您可以通过运行VM来实现单独计算机的一些优势,但是如果您的硬件崩溃或操作系统崩溃,VM将不会为您购买任何东西。

#3


1  

Typically, application server components are not installed on database servers. In addition, your 24x7 requirements probably dictate that you not put both the application layer and the database services on the same machine so that you can separate the database layer to be able to implement some kind of clustering or other high availability solution at the database layer and a similar load balancing or whatever at the application services layer.

通常,应用程序服务器组件未安装在数据库服务器上。此外,您的24x7要求可能要求您不要将应用程序层和数据库服务放在同一台机器上,以便您可以将数据库层分开,以便能够在数据库层实现某种类型的集群或其他高可用性解决方案以及类似的负载平衡或应用程序服务层的任何内容。

As far as volume, on the face of it, it doesn't seem that it would be too much for one machine to handle, but you really haven't given enough detail.

就体积而言,从表面来看,一台机器似乎不会太多,但你真的没有给出足够的细节。

#1


2  

Of course, as Cade Roux explained, it's always better to put them on separate servers (in case they connected via LAN (and not Internet)).

当然,正如Cade Roux所解释的那样,将它们放在不同的服务器上总是更好(如果它们通过LAN(而不是Internet)连接)。

If, however, your budget isn't enough for two machines, or you already have a powerfull machine, you can use virtualization. Make 2 virtual machines, one for the Java EE container, one for the database server. This gives all the benefits explained by Cade Roux, with a single physical machine.

但是,如果您的预算不足以支付两台计算机,或者您已经拥有强大的计算机,则可以使用虚拟化。制作2个虚拟机,一个用于Java EE容器,一个用于数据库服务器。这提供了Cade Roux使用单个物理机器解释的所有好处。

#2


2  

All of the above posters suggestions are correct.

所有上述海报建议都是正确的。

However, 3000 requests a day does not sound like much.

但是,每天3000次请求听起来并不多。

  1. How much of a budget do you have for hardware/software?
  2. 你有多少预算用于硬件/软件?
  3. How powerful is your machine?
  4. 你的机器有多强大?
  5. Have you run some performance analysis with simulated load tests with both running on the same machine?
  6. 您是否在模拟负载测试中运行了一些性能分析,两者都在同一台机器上运行?

Of course, if you can have a separate server for each, it is much better for the reasons specified above. If not, and your machine is adequate to run both, you can achieve some of the advantages of separate machines by running a VM, but if your hardware crashes or OS crashes, the VM won't buy you anything.

当然,如果每个服务器都有一个单独的服务器,那么由于上面指出的原因,它会好得多。如果没有,并且您的计算机足以同时运行两者,您可以通过运行VM来实现单独计算机的一些优势,但是如果您的硬件崩溃或操作系统崩溃,VM将不会为您购买任何东西。

#3


1  

Typically, application server components are not installed on database servers. In addition, your 24x7 requirements probably dictate that you not put both the application layer and the database services on the same machine so that you can separate the database layer to be able to implement some kind of clustering or other high availability solution at the database layer and a similar load balancing or whatever at the application services layer.

通常,应用程序服务器组件未安装在数据库服务器上。此外,您的24x7要求可能要求您不要将应用程序层和数据库服务放在同一台机器上,以便您可以将数据库层分开,以便能够在数据库层实现某种类型的集群或其他高可用性解决方案以及类似的负载平衡或应用程序服务层的任何内容。

As far as volume, on the face of it, it doesn't seem that it would be too much for one machine to handle, but you really haven't given enough detail.

就体积而言,从表面来看,一台机器似乎不会太多,但你真的没有给出足够的细节。