diff --git a/server/service/mongo/session/session.go b/server/service/mongo/session/session.go
index 4d1378b..4f85031 100644
--- a/server/service/mongo/session/session.go
+++ b/server/service/mongo/session/session.go
@@ -200,10 +200,7 @@
 
 //EnsureDB build mongo db schema
 func EnsureDB() {
-	session, err := mgo.Dial(config.GetDB().URI)
-	if err != nil {
-		openlog.Fatal("can not dial db:" + err.Error())
-	}
+	session := OpenSession()
 	defer session.Close()
 	session.SetMode(mgo.Monotonic, true)
 
@@ -218,6 +215,26 @@
 	ensureKVLongPolling(session)
 }
 
+func OpenSession() *mgo.Session {
+	var timeout time.Duration
+	var err error
+	if config.GetDB().Timeout != "" {
+		timeout, err = time.ParseDuration(config.GetDB().Timeout)
+		if err != nil {
+			openlog.Fatal("invalid timeout :" + err.Error())
+		}
+	}
+	session, err := mgo.DialWithTimeout(config.GetDB().URI, timeout)
+	if err != nil {
+		openlog.Warn("can not dial db, retry once:" + err.Error())
+		session, err = mgo.DialWithTimeout(config.GetDB().URI, timeout)
+		if err != nil {
+			openlog.Fatal("can not dial db:" + err.Error())
+		}
+	}
+	return session
+}
+
 func ensureKVLongPolling(session *mgo.Session) {
 	c := session.DB(DBName).C(CollectionPollingDetail)
 	err := c.Create(&mgo.CollectionInfo{Validator: bson.M{
