質問: いつもお世話になっています。 現在、teratailのようにWebサイトにログイン機能を実装し、ユーザーの情報をデータベースに保存する方法を探しているのですか、ふとteratailではどのようにデータを保存しているのか気になりました。 具体的には、ユーザーのログイン情報(id,lastName,firstName,emailなど)の他に、特定のページのお気に入り登録(teratailでいうところのクリップですね)、そして有料記事と有料会員登録の設定をして支払った人にだけ広告を表示させないような機能を実装したいと考えています。 これらは普通にPHPとMySQLを利用したらできるものであり、またそうするべきものなのでしょうか。それともNoSQLとしてMongoDBを扱うためにNode.jsを利用しているのでしょうか。 どなたかお答えいただけると嬉しいです。
回答: teratail のデータベース構造は公開されていません。 記述されたような機能が実装できる OSS は多数あるので、そちらのソース/データベースを確認してみては? フレームワーク + 認証ライブラリでも良いかと思います。 ちなみに、どっから NoSQL が出てきたんでしょうか?