I'm using JeroMQ. I've updated the code to a much tidier one:

private byte[] getByte(final String table, final String name,
                        final int doc_off, final int doc_len, final int 
comp_off,
                        final int comp_len, final char compressionType) throws 
Exception {
                File file = new File(cacheRoot, table.substring(0, 3) + "/DOC/" 
+ name); //$NON-NLS-1$
                // Context ctx = ZMQ.context(1);
                Socket req = null;
                byte[] data = null;
                try {
                        req = ctx.socket(ZMQ.REQ);
                        req.connect(ENDPOINT);

                        // TODO Crear POJO en vez de Map
                        Map<String, String> params = new HashMap<String, 
String>();
                        params.put("path", file.getAbsolutePath());
                        params.put("dOff", String.valueOf(doc_off));
                        params.put("dLen", String.valueOf(doc_len));
                        params.put("cOff", String.valueOf(comp_off));
                        params.put("clen", String.valueOf(comp_len));
                        params.put("cType", String.valueOf(compressionType));

                        ByteArrayOutputStream baos = null;
                        ObjectOutputStream oos = null;
                        try {
                                baos = new ByteArrayOutputStream();
                                oos = new ObjectOutputStream(baos);
                                oos.writeObject(params);

                        } finally {
                                params.clear();
                                if (oos != null) {
                                        oos.close();
                                }
                                if (baos != null) {
                                        baos.close();
                                }
                        }

                        LOG.info("Sending Request");
                        req.send(baos.toByteArray(), NO_FLAGS);
                        LOG.info("Request sent");
                        data = req.recv();
                        LOG.info("Response received");
                } finally {
                        if (req != null) {
                                req.disconnect(ENDPOINT);
                                req.close();
                        }
                }
                // ctx.term();
                return data;
        }


