penguinforge / crossingguard

IAVM mapping tool to Red Hat products.
0 stars 0 forks source link

Slow Responses #1

Closed sferich888 closed 11 years ago

sferich888 commented 11 years ago

The performance seems slow. I wonder if using a bigger OpenShift gear would help?

sferich888 commented 11 years ago

As for the performance, its slow because of the following:

    @app.route("/IAVM/", methods=['POST'])
    @app.route("/IAVM/<iavm>")
    def IAVM_Report(iavm=None):
       ...
         base_uri = 'http://iase.disa.mil/stigs/downloads/xml/iavm-to-cve(u).xml'
         xml = urllib2.urlopen(base_uri)

With each request that you make to the server the application queries the DISA xml file (aka downloads the entire thing). I do this for several reasons:

  1. The GEAR on open shift limits me to 1GB of storage space.
  2. I'm not sure how often DISA updates this file.

I could improve performance by caching this file and simply parsing what I have on file or keep a parsed version in a fashion where I can simply query data but his too will eat into my 1GB of space.

At this point in time I'm not going to implement something like this for fear of burning up to much of my storage space.

CLOSED WONT FIX