Zdravim,

obecne Java kompresi umi, treba pomoci java.util.zip.GZIPOutputStream.

Programove komprimovat SSL spojeni by melo jit takhle:
OutputStream sslOutputStream = sslSocket.getOutputStream();
GZIPOutputStream gzipOutputStream = new GZIPOutputStream(sslOutputStream);


Nicmene ty asi chces zapnout kompresi uvnitr SSL spojeni nejak deklarativne. Kazdopadne i kdyz se ti na strane Java klienta podari kompresi zapnout, tak to same se musi udelat i na strane postgresql serveru. Na obou stranach musi byt pouzity stejny kompresni algoritmus, napr. gzip.

Pokud postgresql kompresi zapnout neumi, tak by slo mezi Java klienta a postgresql vlozit nejake vlastni 2 jednoduche proxy servery, co budou resit jen kompresi a SSL. V podstate to ale znamena napsat jednoducheho VPN klienta a server. Tak je pak otazka jestli neni lepsi pouzit rovnou to OpenVPN :-)

Petr

On 11.01.2011 12:24, Petr Michálek wrote:
Ahoj,

řeším problém přenosu velkého objemu dat přenášených přes SSL spojení
mezi Postgresql serverem a Java aplikací.
Experimentoval jsem s přenosem (ne SSL) v rámci OpenVPN. LZO komprese
snížila objem přenášených dat zhruba o 50%, ale nasazení OpenVPN není
řešení.

1. Umí postgresql komprimovat (JDBC) spojení?

2. Umí JAVA kompresi SSL kanálu? Pokud ano, jak ji nastavit?
(GNU Java pravděpodobně ano, ale já potřebuji použít Sun Javu)

Na odpověď nebo případné nápady se těší

Petr M.


Odpovedet emailem