webForumDet fria alternativet

Timeout i JavaMail

Java

4 svar · 323 visningar · startad av andreascarlsson

Medlem sedan feb. 2003202 inlägg
Frågan#1

Är det någon som vet vad man bör sätta för timeout, när man skapar en Pop3-anslutning i JavaMail??

Jag skapar en anslutning på följande sätt i min JavaMail-klass:

properties = new Properties();
properties.put("mail.pop3.timeout", "3000");
properties.put("mail.pop3.connectiontimeout", "3000");

session = Session.getInstance(properties, null);
store = session.getStore("pop3");
store.connect(host, login, password);

inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);

Men vad skall jag ange för värden i:
properties.put("mail.pop3.timeout", "3000");
properties.put("mail.pop3.connectiontimeout", "3000");

Jag har satt dessa värden till 3000 millisekunder idag, men jag är inte riktigt säker på om det är det optimala?

Vad är det förresten som skiljer mail.pop3.connectiontimeout och mail.pop3.timeout från varandra? Bör dessa värden vara olika?

Hoppas att någon har en susning? :q

Medlem sedan sep. 2001961 inlägg
#2

Default pop3 timeout är enligt spec 60000 millisekunder (60 sekunder).

EDIT: Enligt pop3-specen för servrar alltså. Enligt javadoc för mail.pop3.timeout så är default oändligt.

Skillnaden mellan mail.pop3.connectiontimeout och mail.pop3.timeout är att den första är hur länge man ska försöka få en socket till pop3-servern och den andra är hur länge man skall vänta på att ett skickat pop3-kommando skall returnera innan man stänger eller slänger det kommandot och visar något roligt felmeddelande.

EDIT2: http://connector.sourceforge.net/doc-files/Properties.html

/Lime

Medlem sedan feb. 2003202 inlägg
#3

Ok!

Då antar jag att mina värden är ganska rimliga då...

Tack för upplysningen!!! :)

Medlem sedan sep. 2001961 inlägg
#4

Nope. 3 sekunder för uppkoppling kanske, men inte för timeout för pop. Jag skulle säga att upp till 60 sekunder ska man nog kunna vänta på pop-timeout.

/Lime

Medlem sedan feb. 2003202 inlägg
#5

Ok! Jag antar att det är för att tiden det tar att plocka hem mail från Pop3-servern kan variera, beroende på antal mail, storlek, osv??

Men om det blir något fel då?? Om användaren t.ex avbryter (trycker på back-knappen), eller att användaren klickar på "Hämta mail" igen?? Då har jag ju låst uppkopplingen i 60-sek, eller??

253 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)