But same problem arises :(
Gonzalo Vásquez Sáez
Gerente Investigación y Desarrollo (R&D)
Altiuz Soluciones Tecnológicas de Negocios Ltda.
Av. Nueva Tajamar 555 Of. 802, Las Condes - CP 7550099
+56 2 335 2461
gvasq...@altiuz.cl
http://www.altiuz.cl
http://www.altiuzreports.com
  


El 10-04-2013, a las 17:11, Eric Hill <e...@ijack.net> escribió:

> Sorry I missed the code in the first email.  Are you using zmq with the jni 
> binding, or jzmq?
> 
> Your code looks fine to me.  Can you strip that section of code out into a 
> separate jar for testing outside of WAS?
> 
> 
> On Wed, Apr 10, 2013 at 2:37 PM, Gonzalo Vasquez <gvasq...@altiuz.cl> wrote:
> Dear Eric,
> 
> 1.- Process 2472 actually is IBM WAS, where my client code runs. 
> 2.- I attached the code on the first email, nevertheless here is the client 
> side:
> 
> private byte[] getByte(final String table, final String name,
>                       final int doc_off, final int doc_len, final int 
> comp_off,
>                       final int comp_len, final char compressionType) throws 
> Exception {
>               File file = new File(cacheRoot, table.substring(0, 3) + "/DOC/" 
> + name); //$NON-NLS-1$
>               // Context ctx = ZMQ.context(1);
>               Socket req = ctx.socket(ZMQ.REQ);
>               req.connect(ENDPOINT);
> 
>               // TODO Crear POJO en vez de Map
>               Map<String, String> params = new HashMap<String, String>();
>               params.put("path", file.getAbsolutePath());
>               params.put("dOff", String.valueOf(doc_off));
>               params.put("dLen", String.valueOf(doc_len));
>               params.put("cOff", String.valueOf(comp_off));
>               params.put("clen", String.valueOf(comp_len));
>               params.put("cType", String.valueOf(compressionType));
> 
>               ByteArrayOutputStream baos = new ByteArrayOutputStream();
>               ObjectOutputStream oos = new ObjectOutputStream(baos);
>               oos.writeObject(params);
>               oos.close();
>               params.clear();
>               baos.close();
> 
>               LOG.info("Sending Request");
>               req.send(baos.toByteArray(), NO_FLAGS);
>               LOG.info("Request sent");
>               byte[] data = req.recv();
>               LOG.info("Response received");
>               req.close();
>               // ctx.term();
>               return data;
>       }
> 
> 
> I'm now moving the close invocation into a finally block, just in case 
> something goes wrong in between.
> 
> 3.- Yes, I'm creating a new socket from the context on each request, but 
> closing (using close() method) it upon completion, do I have to use the 
> disconnect() method too?
> Gonzalo Vásquez Sáez
> Gerente Investigación y Desarrollo (R&D)
> Altiuz Soluciones Tecnológicas de Negocios Ltda.
> Av. Nueva Tajamar 555 Of. 802, Las Condes - CP 7550099
> +56 2 335 2461
> gvasq...@altiuz.cl
> http://www.altiuz.cl
> http://www.altiuzreports.com
>   
> 
> 
> El 10-04-2013, a las 16:14, Eric Hill <e...@ijack.net> escribió:
> 
>> Process 2472 at the time of this running looks like it has a large number of 
>> open sockets.  Since I don't have your code, I can only guess that you're 
>> connecting new sockets for every request?  I've got a fairly large system 
>> going that has at most a few dozen sockets open at any given time.  The 
>> system is most likely being slow because it's running out of IP ports.  
>> Realize that there's only 65000 local ports for making outgoing 
>> connections...
>> 
>> Eric
>> 
>> 
>> 
>> On Wed, Apr 10, 2013 at 1:30 PM, Gonzalo Vasquez <gvasq...@altiuz.cl> wrote:
>> Please see attached file for "netstat -ano" output
>> Gonzalo Vásquez Sáez
>> Gerente Investigación y Desarrollo (R&D)
>> Altiuz Soluciones Tecnológicas de Negocios Ltda.
>> Av. Nueva Tajamar 555 Of. 802, Las Condes - CP 7550099
>> +56 2 335 2461
>> gvasq...@altiuz.cl
>> http://www.altiuz.cl
>> http://www.altiuzreports.com
>>   
>> 
>> 
>> El 10-04-2013, a las 15:03, Eric Hill <e...@ijack.net> escribió:
>> 
>>> "netstat -ano" would be an interesting metric to look at.
>>> 
>>> 
>>> On Wed, Apr 10, 2013 at 1:02 PM, Gonzalo Vasquez <gvasq...@altiuz.cl> wrote:
>>> No Antivirus is installed on the server. I can think of a socket exhausted 
>>> related issue (kinda ulimit in unix/linux), as I even get disconnected from 
>>> the Remote Desktop in this scenario, but I'm able to relogin immediately.
>>> 
>>> Gonzalo Vásquez Sáez
>>> Gerente Investigación y Desarrollo (R&D)
>>> Altiuz Soluciones Tecnológicas de Negocios Ltda.
>>> Av. Nueva Tajamar 555 Of. 802, Las Condes - CP 7550099
>>> +56 2 335 2461
>>> gvasq...@altiuz.cl
>>> http://www.altiuz.cl
>>> http://www.altiuzreports.com
>>>   
>>> 
>>> 
>>> El 10-04-2013, a las 14:50, Eric Hill <e...@ijack.net> escribió:
>>> 
>>>> 100% unresponsive and extremely slow are mutually exclusive.  I've seen 
>>>> problems with antivirus programs attempting to scan inbound and outbound 
>>>> network connections for possible threats.  Are you running any form of 
>>>> antivirus on the server?
>>>> 
>>>> 
>>>> On Wed, Apr 10, 2013 at 12:14 PM, Gonzalo Vasquez <gvasq...@altiuz.cl> 
>>>> wrote:
>>>> Nope, no cpu nor high memory usage detected :(
>>>> Gonzalo Vásquez Sáez
>>>> Gerente Investigación y Desarrollo (R&D)
>>>> Altiuz Soluciones Tecnológicas de Negocios Ltda.
>>>> Av. Nueva Tajamar 555 Of. 802, Las Condes - CP 7550099
>>>> +56 2 335 2461
>>>> gvasq...@altiuz.cl
>>>> http://www.altiuz.cl
>>>> http://www.altiuzreports.com
>>>>   
>>>> 
>>>> 
>>>> El 10-04-2013, a las 13:36, Wolfgang Richter <w...@cs.cmu.edu> escribió:
>>>> 
>>>>> So you've noticed 100% CPU usage on this server or high memory usage when 
>>>>> it's running (thus, the unresponsiveness?)?
>>>>> 
>>>>> --
>>>>> Wolf
>>>>> 
>>>>> 
>>>>> On Wed, Apr 10, 2013 at 11:38 AM, Gonzalo Vasquez <gvasq...@altiuz.cl> 
>>>>> wrote:
>>>>> Wolf,
>>>>> 
>>>>> Yes, almost 100% unresponsive, even closing windows is extremely slow. 
>>>>> 
>>>>> The server component is terminated by a single CTRL-C, i.e. it's 
>>>>> interrupted....as the main is invoked in a black cmd window.
>>>>> 
>>>>> I've also realized that I also had to the terminate the client side to 
>>>>> recover 100% responsiveness, this part of the code is running as a webapp 
>>>>> in IBM WAS Server
>>>>> 
>>>>> It's virutalized in an ESXi server.-
>>>>> 
>>>>> Thanks.
>>>>> 
>>>>> Gonzalo Vásquez Sáez
>>>>> Gerente Investigación y Desarrollo (R&D)
>>>>> Altiuz Soluciones Tecnológicas de Negocios Ltda.
>>>>> Av. Nueva Tajamar 555 Of. 802, Las Condes - CP 7550099
>>>>> +56 2 335 2461
>>>>> gvasq...@altiuz.cl
>>>>> http://www.altiuz.cl
>>>>> http://www.altiuzreports.com
>>>>>   
>>>>> 
>>>>> 
>>>>> El 10-04-2013, a las 12:34, Wolfgang Richter <w...@cs.cmu.edu> escribió:
>>>>> 
>>>>>> What do you mean by:
>>>>>> 
>>>>>> the server get's really "stuck" until I terminate the server component.
>>>>>> 
>>>>>> Do you mean your Windows Server becomes almost unresponsive? 
>>>>>> 
>>>>>> Other processes can't work properly?
>>>>>> 
>>>>>> How do you terminate the server component?
>>>>>> 
>>>>>> Also, is this in a virtualized/cloud environment, or bare metal Windows 
>>>>>> Server?
>>>>>> 
>>>>>> --
>>>>>> Wolf 
>>>>>> _______________________________________________
>>>>>> zeromq-dev mailing list
>>>>>> zeromq-dev@lists.zeromq.org
>>>>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> zeromq-dev mailing list
>>>>> zeromq-dev@lists.zeromq.org
>>>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> zeromq-dev mailing list
>>>>> zeromq-dev@lists.zeromq.org
>>>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>>> 
>>>> 
>>>> _______________________________________________
>>>> zeromq-dev mailing list
>>>> zeromq-dev@lists.zeromq.org
>>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>>> 
>>>> 
>>>> _______________________________________________
>>>> zeromq-dev mailing list
>>>> zeromq-dev@lists.zeromq.org
>>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>> 
>>> 
>>> _______________________________________________
>>> zeromq-dev mailing list
>>> zeromq-dev@lists.zeromq.org
>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>> 
>>> 
>>> _______________________________________________
>>> zeromq-dev mailing list
>>> zeromq-dev@lists.zeromq.org
>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>> 
>> 
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev@lists.zeromq.org
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>> 
>> 
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev@lists.zeromq.org
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
> 
> 
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev@lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
> 
> 
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev@lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev

_______________________________________________
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to