Your SAS programs, embedded in web apps and elsewhere

Compress / gzip html file returned by streaming stored process?

Reply
PROC Star
Posts: 1,324

Compress / gzip html file returned by streaming stored process?

Hi All,

Suppose I have a stored process invoked through stored process web app which returns streaming results.  In this case, the results are a very big HTML file from a distant server.  And it takes a long time to reach the user.

I have seen that some web servers are configured to compress .html files before they are sent to the user, to decrease transfer times.  (Understanding there is also a cost to taking the time to compress at the server and uncompress at the browser).

In the SAS BI setting with the stored process server, is it possible to configure the server so that html files will be compressed?  Or is this something I can turn on some other way at the stored process level (e.g. via stsprv_header) ?

(I realize another option would be to change to deliver package results.)

Thanks,

--Q.

Trusted Advisor
Posts: 1,301

Re: Compress / gzip html file returned by streaming stored process?

It is mid-tier dependent.  At the STP level, the easiest possible way to achieve this would be by setting Content-Encoding: gzip in the header, using stpsrv_header, as you mention.  If you mid-tier supports it, this should cause the delivery to be compressed.

PROC Star
Posts: 1,324

Re: Compress / gzip html file returned by streaming stored process?

Thanks,

I tried:

data a ;
  array me{10} ; 
  do i=1 to 1000 ; 
    do j=1 to dim(me) ;
      me{j}=ranuni(0) ; 
    end ; 
    output ; 
  end ;
  drop i j ; 
run ;

%let rc=%sysfunc(stpsrv_header(Content-Encoding,gzip));

%stpbegin()
proc print data=a;
run;
%stpend()

And didn't get any results returned at all.  And the stored process server logs didn't show any errors.

Guess that could mean it isn't enabled on the mid-tier.  Will have a chat with the admin.

Ask a Question
Discussion stats
  • 2 replies
  • 706 views
  • 4 likes
  • 2 in conversation