我正在寫一個遊戲,在類似環境的僞互聯網中播放。我只是在做遊戲的「DNS」。基本上,一個將字符串(「URL」)鏈接到機器(數據庫中的另一個實體)的數據庫。數據庫表保存URL
很像現實生活中:
- 每個機可以有零個或多個網址
- 的每個網址都具有TLD。爲了簡單起見,只有TLD和沒有超過一個擴展名的TLD(呃,在那裏修正我的術語?)。所以.com和.net是有效的,但.co.uk和.org.uk不是。
- URL可以具有零個或多個亞結構域
- 每個子域可以連接到一個不同的機
- 每個子域可具有零和或多個子域,每個連接到不同的機器
我的第一反應是至做這樣的事情:
domain _
tld table;
tld_id,tld
domain_hostname table;
主機名_
ID,主機名,TLD,父母
其中,主機名是URL,TLD鏈接到域_
TLD,父爲空,如果它的根域名。如果它是一個子域,那麼父項是父項的主機名_
id,並且主機名是子域。但後來我意識到它正在分配一個冗餘的tld ...雖然我想這可能只是一個空值。
我想知道是否有更聰明的想法?
.co.uk和.org.uk不是tlds。 .uk是頂級域名。 – 2009-06-21 20:01:21