We have one web application(With Spring, hibernate and MySQL as a Database) in which multiple users can store the heavy videos(pre-recorded or record from application itself) on server at same time.
我们有一个Web应用程序(使用Spring,hibernate和MySQL作为数据库),其中多个用户可以同时在服务器上存储大量视频(预先录制或从应用程序本身录制)。
In that scenario, server load would be definitely more there. We are assuming there would be 500-2000 users in the application.
在那种情况下,服务器负载肯定会更多。我们假设应用程序中有500-2000个用户。
So what strategy i should use to reduce the load from server and make the response time faster.
那么我应该使用什么策略来减少服务器的负载并使响应时间更快。
1) Storing the videos on our server(With large Disk Space), and using the ActiveMQ/RabbitMQ mechanisms for File Upload and download in the Queues.
1)将视频存储在我们的服务器上(使用大磁盘空间),并使用ActiveMQ / RabbitMQ机制在队列中进行文件上载和下载。
2) Storing the videos on some third party server(like YouTube,vimeo etc) that will upload all the videos on one central account. I had recently check this thing with you tube and vimeo but they require the end user login credentials for each upload. And i don;t want in my application that end-users to provide their credentials before each upload.
2)将视频存储在某个第三方服务器(如YouTube,vimeo等)上,将所有视频上传到一个*帐户。我最近用tube和vimeo检查了这个东西,但是他们需要每个上传的最终用户登录凭据。而且我不希望在我的应用程序中最终用户在每次上传之前提供他们的凭据。
Is there any other way to reduce the work load and make the response time better for simultaneously upload on server, then please guide.
有没有其他方法可以减少工作量并使响应时间更好,以便在服务器上同时上传,然后请指导。
Thanks In Advance,
提前致谢,
Arun
1 个解决方案
#1
0
Multi servers can help. On a single server: If you use a single core processor - only ONE client will get served. If you use a multi core processor and you are oppening a new thread for a new connection - only #ofCores clients will get served, and even that is not correct because your local memory might run out before your os will save the data to your local hard disk (which has one bus), so serving 500-2000 clients leads you to a multi server solution.
多服务器可以帮助。在单个服务器上:如果您使用单核处理器 - 只有一个客户端将获得服务。如果您使用多核处理器并且正在为新连接选择新线程 - 只有#ofCores客户端将被提供服务,即使这样也不正确,因为您的本地内存可能会在您的操作系统将数据保存到本地之前耗尽硬盘(有一个总线),因此为500-2000个客户端提供多服务器解决方案。
#1
0
Multi servers can help. On a single server: If you use a single core processor - only ONE client will get served. If you use a multi core processor and you are oppening a new thread for a new connection - only #ofCores clients will get served, and even that is not correct because your local memory might run out before your os will save the data to your local hard disk (which has one bus), so serving 500-2000 clients leads you to a multi server solution.
多服务器可以帮助。在单个服务器上:如果您使用单核处理器 - 只有一个客户端将获得服务。如果您使用多核处理器并且正在为新连接选择新线程 - 只有#ofCores客户端将被提供服务,即使这样也不正确,因为您的本地内存可能会在您的操作系统将数据保存到本地之前耗尽硬盘(有一个总线),因此为500-2000个客户端提供多服务器解决方案。