0

您好,我是一名刚刚学习使用 Netty 和 MySQL 的学生。

我正在为我的 android 和 iOS 应用程序构建服务器。我基于使用 Netty 4.0.6 示例 HttpUploadServer 构建了我的服务器。

服务器的主要任务是发送/接收和保存图像和音频文件(总共约 1mb)。每天将发送大约 10,000 个请求。

我的一位顾问说,在开发服务器时,最应该考虑两件事。

  • 扩大和扩大
  • 高可用性

但是,(因为我只是在学习服务器编程)我不知道如何去做。我能想到的唯一能提高可扩展性和可用性的就是亚马逊的弹性负载均衡器。

我知道这是一个非常广泛的问题,但请给我一个进展。如何使用 Java(尤其是 Netty)提高可扩展性和可用性?

4

1 回答 1

1

可以通过多种技术实现放大

  • 拥有多个实例:又名弹性负载均衡器
  • 分片:服务器 1 处理用户 AM 的请求 服务器 2 处理用户 NZ 的请求
  • 添加缓存:您是否多次为同一个请求提供服务?在继续提供相同的答案时对问题进行一些记忆
  • 简化您的工作量!

您需要回答的真正重要的问题是,是什么限制了您为 N+1 个客户端提供服务的能力。您是否用完了套接字、内存、cpu 时间、数据库事务?

像任何分析问题一样,找出你的主要问题并解决它。

于 2013-09-11T03:05:43.747 回答