難しいですね。
ロード時間が長いものを取り除いたり、必要になるまでロードしないようにするテクニックはあります。
https://files.bemusement.org/talks/OSDC2008-FastPython/
インタプリタが走ってからメモリにロードしているので、事前にロードするのはOS側としては困るのでしょうね。
ですので、インタプリタが走っている状態を維持することが唯一の解決策のように思います。
Pythonでサーバーを立てて、POSTする形で実行をさせることになります。
そうすると今度は複数のリクエストを同時に実行するにはどうするのかなどなど大変なことになります。
学習で使用するのなら、インポートの時間は無視できるので、構いませんが、
判定に使うのなら、Pythonで直接サーバーを立てるか、重みがわかっているので、個別にコードを書いて自分で計算するほうが速いです。
その場合Pythonなんていう遅い言語を使う必要もありませんが。
サーバーを立てるのはFlaskのような簡単なフレームワークでよいのであれば、比較的少ない変更で達成できます。
以下のようなコードでサーバーを立てれば、後はpython ****.py
のところをlocalhost:8080/
にアクセスすればよいことになります。
python
1from flask import Flask
2#
3# imports here
4#
5
6app = Flask(__name__)
7
8def main():
9 # read
10 # models
11 # write
12 pass
13
14@app.route('/')
15def index():
16 main()
17 return 'Success'
18
19if __name__ == '__main__':
20 app.run(host='0.0.0.0', port=8080)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/06 07:50 編集
2018/01/04 08:07
2018/01/04 11:10
2018/01/04 12:50