ウェブサービスを作りたいと思った。
潜在的な市場は数億人規模だと思うので、ぜひ作り上げたい。
備忘録として書きなぐりをしておく。
<WebRTC>
ウェブ上でリアルタイムに交流できる技術
超新しい技術ではないようだが、昔からの技術というわけでもなさそう。
そのぶん、ググってもなかなか初心者向けの解説は見つからない。
というか、WebRTC自体単純な技術の集合ではある一方、習得難易度自体は決して低くないらしい。
<P2P>
通信技術の一つ
プロンプトの1種ということになるのか?よくわからん
winnyなどで用いられた技術のよう
サーバーを経由せずに端末同士で情報のやりとりができるらしい
もっともIPアドレスデータを直接送受信するなど、安全性をクリアするのは非常に難しそう
また同時接続数が増えると端末への負荷も高くなるということで、自分の作成したいサービスには合ってない
<SFU>
もうなんの略かも覚えてないが、P2Pとは違いサーバーを経由するらしい
手法としては従来型ということになるのだろうか
WebRTC技術を用いる場合、現在の主流はSFUらしい
サーバーへの負荷が高いとかなんとか見聞きしたが、そんなものは完成後に悩めばいいと思うのでSFUで頑張っていきたい
<MCU>
もう1つの通信方法
サーバーを経由するが処理が異なるらしい。
あんまり推されてなさそうだったのでSFUで進めて良さそう
ウェブサイトを作成することになるのでHTMLやCSSから入った。Javascriptも必要そう。とりあえずHTMLやCSSは何とかなりそう。解説サイトも充実している。
C言語は難しいから初心者向けじゃないらしいが、WebRTCの基礎となりそうなOSS(オープンソースソフトウェアの略らしい)に使われているため避けては通れなさそう。
もっとも、そもそもプログラミングはほぼゼロ知識であることを考えればCでも何でも変わらないかもしれない。
WebRTC技術を用いたwebサービスを作るうえで、ローカルサーバー上でのテストでは不便が多いような気がした。自分が知識不足なだけかもしれないが、複数の端末でテストしたり、友人に実験に参加してもらうことも考えるとレンタルサーバーが必要かなと思いとりあえず登録した。
chromeでマイクやカメラに繋ぐにはhttpをhttpsにする必要があるらしい。
SSL化すれば良いらしい。
多分これは簡単
<課題>
知識が全くのゼロスタートになるため、いまいちイメージがわかない。
用語を調べてもそれぞれの関係性がわからない。
Node.jsのjsはジャバスクリプトのことらしいが、Node.jsが一体何のために用いられるものかはわからない。
IT関連はどうしてもカタカナ英語の連続になるため、知識がないと全く話についていけない。
最初は、「パスを通す」とか言われても「はぁ?」としか思えなかったが、何となくわかったようなわかってないような状態になることはできた。
このような理解の程度を業界用語では、自嘲的に「完全に理解した」というらしい。
うーん、逐一調べていくしかないか。
<その他感想>
自分の描いたサービスがWebRTC技術を用いれば実現できる、と何となくイメージして始めてみたところ、参考になる類似サイトではやはりWebRTCが用いられていた(HP上で公言されていた)。
基本的な視点としては正しい方向を見れているようなので、できるだけ早く実現できるように頑張るしかない…
<お願い>
こんなおバカなワタクシの理解に誤り等がありましたら、大先生のみなさまからのご指摘でもって修正してやってください。