2014-07-20 47 views
0

我正在開發一個Java應用程序,它將分佈在很多人身上。不過,我不希望同時連接千個客戶端,因此我想限制我的Apache MYSQL服務器上的連接數量。我正在使用xampp,我想知道如何限制/更改一次連接的數量。如何限制MYSQL數據庫連接的數量?

+0

請注意,您**不應允許外部客戶端連接到您的MySQL數據庫。 [這種方式是災難。](http://forums.somethingawful.com/showthread.php?noseen=0&threadid=2803713&pagenumber=258#post398884189) – duskwuff

+0

@duskwuff用戶將無法修改我的數據庫。應用程序將自己更新像位置,IP地址,用戶桌面名稱等等的東西。用戶無法在我的mysql服務器上執行命令 – DaBaws

+0

好,好!只要確定,因爲你的問題不清楚你的架構是什麼。 – duskwuff

回答

1

你的問題真的很廣泛,所以我的答案也要寬泛。

您應該學習更多關於連接和客戶端的工作方式。

僅僅因爲您擁有數千個客戶端,並不意味着您需要數千個連接。這是因爲每個客戶端都不佔用一個連接。

會發生什麼情況,在某種程度上,會創建一個連接池,並且此連接池將在所有客戶端調用中共享。

xampp中的最後一個「p」表示PHP(或Perl),因此他們將負責控制連接池。所以,我的建議是尋找連接池PHPPerl

至於如何使用連接池與Java,請按照本教程中的例子:http://www.javaworld.com/article/2076221/jndi/dive-into-connection-pooling-with-j2ee.html

+0

客戶端需要輸入記錄並從MYSQL數據庫中讀取記錄。這顯然需要它被連接。我希望它被排隊,例如200連接,一旦他們輸入記錄,另一個客戶端進入隊列。但我不知道「連接池」的概念。我會閱讀關於這一點。但現在我只需要知道如何限制連接,因爲每當我連接幾個客戶端時,它就會輸出「達到的最大連接數」,所以我確信有一個配置文件。 – DaBaws

+0

您可以限制通過池的連接數量。如果池中只有X個連接,則最多X個連接將打開並使用。 –

+0

嗯...你能給我一些參考或鏈接來閱讀更多關於連接池以及如何在Java中實現它們嗎? – DaBaws