2011-04-22 45 views
1

我有一個應用程序在各個客戶端服務器上監聽端口上的腳本信息。我需要決定我應該分配給應用程序綁定的端口。我可以看看this list並知道要分配哪些端口而不是,但我對開發人員決定如何將端口分配給其應用程序感到困惑。它們是簡單的隨機數,還是有指南針對不同類型的應用程序使用特定的端口範圍?爲您的應用程序選擇端口的指南

回答

4

它基本上是隨機的。從IANA列表中的一個未分配/專用範圍中選擇一個端口,並希望獲得最佳效果。

您可能想詢問服務器和網絡管理員是否有他們希望您使用的端口,因爲他們可能需要配置防火牆/路由器等。 (他們可能甚至不知道正在使用哪些端口,並能夠給你一個可用的端口,一個明確的答案,但是這將是非典型的。)

如果您的應用程序無法打開端口的收聽,然後你」我想確保有人會看到錯誤信息。這可能意味着其他人正在使用該端口,所以您需要解決衝突。同樣,如果客戶端連接到該端口的某個東西並獲得「怪異」輸出,請確保以合適的方式報告錯誤。

而且不要將此端口號硬編碼到任何應用程序中。通過命令行選項,配置文件,環境變量等進行配置。如果難以更改,那麼您肯定需要對其進行更改。

0

你的主要目標是獲得一個不常用的,除此之外選擇你喜歡的東西。

我有時會變得富有創意,並找到一種方法來計算對應用程序有意義但含糊不清的引用。通常我會將應用程序名稱中的字符轉換爲ASCII值,並將它們相加,並根據可能的值乘以另一個數字來將它取到1024-65000範圍內。

+0

吻我說。閉上你的眼睛,選擇你想象的第一個數字;) – jgauffin 2011-04-22 13:02:36

+0

@jguaffin:7?不,那不行! – HyderA 2011-04-22 13:04:09