2012-11-07 112 views
2

我短信應用程序的工作爲一家公司,發送短信(SUBMIT_SM命令),並接收來自SMSC(SUBMIT_SM_RESP命令)的響應表明,如果它被傳遞到所有的時間顧客。我正在使用JSMPP API讓到服務器的連接打開

什麼是連接到SMSC服務器的最佳做法是什麼?我應該打開一個連接(一個會話)並在整個應用程序中使用它來發送SMS消息(這裏有任何內存泄漏)?或者每次我發送短信時(這裏有任何延誤),我應該連接/斷開SMSC服務器還是從SMSC服務器斷開連接?

需要注意的是,我們派出大約每小時1000-2000短信。另外我注意到JSMPP API只有在連接打開時纔會收到響應消息(SUBMIT_SM_RESP)。

回答

1

這取決於連接的實現。如果您的連接在長時間休息期間不會「死」而不是使用一個連接,因爲這樣可以節省您每次請求打開/關閉的時間。

如果您的應用程序是多線程(其中一個以上的線程可以發送消息)我建議你實現一個連接池機制(或使用可用的一個支持SMSC會話)。

+0

+1謝謝您的回答!事實上,我的應用程序是多線程的。使用多個會話而不是在所有線程中使用單個會話有什麼區別?另外,關於永遠打開的連接是否有任何內存泄漏問題? –

+0

打開一個會話時沒有泄漏問題(只要您在課程結束時關閉它)。它實際上是最好的,也是最簡單的方法。但由於多個線程將使用會話,因此您需要驗證此會話是否已同步(請檢查供應商文檔,因爲我無法保證此同步) – giorashc