18

ここでは、URL 短縮サービスやインターネット上の他の場所に関するスタックオーバーフローに関する多くの質問があります。

URL 短縮サービスをコーディングするには?

URL 短縮サービスは URL キーをどのように計算しますか? それらはどのように機能しますか?

http://www.codinghorror.com/blog/2007/08/url-shortening-hashes-in-practice.html

しかし、私が理解していないことが1つあります。たとえば、 http: //goo.glは現在 4 文字を使用しています。ただし、短い URL には有効期限がないと主張しています。コーディング ホラーの記事で述べたように、URL を再利用できない場合、唯一可能な解決策は、ある時点で文字を追加することです。

わかりました、これまでのところとても良いです。4 文字で、約 1,500 万の一意のアドレスを意味します。Google マップのようなものについては、それほど多くはないと思います。リサイクルできない場合、利用可能な住所がすぐになくなってしまうと思います。

今、私が得られない部分について。アドレスを配布しているうちに、未使用のアドレスが不足し始めます。新しく生成されたアドレスがまだ発行されていないかどうかを確認する必要があります。これが発生し、アドレスがすでに使用されている可能性が高くなります。もちろん、簡単な解決策は、無料の URL が見つかるまで、または 150 万の代替案がすべて生成されるまで、新しい URL を何度も生成することです。ただし、これは非常に時間がかかりすぎるため、彼らが実際に行う方法ではありません。それで、彼らはこれをどのように管理しますか?

また、おそらく複数の訪問者が同時に短い URL を求めているため、同期も行われている必要があります。しかし、5 番目の文字を追加する必要がある場合、状況をどのように管理する必要がありますか?

最後に、http://goo.gl からの URL がどのように機能するかを調査する際に、Googleマップの地図の短縮 URL を何度かリクエストしました。それらのどれも使用されることはありません。ただし、一度発行された URL は期限切れにならないというポリシーを Google が厳格に適用する場合、これは、システム内に休止状態の URL が非常に多く存在することを意味します。繰り返しますが、Google (およびその他のサービス) もこの問題の解決策を考え出したと思います。作成後 48 時間または最初の 1 週間で 10 回未満アクセスされていない URL をリサイクルするクリーンアップ サービスを想像できます。誰かがこの問題にも光を当ててくれることを願っています。

要するに、URL 短縮サービスの一般的な原則はわかりましたが、これらの URL が期限切れにならない場合にいくつかの問題が発生します。上記の問題を解決する方法を知っている人はいますか?他に問題はありますか?


編集

わかりましたので、このブログ投稿は物事にいくつかの光を当てています。これらのサービスは、ランダムに何も生成しません。これらは、基礎となるデータベースの自動インクリメント機能に依存し、結果の ID に単純な変換を適用します。これにより、ID が既に存在する (存在しない) かどうかを確認する必要がなくなり、データベースが同期を処理します。それでも、私の 3 つの質問のうちの 1 つが未回答のままです。これらのサービスは、作成されたリンクが実際に使用されているかどうかをどのように「認識」しますか?

4

1 に答える 1

34

URL 短縮サービスがエントリを削除しない理由

私は TinyURL (10 年前) を書いて、必要のないエントリを返しました。彼らの返事を見て、私がいかにばかげているかを思い知らされまし。そして数字は自分自身を話します:

A - 26 個の小文字 + 26 個の大文字 + 10 桁 (合理的なサイトの選択) で、1 文字を使用すると 62 の位置 (つまり 62 の短縮 URL) が得られ、追加の文字ごとに位置番号が 62倍されます。

  • 0 文字 = 1 URL
  • 1 文字 = 62 URL
  • 2 文字 = 3,844 (村の人間ごとに 1 つの URL)
  • 3 文字 = 238,328 (同上、都市内)
  • 4 文字 = 14,776,336 (ロサンゼルス地域)
  • 5 文字 = 916,132,832 (アメリカでは、N+Central+S)
  • 6 chars ~ 56,800,235,580 (世界の人間ごとに 8 つの URL)
  • 7 文字 ~ 3,521,614,606,000 (人間ごとに 503 文字、世界中の Web ページごとに 4 文字)
  • 8 文字 ~ 218,340,105,600,000 (1 人あたり 31,191 個の URL)
  • 9 文字 ~ 13,537,708,655,000,000 (人間ごとに ~200 万の URL)
  • 10 文字 ~ 839,299,365,900,000,000 (人間ごとに ~1200 億の URL)
  • 11文字~52,036,560,680,000,000,000

B - 実際、ニーズと用途は予想よりも低くなっています。短い URL を作成している人はほとんどいません。ほとんどの場合、元の URL で十分です。その結果、最も人気のある短縮機能は、何年も経った今でも、わずか 4 文字または 5 文字で今日のニーズをカバーしており、必要に応じて別の文字を追加すると、コストはほぼゼロになります。どうやら goo.gl と goo.gl/maps はそれぞれ 5 文字を使用しており、YouTube は 11 文字を使用しています (上記の 62 文字にダッシュとその他の文字を使用)。

C - URL のホスティング (保存 + 運用) のコストは、たとえば、1 テラバイトで年間 1000 ドルで、各 TB には 50 億の URL を含めることができるため、1 つの URL のホスティング費用は年間 0.2 マイクロドルです。ただし、Shortener の利益も非常に薄く、そのためビジネスはそれほど強力ではありません。ユーザーにとって、URL の利点を評価するのは困難ですが、リンクを逃すと、ホスティングよりもはるかに多くの費用がかかります。

D - 次の年に機能しなくなるリスクがある場合、ユーザーが短い URL を作成しても意味がありません。したがって、持続性は Shortener の大きな魅力であり、深刻な Shortener は、強制されない限り、おそらくそれらのサービスを停止することはありません。廃業; それでも、これはすでに起こっており、いずれにせよ、短い URL には利点だけでなく欠点もたくさんあります。ウィキペディアの「URL 短縮」で説明されています(ユーザー、ターゲット サイト、または Shortener に対するあらゆる種類のハッキングのリスク。たとえば、ボットがギガ数の URL を要求することで Shortener を攻撃できますが、この脅威はほとんどの Shortener によって確実に回避されます)。

ベルサイユ、2013 年 3 月 12 日火曜日 20:48:00 +0100、21:01:25 編集

于 2013-03-12T19:48:00.410 に答える