0

mysql に多数の一意のインデックス可能な URL を保存したいと考えています。それらはユーザーによって書かれ、非常に広く受け入れられるので、ほとんど何でもそこに行きます。

しかし、私はすでに答えられたSO の質問前の質問も好きではありません。実際には、そうするための「より良い」方法があるかもしれないと思いますが、これが意味することを完全には理解していないので、この質問をします.

この目的で tinyurl.com の API を使用する利点と欠点は何ですか? このリンクでは、これを行う方法に関する記事を見ることができます。それはまさにこのコードです(さらに短いかもしれませんが、私は関数でそれを好みます):

function createTinyUrl($strURL)
  {
  return file_get_contents("http://tinyurl.com/api-create.php?url=".$strURL);
  }

次に、リンクの一意性を確認するためにインexampleのみを比較する必要があります。tinyurl.com/exampleウィキペディアの記事から、次のことがわかります。

URL が既に要求されている場合、TinyURL は重複するエントリを作成するのではなく、既存のエイリアスを返します。

短所 (基本的には集中型システムを使用する場合と同じ):

  • Tinyurl サーバーは、一時的または永久にダウンする可能性があります。念のため、完全な URL は別のインデックス化されていないフィールドに保存されます。

  • 不可逆。あなたの URL から tinyurl を取得できますが、その逆はより困難です。ただし、最初の問題の解決策もこれを解決します。

  • 私の場合、URL はプライベートではありませんが、これにより誰かがこのソリューションを使用できなくなる可能性があります。

  • 遅れ。リクエストは少し遅くなるかもしれませんが、サーバーからサーバーへの通信であるため、これは気にならないでしょう。ただし、いくつかのベンチマークを行います。

この方法を使用して確認できるその他の欠点はありますか? これを使用する主な理由は、エントリを重複させずにインデックス可能にすることです。

4

1 に答える 1