异步编程与RESTful JSON API构建
1. 异步编程与Spark性能优化
1.1 Spark本地模式性能
Spark在处理3.4GB文件时约需8秒,对于普通Web应用而言较慢,但在数据分析工作中是可以接受的。不过,本地模式下Spark缺乏并发能力,所有作业提交到同一个 SparkContext ,按顺序执行而非并行执行。若要实现多用户并发访问多个Spark作业,需搭建Spark集群来处理并发和资源共享。
1.2 多核系统加速技巧
在多核系统中,可通过修改 SparkContext 配置来加速处理。默认配置为:
val sc = new SparkContext("local", "Spark Demo")
此配置仅使用一个处理器。若将其设置为 "local[X]" ,其中 X 为机器的处理器数量,作业处理速度将显著提升。例如:
val sc = new SparkContext("local[8]", "Spark Demo")
这样处理时间可从平均8秒缩短至约2.4秒。
1.3 并发技术选择
- Scala的Futures :可将Scalatra的HTTP线程池工作与应用的主要工作解耦,适用于简单、轻
超级会员免费看
订阅专栏 解锁全文
1053

被折叠的 条评论
为什么被折叠?



