在Azure App Service部署Flask+PySpark应用时/process接口出现500错误的求助
在Azure App Service部署Flask+PySpark应用时/process接口出现500错误的求助
我部署了一个Flask+PySpark的应用到Azure App Service,用来测试服务可用性。目前首页(/)可以正常返回内容,但调用/process接口时一直触发500内部错误。这个应用在我的本地环境运行完全正常,但部署到Azure上后就出现了这个问题。
想请教大家:Azure App Service是否支持运行PySpark应用?我已经尝试配置了Spark、Java和Hadoop的相关环境,但还是没能解决问题。
我的代码如下:
from flask import Flask, jsonify from pyspark.sql import SparkSession, Row from datetime import date, datetime spark = SparkSession.builder \ .appName("PySparkApp") \ .master("local[*]") \ .config("spark.driver.bindAddress", "0.0.0.0") \ .config("spark.ui.enabled", "false") \ .config("spark.python.worker.reuse", "true") \ .getOrCreate() spark.sparkContext.setLogLevel("ERROR") # Suppress non-critical logs app = Flask(__name__) @app.route('/') def home_page(): return "Welcome To Home Page..." @app.route('/process') def process_data(): # Create a DataFrame with some example data df = spark.createDataFrame([ Row(id=1, rate=2.0, description='string1', date=date(2000, 1, 1),datetime=datetime(2000, 1, 1, 12, 0)), Row(id=2, rate=3.0, description='string2', date=date(2000, 2, 1), datetime=datetime(2000, 1, 2, 12, 0)), Row(id=4, rate=5.0, description='string3', date=date(2000, 3, 1), datetime=datetime(2000, 1, 3, 12, 0)) ]) # Convert to JSON without pandas data = df.rdd.map(lambda row: row.asDict()).collect() # Return data as JSON return jsonify(data)
我已经尝试配置了Spark、Java和Hadoop的相关环境,但问题依然没有解决。
备注:内容来源于stack exchange,提问作者user29053150
相关产品推荐
相关产品推荐

