- ベストアンサー
今のOKwaveのようなサイト作るためにはどんな今
今のOKwaveのようなサイト作るためにはどんな今の主流なデータベース、サーバシステム、開発言語ツール、言語の種類はなんなんでしょう? 同じものをつくるとしたら、または運用するとしたら、どのような方法で作るのが早いでしょうか?どのような方法が現実てきでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>>今の主流なデータベース、サーバシステム、開発言語ツール、言語の種類はなんなんでしょう? 主流のデータベース、サーバ、ツール、言語が何であれ、開発者が経験あるものを選ぶのが安全策となるでしょう。 基本的にはOSSと呼ばれているソフトウエアの中から選ぶことになると思います。 ちょっと前は、LAMP(Linux・Apache・MySQL・PHP)の組み合わせがもてはやされた気がします。 ただし、PHPはコンパイラー言語ではないため、大規模開発においては、コンパイラーがあるJavaが選ばれることが多かったようです。 でも、Oracle社が支配するJavaは、いままで無償で使えていたのですが、(Oracle社の商売不振の影響?で)有償化が発表されました。 ですから、これから開発するならJavaは選択枝からはずすのが良いかな?と思えます。 もしかしたら、Javaの代わりにC#を選ぶ方が増えるかもしれません・・・。 またデータベースで有名なOracleは定期的に利用料を値上げしてくるので、同様にデータベースの選択枝からはずしたいところでしょう。 >>同じものをつくるとしたら、または運用するとしたら、どのような方法で作るのが早いでしょうか? どのような方法が現実てきでしょうか? ちょっと前は、「セキュリティを考えると、自社でハード用意することになる。クラウドなんて、ありえない!」という考え方が割と多かったですね。 でも、これだと予算を考えたとき、Unix用のハードなら予算で数千万単位となり、メーカ各社から見積とって、役員に稟議書回して、ハードウエア設置場所用意して・・といろいろと大変で、設置まで半年がかりなんてこともありえます。 OSをUnixでなくて、Linux系にすれば、数千万を数百万円単位に落とすことが可能でしたが、それでも、導入手順は似たようなものとなって、ハードウエア導入まで数か月単位の時間がかかると思います。 しかし、AmazonのAWSやMicrosoftのAzureなど、クラウドサービス上にシステム構築するなら、それらの使い方に慣れた技術者であれば、1時間もあればサーバ環境ができてしまいそうです。 しかも開発中であれば、それほどCPUやディスク容量も要らないし、ネットワーク利用量も少ないでしょう。 無償か、数千円/月くらいの予算で劇的に安く開発環境が用意できてしまいます。 (大手銀行であってもクラウドを選択するケースがでてきていますので、これからはクラウドを使うのが当たり前になりそうです。) システムがほぼ完成して、一般の方に使ってもらえるレベルになったら、CPUやディスク、メモリ使用量とか、ネットワークの流量増大に合わせて、それらを増強していけばいいので、初期投資金額と稼働中のコンピュータ資源不足のリスクが押さえられます。 また、AWSは運用がやりやすくなるように、日夜システム改善がされているようです。 それらを理解するには時間がかかりそうですけど、きちんと理解すれば、運用経費も大幅に安くなると思います。
その他の回答 (4)
- hue2011
- ベストアンサー率38% (2801/7250)
入門書みたいにMySQLだのPostgreSQLだので考えようとしないほうがいい。 理由は簡単で、リレーショナルDBには致命的な欠陥があるからです。 それは常にインデックスをメンテナンスしていなければいけないという性質です。そのためにメインキーを設定する必要があり、インデックスをクリエイトするたびに全体の反応は遅くなります。 これはビッグデータにすべきなんです。 ビッグデータのDBはご存知のようにBigTable系のオープンソフトです。 HBaseなんていうのがありますね。しかもこいつらは実物をクラウド空間内におしこめてAmazon EC2に置いておくというようなことができます。これによって何テラバイトになっても問題なくしかもサクサク動きます。 言語は好き好きです。HBase自体はJavaでつくられていますからJavaで作りたいという話はありますが、所詮サーバーですから触れればなんでも大丈夫です。PythonだとかPHPで大丈夫でしょうね。PerlやRubyもときどき手伝ってもらいます。 そもそもビッグデータにするんですからAIの活躍場所があるわけで、自分のアイちゃんを作ればいいでしょう。だったらPythonでしょうね。 こういうツールを使ったら、完全にできるまで動かせないなんていうことはなくなります。大体できたかなというところからテスト稼働していけばいいのです。何かがあってもいままで作ったものをちゃぶ台ごとひっくり返す必要はなく、いままで作ったものは全部役に立ちます。半分できた、中途半場に仕上がったという状態でなんとか役に立ちます。それぐらい現実的な話はありません。 プログラムはそんな感じでなんとかなりますが、OKWaveみたいな事業としてやるのであれば、それなりのビジネス準備が必要で、それは簡単にはいきません。命知らずを社長に据えて、運営ポリシーを明確に設定し、提供できるサービスとその対価について明瞭に計算バランスをしなければいけません。食べていけるようにしなければそこそこ必要な社員の給料も払えませんから。
お礼
ありがとうございます。 Pythonで考えていきたいのですが、 データベースを操作するにはルディのほうがやりやすいのかなとも思っています言語の選定にまだ調べないといけないことはありそうです。
- agehage
- ベストアンサー率22% (2752/12072)
LAMP環境でできますよ それが一番作成も運用も楽でしょう 他の方法でもできますがこのような質問をされる方にはとりあえずLAMPから入ればいいと思います
- amanojaku1
- ベストアンサー率54% (265/488)
>コンパイラーがあるJavaが選ばれることが多かったようです。 >でも、Oracle社が支配するJavaは、いままで無償で使えていたのですが、(Oracle社の商売不振の影響?で)有償化が発表されました。 >もしかしたら、Javaの代わりにC#を選ぶ方が増えるかもしれません・・・。 C#は文法上はC++ライクな言語らしいですが、C#にはガベージ・コレクションがある(正確には.Net Frameworkに装備されているらしい)ので、内部的にはJavaライクな言語と言われています(C#は結構 人気があるようです)。 (上記のJavaコンパイラとは別に)JavaはJava 1.3からHotSpotを動的にコンパイルできるJIT(Just-In-Time)コンパイラが標準装備されているらしいです。 なので現状のJavaはJavaコンパイラと比べて圧倒的に遅いと言う訳ではないようです(Oracleとは別にOpenJDKと言うのもあるようです)。 なので「C#、Java」の どちらか好きなほうを選んで良いかと。 HotSpot https://ja.wikipedia.org/wiki/HotSpot OpenJDK https://ja.wikipedia.org/wiki/OpenJDK
- AsarKingChang
- ベストアンサー率46% (3467/7474)
あなたのスキルによります。 どんなに優れたシステムがあっても、 作るのに適しているかは、別問題です。 とりあえず、 DBは、MySQLやOrableなどいろいろありますし。 開発言語?ってのが、やや不明ですが、 サーバーサイドはPHPなどが、主流で、 フロントサイドはHTML5、CSS、JQUERYなどでしょう。 ただ、どの方法で作るのが早いか?は、 先の話とは、別問題で、どんなに優れていても、 あなたが使いやすいかは、別問題なので、 CMSなどを使う方が、早いか?だけを 目的とするなら、そうするべきかと思います。
お礼
ありがとうございます。 Awsを知らなかったです。運用するのにどのくらい習得に時間がかかるか気になります。これを使うことで進めていきたいと思います。