「楽天」では、トップページ最下部にあるSUNと伊藤忠テクノサイエンスへのリンクでわかるように、Sparc Solarisで、データーベースには、Oracleを用いているようですが、開発言語としては、何を使っているのでしょうか???
どなたかわかりましたら教えて下さい。
まだ、PHPが流行っていない頃の創業だと思うので、やはり、PerlとDBIでしょうか?
また、プログラムの拡張子が見えず、ディレクトリ/にアクセスするとページが表示されるようですが、これはどのような仕組みでしょうか?単に、index.cgiがデフォルトのページになっていてそれを表示させないだけでしょうか?
メニュー画像部分には、GDを使って動的にテキストを含む画像を作成しているようです。
また、テストドライブというのを試してみましたが、この一番簡単な店舗作成のほかに、二つほど、店舗作成の方法があるようですが、これは、どういう方法でしょうか?
特に、綺麗に出来たページなどは、バスケットへのリンクを含んだHTMLと画像を直接アップするのでしょうか?
No.1ベストアンサー
- 回答日時:
>開発言語としては
個人的に興味があったので適当につついてみましたが、各サーバの構成もまちまちでなんか割と適当っぽいです。
(phpほげほげとか、java~~とか、.cgiってのもあったので、perlもかな?)
>ディレクトリ/にアクセスするとページが表示されるようですが
localtionで飛ばしてるだけっぽいですよ。
私が漁った部分に関しては、直接/でアクセスしてる個所は見つかりませんでした。
>index.cgiがデフォルトのページになっていて
DirectoryIndexが一般的ですが、mod_aliasや、mod_rewriteでも可能です。
(mod_rewriteなら、クライアントから実際のアクセス先を推測するのは困難です)
これ以外の部分は実際に楽天を使ってないので不明です。
参考URL:http://itpro.nikkeibp.co.jp/free/NC/NEWS/2003090 …
この回答への補足
今の楽天は、ブックスやらいろいろなことをやっていますが、とりあえず最も関心のある「楽天のショッピングモール本体部分」に話を限定しますと、「創立直後の比較的に原始的なショッピングバスケット」を今でも使っていますが、これを如何にして大規模なアクセスに対応させていったかなどの過程などに関心があります。
あるいは、別の表現では、「皆そうだと思いますが、我々のような小僧っ子プログラマーが、楽天ほどではなくとも、多少のアクセス増加に備えて準備することがあるのかどうか?」ということなのでが、
とりあえず、次のような分業が見て取れる…ような気がします。
まず、ロードバランサというのが次のページにあり、
http://www.atmarkit.co.jp/fnetwork/rensai/lb01/l …
このあたりを「伊藤忠テクノサイエンス」がやったのだと思います。
つまり、www.rakuten.co.jpとesearch.rakuten.co.jpが、
負荷分散のためのロードバランサの後ろに何台かあって、
前者の「www」が「ディレクトリ構造の店舗リストと、ショッピングバスケット機能、
そして、店舗CGIないしHTMLと画像の収納」、
後者の「esearch」が「店舗と商品の検索機能」を提供しているようです。
そして、この他に、データーベース専用のサーバーが、台数はわかりませんがあるのだと思います。
ハードディスク的には、これも想像なのですが、仮に1社平均50MBとして、2万社収容可能を想定して、
50MB×20,000社=1,000,000MB(=80GBのハードディスクを12.5個収容したサーバーが1セット)
で、これがロードバランサの背後に数セットあると…。
そして、楽天は、店舗数の伸張とともに、この1台あたりのハードディスク容量を増加し、
また、アクセス数の増加に伴って、ロードバランサ背後のセット数を増やして行ったと…。
もし、そうなら、これらは、単純に、少ないアクセスなら1台で間に合わす「普通のサーバー」を複数用意すれば良いのですよね???
つまり、プログラマーとしては、普通のことをやっていれば良いということで!?
それとも、何か別の収容方法があるのでしょうか?
例えば、ある店舗は、Aのサーバーに収容し、ある店舗は、Bのサーバーに収容し…となるとやはり、プログラマーがそういうことを考えてプログラムしなくてはなりません。
そういう「店舗ごとに違うサーバーに収容して、アクセスさせる方法」が何かあるのでしょうか?
このあたりについて、知っている方がいらっしゃいましたら、是非、ご教示願います。
何しろ、私はミッションクリティカルを要求されるような大規模開発はまったく縁がないので、こういったことは想像するよりないのです。
例えば、「楽天の商品検索機能は、リアルタイムではなく、定期的に更新されるので、実際にアクセスしてみると検索時に表示されたのと違う商品のステータス(在庫高とか、売り切れ。)」になることが多いですが、これは、どのような仕組みのどこに原因があるのでしょうか?
No.2
- 回答日時:
>プログラマーが、楽天ほどではなくとも、多少のアクセス増加に備えて準備することがあるのかどうか?
想定している規模や、言語によってかなり変わるので、一概には言えませんが。。。
特に規模に関しては、ある程度以上は全体の構成にあわせてプログラムを組むことになります。
>ミッションクリティカルを要求されるような大規模開発はまったく縁がない
「実際に組む必要があるので何かしらの情報がほしい」のか、「当面組む予定はないが、興味があるので知りたい」のかでだいぶ答えが変わります。
今ひとつ質問の意図が把握できません。
この回答への補足
「当面組む予定はないが、ITに関わる者は誰でも、実際に必要がいつ生じても良いように知っておくことが望ましいと言う観点から、大変に興味と関心があり、この質問をご覧になった皆様と、何かしらの有益な情報の交換がしたい」と言ったところでしょうか。
例えば、ハードディスクに関しては、ディスクアレイというものがあり、楽天の場合はSUNを使用していますので高くつくと思いますが、DELLなら、比較的ですが安価に大容量のものを入手することが出来ます。
↓DELLのディスクアレイ
http://www1.jp.dell.com/content/products/compare …
また、大体の検討を付けて楽天の運営システムを予想して描いてみることは、良い目標になります。
例えば、上記のディスクアレイが、ラックサイズ3Uとすれば、やはりラックサイズ3Uの本体と合わせて、6Uでワンセットのサーバーが構成できます。
仮に、WWW、esearchで、それぞれ、10セット、データーベースサーバーがバックアップ専用も含めて4台(やはり、仮に6Uと仮定。)すると、6U×10セット×2+6U×4=144Uとなり、1ラックに40Uが収納可能として、約4ラックです。
1ラックが70センチ×90センチですから、4ラックというと、畳2畳くらいのスペースになるでしょうか…。
また、これがどこに置かれているかも関心があります。
自社内でしょうか?
データーセンターでしょうか?
もし、データーセンターだったら、どこのデーターセンターを利用しているのでしょうか?
どこの会社がどこのデーターセンターを利用しているというのは、楽天でなくとも気にかかりますし、参考になります。例えば、ヤフーなどは…。
そして、サーバー本体、ラックスペース、回線にいくら費用がかかっているのでしょうか?
また、その回線の容量は???
また、同様の趣旨から、システム開発を誰が行ったかなどの楽天の伸張過程にも関心があります。
慶応藤沢キャンパス出身の副社長である本城氏が全部やったのか、あるいは、三木谷氏はどの程度、開発に関与したのか、だれがどの部分を作成したのか?
特に、現在も使われているショッピングバスケットの部分は、今では陳腐なものですが、楽天発展の原動力になったとされており、実際、そうだと思うのですが、この部分を誰が作成したのか?
伊藤忠テクノサイエンスは、どの部分にどの程度関与したのか?
また、営業過程についても、関心があります。
なぜ、楽天は、最初から、大手百貨店、その他大手の店の出店を数件も取り付けることが出来たのかなどは、七不思議のひとつです。何か人脈があったのでしょうか?三木谷氏が、そういうことに長けていたためでしょうか?
そういうわけで、知りたいこと、質問したいことは山ほどあります。そして、また、それらをIT関係に関わる多くの人、知りたいと思うはずだと思うので、是非、各方面の人から、情報を頂きたいのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS リンクバナーのHTMLタグ。画像を変えたり、設置位置を変えるとバナー貼付け側はどう見える? 2 2023/02/01 12:01
- その他(プログラミング・Web制作) 次に、楽天のアジャイル就活に参加して、1日で内定を獲得できる。私は大企業に就職できる? 2 2022/04/17 13:38
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- HTML・CSS ホームページをちょっと加工する程度の無料または古くて安く購入できる作成ソフトを教えてください 5 2022/12/16 12:17
- WordPress(ワードプレス) ワードプレスで、投稿一覧ページにタグを表示する方法 投稿につけたタグを、記事一覧ページにもカテゴリと 1 2023/05/10 21:41
- HTML・CSS トリミングで表示した画像をクリックで元どおりにしたい 3 2022/12/16 18:49
- Excel(エクセル) iphonからone driveに保存してあるExcelを閲覧すると表示の仕方がちがうデータ 2 2022/12/21 13:51
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- au(KDDI) 特定の画面を見るとスマホが固まります ご覧頂き有難うございます。 特定のページを見るとスマホが固まり 1 2023/08/21 19:29
- Excel(エクセル) Excel 在庫管理について 3 2023/02/09 10:00
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
どのプログラミング言語で作ら...
-
PHPでLinux用のCライブラリを呼...
-
Laravelなど、フレームワークを...
-
html、css、JavaScript、PHP…違...
-
C言語、C+、C++、C#の違い
-
Pythonって何を意識した言語な...
-
COBOLで文字タイプを数字...
-
Visual Studio Codeについて
-
プログラムに書かれる"%"記号の...
-
TO_CHARで小数点以下がある場合...
-
C++ ってなんて読む?
-
UNITY Float型の接尾辞fって
-
C言語とhtmlの違いを どな...
-
エクセルVBAでRS232Cへ
-
COBOLでのNOT = の AND条件
-
VBSとWSHは読み方が違うだけで...
-
どのソフトでHPを作っているか...
-
作業工程 SDとMD
-
HTMLてインタプリタの類になる?
-
MFCとC++/CLIとの比較
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Laravelなど、フレームワークを...
-
PHPでLinux用のCライブラリを呼...
-
どのプログラミング言語で作ら...
-
html、css、JavaScript、PHP…違...
-
「楽天」で開発に使用している...
-
phpをある程度習得するまでの期間
-
PHPのオススメ開発環境は?
-
どんなプログラミング言語を使...
-
PHPがあればCGIは使わない
-
PHPでWindowsアプリを作成する...
-
C言語にて jpg ⇔ bmp 相互変換
-
WEBアプリケーションを作成する...
-
サーバーサイド言語とは?
-
PHPを覚えた方がいいですか?
-
いまから勉強するなら、どんなw...
-
webアンケートを作成するための...
-
PHPを習おうと思っているのです...
-
PHPとJSPは同じような位置付け
-
BBSを作るにあたって
-
C言語、C+、C++、C#の違い
おすすめ情報