On Tue, Nov 24, 2015 at 9:15 PM, Juan Hernández <jhern...@redhat.com> wrote:
> On 11/24/2015 01:40 PM, John Hunter wrote: > > Hi, > > > > On Tue, Nov 24, 2015 at 5:18 PM, Oved Ourfali <oourf...@redhat.com > > <mailto:oourf...@redhat.com>> wrote: > > > > Hi > > > > I discussed it with Juan (cc-ed). > > > > There used to be a bug in the JDBC authenticion extension that > > artificially delayed RESTAPI responses by 5 seconds: > > > > brute force prevention login delay should not be applied to > successful > > login requests > > https://bugzilla.redhat.com/1255814 > > > > That matches the description of the issue, but in theory it has been > > fixed. I would suggest him to check that he is using the right > version > > of the extension. > > > > I did not use the extension ovirt-engine-extension-aaa-jdbc, and I don't > > think this bug matches my problem, because even there is only one line > > in the python script, it still cost like 3 seconds, I don't think this > is a > > reasonable time as when I import other package, it cost almost no time. > > > > Can you explain why this import line costs so much time? > > > > If you are using 3.6 then you are using ovirt-engine-extension-aaa-jdbc, > as it is enabled by default, but looks like it isn't related to your > problem. > > That line takes a long time to execute because it has to process two > large Python modules: the "params" module that contains a class per each > type used by the API (393 classes) and the "brokers" module that > contains a class per each resource used by the API (358 classes). That > makes a total of 751 classes. In my environment it takes 0.9 seconds, > approx. You may want to use the python profile in your environment and > share the results: > > $ cat > profile.py <<. > import cProfile > cProfile.run("from ovirtsdk.api import API") > . > > $ python profile.py > > I won't be surprised to see this taking those 3 seconds in a slower > environment. > > But even if this takes those 3 seconds it shouldn't be a big problem, > because you shouldn't be running that "from ... import ..." line > frequently. Your program should do this once only, when it starts. > > Assume that I have two functions to implement, one is to list all the vms belong to the user, and the other is to retrieve one vm's virt-viewer connection file, as far as I can see, I have to write two python scripts and import the ovirtsdk.api in both scripts, each script has to take the 3 seconds :( How can I run the "from ... import ..." just once ? > > > > In addition we also know that retrieving large lists of objects with > the > > SDK is slow: > > > > [RFE][performance] - generate large scale list running to slow. > > https://bugzilla.redhat.com/1221238 > > > > We don't have a solution for that yet. > > > > CC-ing Juan in case you have additional questions. > > > > > > On Mon, Nov 23, 2015 at 11:27 AM, John Hunter <zhjw...@gmail.com > > <mailto:zhjw...@gmail.com>> wrote: > > > > Hi guys, > > > > I am using the ovirt-engine-sdk-python to communicate with the > > ovirt-engine, > > I am ok to list the vms but the processing time is too long, > > like 4.5 seconds, > > and this line: > > from ovirtsdk.api import API > > take almost 3 seconds. > > > > This seems a little bit longer than I expected it to be, so I am > > asking is there > > a quicker way to communicate with the ovirt-engine? > > > > -- > Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta > 3ºD, 28016 Madrid, Spain > Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L. > -- Best regards Junwang Zhao Department of Computer Science &Technology Peking University Beijing, 100871, PRC
_______________________________________________ Devel mailing list Devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/devel