いつもこちらのサイトにはお世話になっております。
APIサーバについて質問させてください。
因みに自分はバックエンド技術者ではありませんが、
業務でAPIサーバを立てる必要が生じました。
伺いたいのは以下2点です。
1.フレームワークに何を選ぶとよい?
2.データベースはなくてもよい?
サーバの要件は以下です。
最新のデスクトップPC程度のマシンに自前で立てる
秒間最大30リクエストに耐えられれば良い
まず1ですが、業務では8割がたpythonでコードを記述しています。
チーム全員がわかりやすい、という意味ではFlaskが適切なのかな?
と思っております。
一方で、
https://www.techempower.com/benchmarks/
ここのサイトを見ると、flask自体はメッチャ遅いです。
303位:flask-raw
バックエンドでよく聞くphpの方がまだ早そうです。
11位:php-ngx-pgsql
JavaScriptでアーキテクチャを統合できると聞く、モダンな?node.jsも
それほど早いわけではない。
116位:nodejs-mongodb-raw
しかし、パフォーマンスについては結局、サーバ本体に依存し、
サーバ本体がどの言語を最適に高速化しているかだけのようにも思えます。
1に関連していると思いますが、2についてです。
APIサーバのオンメモリ上に各種データを保持すれば
データベースは不要だと思っていますがいかがでしょうか?
例えばFlaskにしても、nodejsにしても、APIサーバ内で
変数を持たせれば、API要求に対してその変数の値を
更新したり、取得させればよいように思います。
世の中のシステムのDBアクセスはおそらくメッチャ高速なのだと思いますが、
自前のサーバPCでもないPCにAPIサーバを立てますので
DBアクセスも無視できない要素と思っております。
以上を踏まえて、WebAPIサーバとしましては、以下のいずれか、
またそれ以外の好ましい選択肢等ありましたら、ご教示頂けますでしょうか?
・DBレスなシステムなんだし、Flask、nodejs等で十分
・いや、DBはやっぱり必要だよ。総合パフォーマンスで優れている
nginx+phpが無難だよ
・いや、ネイティブ言語最強だよ、goでサーバ立てよう
回答2件
あなたの回答
tips
プレビュー