Re: EZProxy's effect on speed

Andrew Anderson <[email protected]> Mon, 23 Dec 2019 05:58:48 -0500
Newsgroups gmane.education.ezproxy
Message-ID <CAOuKRWvJSR6V=Sgbh42phur-B99j0rEwea5yn-4oU+_Ch36dyw@mail.gmail.com>
--000000000000b22d2b059a5ceb2f
Content-Type: multipart/alternative; boundary="000000000000b22d29059a5ceb2e"

--000000000000b22d29059a5ceb2e
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset=utf-8

Hi Matthew,

As you suspect, there can be many factors that come into play in web
performance.

The single biggest thing that anyone can do to increase proxy performance
is: don't use the proxy.

I don't say that to be flippant.  What I mean is that I have seen vendors
regularly pull in 3rd party assets into their website to be served off
their own platforms.  Common javascript libraries like jQuery, Angular, etc
are hosted on several CDNs across the internet, and using CDN assets
benefits everyone in multiple ways: 1) CDN copies of libraries, fonts, etc
are more likely to already be locally cached by the patron's browser,
decreasing download times; 2) This also reduces the amount of data that is
run through the proxy servers, reducing latency and bandwidth usage; and 3)
CDNs by their nature are setup for maximum performance, so even non-proxied
visitors to the vendor's web sites will benefit as well.

Another issue is that too many vendors still insist on collecting every
single link used on their website to put into their proxy configurations.
I always at least sanity check what vendors claim needs to be proxied, and
most of the time, they don't know how their own websites work, so they
throw the kitchen sink at the problem.  That is how we wind up with
configurations that include crazy things like "accounts.google.com", "
api.google.com", "docs.google.com", and "fonts.google.com" in them.
Ironically enough, what is typically loaded directly are social media
trackers, Google analytics, and other assorted ad/tracking "services".

There are also network factors.  This can be something as simple as not
having a robust enough connection for your users to connect to your proxy
server.  This can take the form of too little bandwidth, or it could be
that your users and your proxy server are on different ISPs, and the
packets have to bounce halfway around the country to go 5 miles down the
road.  Again, this happens 4 times per request, and can be further
complicated if all 3 legs (user -> proxy -> vendor) incur a measurable
network penalty.  If each leg adds 100ms, that can easily be 600ms just in
establishing the TCP connections.

You are also going to take a hit on DNS lookups due to the way that rewrite
by host works.  How much time spent doing DNS lookups will depend on the
website that is being proxied, and your DNS provider, but average DNS
lookup speeds can range from <10ms to >60ms; it all adds up after a while,
especially on sites pulling content from a lot of different domains.

Back before most sites migrated to HTTPS, we had setup Squid servers as
upstream proxies, and saw up to 60% of static assets (images, css,
javascript, etc) that were able to be delivered from the local cache
instead of having to make the full second leg to the vendor's site.  I was
very happy with those results, as it not only meant faster responses for
our users, it also prevented us from having to purchase more bandwidth
since caching short-circuited a lot of the content so that it was not
traversing our proxy servers 4 times (in from patron, out to vendor, in
from vendor, out to patron).

Now that most sites are using HTTPS, however, this type of caching is
ineffective on the back-end, because attempting to run SSL connections from
a rewriting proxy to Squid results in the use of the HTTP CONNECT verb to
setup a tunnel through the proxy, which prevents Squid from caching
anything at all from the vendor's platform.  You could still configure a
caching proxy in front of the rewriting proxy to do SSL termination and
catch requests before they are rewritten.  It's a little bit more work, but
I suspect that it would be just as effective as our back-end Squid
configuration was.  Varnish is another piece of software I would evaluate
for that role, or even just plain apache/nginx configured to run as a
caching proxy could do it.  Our Muse Proxy servers have HTTP object caching
built-in, so fortunately I don't have to worry about that.

There are also software limitations.  I remember that before EZproxy
supported gzip natively, that just having Squid behind it handle the
back-end request with gzip headers inserted into the request made a
tremendous difference in performance for the remaining 40% of the
connections that did have to go all the way to the vendor platform.  I was
debating on putting software in front of EZproxy to enable gzip on the
front-end as well, but we did not go through with that idea.  One HTTP
capability that I do not recall hearing EZproxy support is HTTP Keepalive
connections.  If you have access to a test web server, the difference in
performance with and without Keepalives enabled can be dramatic, as the
client does not have to do the TCP 3-way handshake for every new HTTP
request; instead, the browser can re-use an existing connection, which
saves a lot of time when there are many assets to be loaded.  I do not see
any configuration settings for EZproxy regarding keepalive, so either it is
not supported, or it is not tunable.

I used to do a lot of systems-level performance tuning, so there may be
some tweaks that you could make to your proxy server that would help it a
little at the OS level.  I don't believe that I have seen any specific
proxy tuning recommendations from OCLC, but guides that talk about tuning
web servers and/or general proxy servers should have tips and tricks that
would also apply here.  Network buffers, socket backlogs, interrupt
coalescing, and network offloading/TOE are all things that become important
when servers get busy.

I wouldn't mind hearing more about your testing methods, because if you are
on the same network as the proxy, that would rule out a lot of possible
variables, and really narrow it down to the proxy's performance, either
EZproxy itself or the server OS/hardware it is running on.

As far as actionable things that you can look at in the proxy configuration:=


1) Unless it starts with "scholar", remove "google.com" everywhere you find
it with extreme prejudice.  I honestly don't know why OCLC  still permits
"DJ google.com" to be published.
2) If it is or looks like a CDN you should be able to remove it from your
stanza.  Very few CDNs are authenticated, as that negates a major benefit
of using them.
3) If it is or looks like a CDN, you may also need to add "NeverProxy" so
that the "J" directives don't sneak it back into the rewriting tables.
4) If it is or looks like a CDN, you may also need to add "AnonymousURL"
for AJAX pre-flight checks

CDN hosts may literally start with "cdn", or it may be from a commercial
provider like Cloudfront, Akamai, Imperva, Fastly, etc.


4) Take a hard look at any hostname that contains "images", "assets", or
"static" as well; try treating them like a CDN.
5) Look for inmates running the asylum when it comes to your stanzas. e.g.
https://help.oclc.org/Library_Management/EZproxy/Database_stanzas/TrueFlix

DJ ereader-static.scholastic.com
NeverProxy ereader-static.scholastic.com


Seriously?  Rewrite it, but NeverProxy it?

Andrew

On Thu, Dec 19, 2019 at 5:47 PM Matthew Goddard <[email protected]>
wrote:

> I have a question for the more technically-minded among us. (Thinking of
> Andrew Anderson, among others.)
>
>
>
> I=E2=80=99ve done some very basic preliminary research on how EZProxy affe=
cts the
> speed of a user=E2=80=99s experience across a number of different platform=
s. The
> results are interesting. For ProQuest and EBSCOhost, proxying increased th=
e
> time to complete a basic task by 31% and 37%, respectively, relative to
> doing the same tasks without the proxy. For ScienceDirect, there was no
> difference at all, even down to a tenth of a second. For SAGE, proxying wa=
s
> 7% slower. These numbers represent the mean duration of ten individual
> tests, and in all cases, EZproxy was the only variable.
>
>
>
> With such large variability across platforms, I=E2=80=99m wondering what s=
ort of
> factors have a bearing on the speed of proxying. What might Elsevier be
> doing to avoid any lag, or what are the aggregators doing to add it?
>
>
>
> I=E2=80=99m concerned about those numbers for ProQuest and EBSCO, which se=
em to
> represent a disservice to our off-campus users.
>
>
>
> Matthew
>
>
>
>
>
> *Matthew W. Goddard *
>
> Assistant Library Director for Resources
>
> (951) 343-4365
>
> [email protected]
>
> calbaptist.edu <http://www.calbaptist.edu/library>*/library*
>
> California Baptist University, 8432 Magnolia Ave, Riverside, CA  92504
>
>
>
>
>
> ------------------------------
>
> To unsubscribe from the EZPROXY-L list, click the following link:
> http://listserv.oclclists.org/scripts/wa.exe?SUBED1=3DEZPROXY-L&A=3D1
>


--=20

Andrew Anderson
President & CEO
[email protected]
t: +1 (727) 536-0214 x100
f: +1 (727) 530-3126
w: www.lirn.net
Library & Information Resources Network
25400 US Hwy 19 North, Ste. #220
Clearwater, FL 33763
LinkedIn
<http://www.linkedin.com/company/library-and-information-resources-network-i=
nc->
 | Facebook <http://www.facebook.com/LIRNnotes> | Twitter
<http://www.twitter.com/LIRNNotes> | YouTube
<http://www.youtube.com/user/LIRNnotes>


********************************************************************
If you wish to stop receiving messages from EZPROXY-L or otherwise amend you=
r preferences,
you can do so <a href=3D"https://www.oclc.org/forms/internet-subscription.en=
.html">here</a>.
Or email [email protected] including the relevant text below in the bod=
y of the email:
=E2=80=A2 To unsubscribe: "unsubscribe EZPROXY-L"
=E2=80=A2 To receive EZPROXY-L in digest form: "set EZPROXY-L digest"
=E2=80=A2 To set your options to no mail: "set EZPROXY-L nomail"
=E2=80=A2 To receive these messages in the future "set EZPROXY-L mail"
To contact the list owners directly please send your message to EZPROXY-L-re=
[email protected].
If you unsubscribe from EZPROXY-L, you will no longer be able to participate=
 in any of its features, including the public forum.
To unsubscribe from all OCLC marketing email communications
(including all OCLC listervs, OCLC Connect emails, OCLC event notifications,=
 product/service/cooperative updates and newsletters),
please email us at [email protected].
--000000000000b22d29059a5ceb2e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div di=
r=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"lt=
r"><div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"=
font-family:verdana,sans-serif">Hi Matthew,</div><div class=3D"gmail_defaul=
t" style=3D"font-family:verdana,sans-serif"><br></div><div class=3D"gmail_d=
efault" style=3D"font-family:verdana,sans-serif">As you suspect, there can =
be many factors that come into play in web performance.</div><div class=3D"=
gmail_default" style=3D"font-family:verdana,sans-serif"><br></div><div clas=
s=3D"gmail_default" style=3D"font-family:verdana,sans-serif">The single big=
gest thing that anyone can do to increase proxy performance is: don&#39;t u=
se the proxy.</div><div class=3D"gmail_default" style=3D"font-family:verdan=
a,sans-serif"><br></div><div class=3D"gmail_default" style=3D"font-family:v=
erdana,sans-serif">I don&#39;t say that to be flippant.=C2=A0 What I mean i=
s that I have seen vendors regularly pull in 3rd party assets into their we=
bsite to be served off their own platforms.=C2=A0 Common javascript librari=
es like jQuery, Angular, etc are hosted on several CDNs across the internet=
, and using CDN assets benefits everyone in multiple ways: 1) CDN copies of=
 libraries, fonts, etc are more likely to already be locally cached by the =
patron&#39;s browser, decreasing download times; 2) This also reduces the a=
mount of data that is run through the proxy servers, reducing latency and b=
andwidth usage; and 3) CDNs by their nature are setup for maximum performan=
ce, so even non-proxied visitors to the vendor&#39;s web sites will benefit=
 as well.</div><div class=3D"gmail_default" style=3D"font-family:verdana,sa=
ns-serif"><br></div><div class=3D"gmail_default" style=3D"font-family:verda=
na,sans-serif">Another issue is that too many vendors still insist on colle=
cting every single link used on their website to put into their proxy confi=
gurations.=C2=A0 I always at least sanity check what vendors claim needs to=
 be proxied, and most of the time, they don&#39;t know how their own websit=
es work, so they throw the kitchen sink at the problem.=C2=A0 That is how w=
e wind up with configurations that include crazy things like &quot;<a href=
=3D"http://accounts.google.com">accounts.google.com</a>&quot;, &quot;<a hre=
f=3D"http://api.google.com">api.google.com</a>&quot;, &quot;<a href=3D"http=
://docs.google.com">docs.google.com</a>&quot;, and &quot;<a href=3D"http://=
fonts.google.com">fonts.google.com</a>&quot; in them.=C2=A0 Ironically enou=
gh, what is typically loaded directly are social media trackers, Google ana=
lytics, and other assorted ad/tracking &quot;services&quot;.</div><div clas=
s=3D"gmail_default" style=3D"font-family:verdana,sans-serif"><br></div><div=
 class=3D"gmail_default" style=3D"font-family:verdana,sans-serif">There are=
 also network factors.=C2=A0 This can be something as simple as not having =
a robust enough connection for your users to connect to your proxy server.=
=C2=A0 This can take the form of too little bandwidth, or it could be that =
your users and your proxy server are on different ISPs, and the packets hav=
e to bounce halfway around the country to go 5 miles down the road.=C2=A0 A=
gain, this happens 4 times per request, and can be further complicated if a=
ll 3 legs (user -&gt; proxy -&gt; vendor) incur a measurable network penalt=
y.=C2=A0 If each leg adds 100ms, that can easily be 600ms just in establish=
ing the TCP connections.</div><div class=3D"gmail_default" style=3D"font-fa=
mily:verdana,sans-serif"><br></div><div class=3D"gmail_default" style=3D"fo=
nt-family:verdana,sans-serif">You are also going to take a hit on DNS looku=
ps due to the way that rewrite by host works.=C2=A0 How much time spent doi=
ng DNS lookups will depend on the website that is being proxied, and your D=
NS provider, but average DNS lookup speeds can range from &lt;10ms to &gt;6=
0ms; it all adds up after a while, especially on sites pulling content from=
 a lot of different domains.</div><div class=3D"gmail_default" style=3D"fon=
t-family:verdana,sans-serif"><br></div><div class=3D"gmail_default"><div cl=
ass=3D"gmail_default"><font face=3D"verdana, sans-serif">Back before most s=
ites migrated to HTTPS, we had setup Squid servers as upstream proxies, and=
 saw up to 60% of static assets (images, css, javascript, etc) that were ab=
le to be delivered from the local cache instead of having to make the full =
second leg to the vendor&#39;s site.=C2=A0 I was very happy with those resu=
lts, as it not only meant faster responses for our users, it also prevented=
 us from having to purchase more bandwidth since caching short-circuited a =
lot of the content so that it was not traversing our proxy servers 4 times =
(in from patron, out to vendor, in from vendor, out to patron).</font></div=
><div class=3D"gmail_default"><font face=3D"verdana, sans-serif"><br></font=
></div><div class=3D"gmail_default"><font face=3D"verdana, sans-serif">Now =
that most sites are using HTTPS, however, this type of caching is ineffecti=
ve on the back-end, because attempting to run SSL connections from a rewrit=
ing proxy to Squid results in the use of the HTTP CONNECT verb to setup a t=
unnel through the proxy, which prevents Squid from caching anything at all =
from the vendor&#39;s platform.=C2=A0 You could still configure a caching p=
roxy in front of the rewriting proxy to do SSL termination and catch reques=
ts before they are rewritten.=C2=A0 It&#39;s a little bit more work, but I =
suspect that it would be just as effective as our back-end Squid configurat=
ion was.=C2=A0 Varnish is another piece of software I would evaluate for th=
at role, or even just plain apache/nginx configured to run as a caching pro=
xy could do it.=C2=A0 Our Muse Proxy servers have HTTP object caching built=
-in, so fortunately I don&#39;t have to worry about that.</font></div><div =
class=3D"gmail_default"><br></div></div><div class=3D"gmail_default" style=
=3D"font-family:verdana,sans-serif">There are also software limitations.=C2=
=A0 I remember that before EZproxy supported gzip natively, that just havin=
g Squid behind it handle the back-end request with gzip headers inserted in=
to the request made a tremendous difference in performance for the remainin=
g=C2=A040% of the connections that did have to go all the way to the vendor=
 platform.=C2=A0 I was debating on putting software in front of EZproxy to =
enable gzip on the front-end as well, but we did not go through with that i=
dea.=C2=A0 One HTTP capability that I do not recall hearing EZproxy support=
 is HTTP Keepalive connections.=C2=A0 If you have access to a test web serv=
er, the difference in performance with and without Keepalives enabled can b=
e dramatic, as the client does not have to do the TCP 3-way handshake for e=
very new HTTP request; instead, the browser can re-use an existing connecti=
on, which saves a lot of time when there are many assets to be loaded.=C2=
=A0 I do not see any configuration settings for EZproxy regarding keepalive=
, so either it is not supported, or it is not tunable.</div><div class=3D"g=
mail_default" style=3D"font-family:verdana,sans-serif"><br></div><div class=
=3D"gmail_default"><font face=3D"verdana, sans-serif">I used to do a lot of=
 systems-level performance tuning, so there may be some tweaks that you cou=
ld make to your proxy server that would help it a little at the OS level.=
=C2=A0 I don&#39;t believe that I have seen any specific proxy tuning recom=
mendations from OCLC, but guides that talk about tuning web servers and/or =
general proxy servers should have tips and tricks that would also apply her=
e.=C2=A0 Network buffers, socket backlogs, interrupt coalescing, and networ=
k offloading/TOE are all things that become important when servers get busy=
.</font><br></div><div class=3D"gmail_default"><font face=3D"verdana, sans-=
serif"><br></font></div><div class=3D"gmail_default"><font face=3D"verdana,=
 sans-serif">I wouldn&#39;t mind hearing more about your testing methods, b=
ecause if you are on the same network as the proxy, that would rule out a l=
ot of possible variables, and really narrow it down to the proxy&#39;s perf=
ormance, either EZproxy itself or the server OS/hardware it is running on.<=
/font><br></div><div class=3D"gmail_default"><font face=3D"verdana, sans-se=
rif"><br></font></div><div class=3D"gmail_default"><font face=3D"verdana, s=
ans-serif">As far as actionable things that you can look at in the proxy co=
nfiguration:</font></div><div class=3D"gmail_default"><font face=3D"verdana=
, sans-serif"><br></font></div><div class=3D"gmail_default"><font face=3D"v=
erdana, sans-serif">1) Unless it starts with &quot;scholar&quot;, remove &q=
uot;<a href=3D"http://google.com">google.com</a>&quot; everywhere you find =
it with extreme prejudice.=C2=A0 I honestly don&#39;t know why OCLC =C2=A0s=
till permits &quot;DJ <a href=3D"http://google.com">google.com</a>&quot; to=
 be published.</font></div><div class=3D"gmail_default"><font face=3D"verda=
na, sans-serif">2) If it is or looks like a CDN you should be able to remov=
e it from your stanza.=C2=A0 Very few CDNs are authenticated, as that negat=
es a major benefit of using them.</font></div><div class=3D"gmail_default">=
<font face=3D"verdana, sans-serif">3) If it is=C2=A0or looks like=C2=A0</fo=
nt><span style=3D"font-family:verdana,sans-serif">a CDN, you may also need =
to add &quot;NeverProxy&quot; so that the &quot;J&quot; directives don&#39;=
t sneak it back into the rewriting tables.</span></div><div class=3D"gmail_=
default"><font face=3D"verdana, sans-serif">4) If it is=C2=A0or looks like<=
/font><span style=3D"font-family:verdana,sans-serif">=C2=A0a CDN, you may a=
lso need to add &quot;AnonymousURL&quot; for AJAX pre-flight checks</span><=
/div><div class=3D"gmail_default"><span style=3D"font-family:verdana,sans-s=
erif"><br></span></div></div></div></div></div></div></div></div></div></di=
v></div><blockquote style=3D"margin:0 0 0 40px;border:none;padding:0px"><di=
v dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=
=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr=
"><div dir=3D"ltr"><div class=3D"gmail_default"><font face=3D"verdana, sans=
-serif">CDN hosts may literally start with &quot;cdn&quot;, or it may be fr=
om a commercial provider like Cloudfront, Akamai, Imperva, Fastly, etc.</fo=
nt></div></div></div></div></div></div></div></div></div></div></div></bloc=
kquote><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr">=
<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div di=
r=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default"><font face=3D"verda=
na, sans-serif"><br></font></div><div class=3D"gmail_default"><font face=3D=
"verdana, sans-serif">4) Take a hard look at any hostname that contains &qu=
ot;images&quot;, &quot;assets&quot;, or &quot;static&quot; as well; try tre=
ating them like a CDN.</font></div><div class=3D"gmail_default"><font face=
=3D"verdana, sans-serif">5) Look for inmates running the asylum=C2=A0when i=
t comes to your stanzas. e.g.=C2=A0<a href=3D"https://help.oclc.org/Library=
_Management/EZproxy/Database_stanzas/TrueFlix">https://help.oclc.org/Librar=
y_Management/EZproxy/Database_stanzas/TrueFlix</a></font></div><div class=
=3D"gmail_default"><font face=3D"verdana, sans-serif"><br></font></div></di=
v></div></div></div></div></div><blockquote style=3D"margin:0px 0px 0px 40p=
x;border:none;padding:0px"><div><div><div><div><div><div><div class=3D"gmai=
l_default"><font face=3D"verdana, sans-serif"><div class=3D"gmail_default">=
DJ <a href=3D"http://ereader-static.scholastic.com">ereader-static.scholast=
ic.com</a></div></font></div></div></div></div></div></div></div><div><div>=
<div><div><div><div><div class=3D"gmail_default"><font face=3D"verdana, san=
s-serif"><div class=3D"gmail_default">NeverProxy <a href=3D"http://ereader-=
static.scholastic.com">ereader-static.scholastic.com</a></div></font></div>=
</div></div></div></div></div></div></blockquote><div dir=3D"ltr"><div dir=
=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr=
"><div class=3D"gmail_default"><font face=3D"verdana, sans-serif"><br></fon=
t></div><div class=3D"gmail_default"><font face=3D"verdana, sans-serif">Ser=
iously?=C2=A0 Rewrite it, but NeverProxy it?</font></div><div class=3D"gmai=
l_default"><font face=3D"verdana, sans-serif"><br></font></div><div class=
=3D"gmail_default"><font face=3D"verdana, sans-serif">Andrew</font></div></=
div></div></div></div></div></div></div></div></div></div></div><br><div cl=
ass=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Dec 19, 2=
019 at 5:47 PM Matthew Goddard &lt;<a href=3D"mailto:[email protected]=
u">[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"gma=
il_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-le=
ft-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">





<div lang=3D"EN-US">
<div class=3D"gmail-m_-265233949967785980WordSection1">
<p class=3D"MsoNormal">I have a question for the more technically-minded am=
ong us. (Thinking of Andrew Anderson, among others.)<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">I=E2=80=99ve done some very basic preliminary resear=
ch on how EZProxy affects the speed of a user=E2=80=99s experience across a=
 number of different platforms. The results are interesting. For ProQuest a=
nd EBSCOhost, proxying increased the time to complete
 a basic task by 31% and 37%, respectively, relative to doing the same task=
s without the proxy. For ScienceDirect, there was no difference at all, eve=
n down to a tenth of a second. For SAGE, proxying was 7% slower. These numb=
ers represent the mean duration
 of ten individual tests, and in all cases, EZproxy was the only variable. =
<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">With such large variability across platforms, I=E2=
=80=99m wondering what sort of factors have a bearing on the speed of proxy=
ing. What might Elsevier be doing to avoid any lag, or what are the aggrega=
tors doing to add it?<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">I=E2=80=99m concerned about those numbers for ProQue=
st and EBSCO, which seem to represent a disservice to our off-campus users.
<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">Matthew<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<table border=3D"0" cellspacing=3D"0" cellpadding=3D"0" width=3D"0" style=
=3D"width:575.35pt;margin-left:2.9pt;border-collapse:collapse">
<tbody>
<tr style=3D"height:11.85pt">
<td width=3D"767" valign=3D"top" style=3D"width:575.35pt;border-right-width=
:1pt;border-bottom-width:1pt;border-left-width:1pt;border-style:none solid =
solid;border-right-color:white;border-bottom-color:white;border-left-color:=
white;padding:2.9pt;height:11.85pt">
<table border=3D"0" cellspacing=3D"0" cellpadding=3D"0" width=3D"0" style=
=3D"width:350.55pt;border-collapse:collapse">
<tbody>
<tr style=3D"height:28.95pt">
<td width=3D"168" style=3D"width:125.75pt;border-width:1pt;border-style:sol=
id;border-color:rgb(204,153,0) rgb(204,153,0) rgb(204,153,0) white;padding:=
2.9pt;height:28.95pt">
<p class=3D"MsoNormal" align=3D"center" style=3D"text-align:center;line-hei=
ght:105%"><u></u><span style=3D"margin-left:23px;margin-top:5px;width:115px=
;height:41px"><img width=3D"115" height=3D"41" src=3D"cid:16f31f311f26917eb=
1"></span><u></u><span style=3D"font-size:9pt;line-height:105%;color:rgb(31=
,73,125)"><u></u><u></u></span></p>
</td>
<td width=3D"300" valign=3D"top" style=3D"width:224.8pt;border-top-width:1p=
t;border-style:solid solid solid none;border-top-color:rgb(204,153,0);borde=
r-bottom-width:1pt;border-bottom-color:rgb(204,153,0);border-right-width:1p=
t;border-right-color:white;padding:2.9pt;height:28.95pt">
<p class=3D"MsoNormal" style=3D"line-height:115%"><b><span style=3D"font-si=
ze:10pt;line-height:115%;font-family:Arial,sans-serif;color:rgb(0,51,102)">=
Matthew W. Goddard
<u></u><u></u></span></b></p>
<p class=3D"MsoNormal" style=3D"line-height:115%"><span style=3D"font-size:=
8pt;line-height:115%;font-family:Arial,sans-serif;color:rgb(163,116,0)">Ass=
istant Library Director for Resources<u></u><u></u></span></p>
<p class=3D"MsoNormal" style=3D"line-height:115%"><span style=3D"font-size:=
8pt;line-height:115%;font-family:Arial,sans-serif;color:rgb(0,51,102)">(951=
) 343-4365</span><span style=3D"font-size:9pt;line-height:115%;font-family:=
Arial,sans-serif;color:rgb(0,51,102)"><u></u><u></u></span></p>
<p class=3D"MsoNormal" style=3D"line-height:115%"><span style=3D"font-size:=
8pt;line-height:115%;font-family:Arial,sans-serif;color:rgb(31,73,125)"><a =
href=3D"mailto:[email protected]" target=3D"_blank"><span style=3D"co=
lor:rgb(5,99,193)">[email protected]</span></a></span><span style=3D"=
font-size:8pt;line-height:115%;font-family:Arial,sans-serif;color:rgb(0,51,=
102)"><u></u><u></u></span></p>
<p class=3D"MsoNormal" style=3D"line-height:115%"><span style=3D"font-size:=
8pt;line-height:115%;color:rgb(31,73,125)"><a href=3D"http://www.calbaptist=
.edu/library" target=3D"_blank"><span style=3D"font-family:Arial,sans-serif=
;color:rgb(5,99,193)">calbaptist.edu</span></a></span><u><span style=3D"fon=
t-size:8pt;line-height:115%;font-family:Arial,sans-serif;color:rgb(5,99,193=
)">/library</span></u><b><span style=3D"font-size:9pt;line-height:115%;font=
-family:Arial,sans-serif;font-variant-ligatures:normal;font-variant-numeric=
:normal;font-variant-caps:small-caps;font-variant-alternates:normal;font-va=
riant-east-asian:normal;color:rgb(38,57,91)"><u></u><u></u></span></b></p>
</td>
</tr>
<tr style=3D"height:11.85pt">
<td width=3D"467" colspan=3D"2" valign=3D"top" style=3D"width:350.55pt;bord=
er-right-width:1pt;border-bottom-width:1pt;border-left-width:1pt;border-sty=
le:none solid solid;border-right-color:white;border-bottom-color:white;bord=
er-left-color:white;padding:2.9pt;height:11.85pt">
<p class=3D"MsoNormal" style=3D"line-height:90%"><span style=3D"font-size:9=
pt;line-height:90%;font-family:Arial,sans-serif;color:rgb(0,51,102)">Califo=
rnia Baptist University, 8432 Magnolia Ave, Riverside, CA=C2=A0 92504<u></u=
><u></u></span></p>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
</div>

<br>
<hr>
<p align=3D"center">To unsubscribe from the EZPROXY-L list, click the follo=
wing link:<br>
<a href=3D"http://listserv.oclclists.org/scripts/wa.exe?SUBED1=3DEZPROXY-L&=
amp;A=3D1" target=3D"_blank">http://listserv.oclclists.org/scripts/wa.exe?S=
UBED1=3DEZPROXY-L&amp;A=3D1</a>
</p>
</blockquote></div><br clear=3D"all"><div><br></div>-- <br><div dir=3D"ltr"=
 class=3D"gmail_signature"><div dir=3D"ltr"><div><div dir=3D"ltr"><div><div=
 dir=3D"ltr"><div><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><table=
 width=3D"450" cellpadding=3D"0" cellspacing=3D"0" style=3D"font-family:&qu=
ot;Hind Siliguri&quot;,Verdana,Helvetica,sans-serif;width:450px;color:rgb(3=
9,16,63)"><tbody style=3D"vertical-align:top"><tr><td valign=3D"top" style=
=3D"padding:0px 0px 5px;vertical-align:top"><span style=3D"font-size:9pt"><=
br></span><span style=3D"font-size:13pt;font-weight:bold;line-height:0.8;co=
lor:rgb(123,43,137)">Andrew=C2=A0Anderson<br></span><span style=3D"font-siz=
e:9pt;line-height:2">President &amp; CEO<br></span><span style=3D"font-size=
:9pt;line-height:1"><a href=3D"mailto:[email protected]" target=3D"_blank">an=
[email protected]</a></span></td><td style=3D"padding:25px"></td></tr><tr><td v=
align=3D"top" width=3D"40%" style=3D"border-top-width:1px;border-top-style:=
solid;border-top-color:rgb(123,43,137);width:225px;padding:5px 0px 0px;line=
-height:18px;vertical-align:top"><span style=3D"font-size:9pt">t: +1 (727) =
536-0214 x100<br></span><span style=3D"font-size:9pt">f: +1 (727) 530-3126<=
br></span><span style=3D"font-size:9pt">w:<span>=C2=A0</span><a href=3D"htt=
ps://www.lirn.net/" rel=3D"noopener" style=3D"font-weight:bold;font-size:9p=
t;color:rgb(123,43,137)" target=3D"_blank">www.lirn.net</a><br></span></td>=
<td valign=3D"top" width=3D"60%" style=3D"border-top-width:1px;border-top-s=
tyle:solid;border-top-color:rgb(123,43,137);width:225px;padding:5px 0px 0px=
;line-height:18px;vertical-align:top"><span style=3D"font-size:9pt">Library=
 &amp; Information Resources Network<br></span><span style=3D"font-size:9pt=
">25400 US Hwy 19 North, Ste. #220<br></span><span style=3D"font-size:9pt">=
Clearwater, FL 33763</span></td></tr><tr><td colspan=3D"2" width=3D"40%" va=
lign=3D"top" style=3D"width:450px;padding:10px 0px 0px;vertical-align:top;t=
ext-align:center"><a href=3D"http://www.linkedin.com/company/library-and-in=
formation-resources-network-inc-" rel=3D"noopener" style=3D"font-size:9pt;c=
olor:rgb(123,43,137)" target=3D"_blank">LinkedIn</a><span>=C2=A0</span>|<sp=
an>=C2=A0</span><a href=3D"http://www.facebook.com/LIRNnotes" rel=3D"noopen=
er" style=3D"font-size:9pt;color:rgb(123,43,137)" target=3D"_blank">Faceboo=
k</a><span>=C2=A0</span>|<span>=C2=A0</span><a href=3D"http://www.twitter.c=
om/LIRNNotes" rel=3D"noopener" style=3D"font-size:9pt;color:rgb(123,43,137)=
" target=3D"_blank">Twitter</a><span>=C2=A0</span>|<span>=C2=A0</span><a hr=
ef=3D"http://www.youtube.com/user/LIRNnotes" rel=3D"noopener" style=3D"font=
-size:9pt;color:rgb(123,43,137)" target=3D"_blank">YouTube</a></td></tr></t=
body></table></div></div></div></div></div></div></div></div></div></div>
<br>
<hr>
<p align=3D"center">To unsubscribe from the EZPROXY-L list, click the following link:<br>
<a href=3D"http://listserv.oclclists.org/scripts/wa.exe?SUBED1=3DEZPROXY-L&A=3D1" target=3D"_blank">http://listserv.oclclists.org/scripts/wa.exe?SUBED1=3DEZPROXY-L&A=3D1</a>
</p>

--000000000000b22d29059a5ceb2e--
--000000000000b22d2b059a5ceb2f
Content-Type: image/jpeg; name="image003.jpg"
Content-Disposition: inline; filename="image003.jpg"
Content-Transfer-Encoding: base64
Content-ID: <16f31f311f26917eb1>
X-Attachment-Id: 16f31f311f26917eb1

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAmJSMg
IyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMpPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAARCAApAHMDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD1fWNW
g0bT3urjJxwiDq7dgK8z1LxHqGqzE3FxJHCT/qojtUD+v41sfEK7aTVbe1z8kUW/Hux/wFZOg+H5
tanUlvJtQ21pW7n+6vqa8TGVqlWr7KGyO2jCMYc8h+piGxt9Om025ljd4MnClHb5m+YkHGe34Vu+
F/GUslxHY6o4fedsc54Oewb/ABrW1TwZY31lDFAWglt4/LifOeOuGHfkn864HVdGvdGn8u7jKgn5
JF5VvoaVSNbCz51t5bBFwqx5XuewVial4v0rS7kwXM4DDgneqjPcAsRkjvjpTZdQmm8FpeJIyTSQ
Jlx1BJAJHv1rwq0hHijxBPHqE06vhvK8oLhQDwoB6Dn+Z5r6CjBVI83Q8+pJxdj2z/hYWhf8/Sf9
/ov/AIutq11a1vLB7uFiY4wS6kfMuBkgj6fnxXifiL4ZT6JYGaKSaabG5YgocuAQDjbzkbgfwNa3
w0/tcPLYXcc8KMjQxCZCu5Sjnbz1AIBHpk9jWkqUeXmiyVOV7NHev4+0WJyks3lyL95HkjDKfQjd
xSf8LC0L/n6T/v8ARf8AxdeK+NtPTTvE8nnFyZv3kqjBKNuKkKe4+Xg+9b7/AAwhNi1zDfy+Xu2K
X2ZznaMqDnr+OKfsoJJt7k+0k3oew6VrllrKFrOTOBnBIOR6ggkEZ44PWs668caRZ3Dw3EpjdWIw
7opOCRkAsDjINeQfDXULq38RLaJKwiz5m0HowZQcfUHBHfj0FWviloxstUF5KxEskhTYMFShLsrZ
655wRS9ilPlbH7R8tz1i18ZaZerI1uzyrGjOTGVfpg4+VjzzUD/EDRI3ZHuFVlJBBliyCP8AgdcX
8OtCMmjzy6eWcTQlm89guHIwFGM8cHn9K8/8QaZHbeJnto3crPIrkuBlS7cjjg4NONKLk0DqSSTP
b5fiLo8Mm0pdtwGDRxhlIIyCCDg8GiuTh8B6tLbwmwFu9ssapG00u12CgDJAUgdPWip5afcfNMue
Pv8AkYx/1wX+ZrLtJZ7+/sUneTyBKkS7PlVAT0XHAP61qePf+RjH/XBf5moInKz+HYFOI8rKVHdj
KQSfwAFfLVVevPXr+p6sX+7R111p9rpkkcbeIL20eQ/IslwGz+DCsbxkl9YWEENzfLexTMceZAoZ
CO4I+tUviER/b6ZP/Luv8zVvxkSfD+hknJMfX/gC11VppxqRStbzZlCOsW+prR/8k7h/64p/6EK8
Y8I/8jW/0f8A9CFe0Qqz/DyEKpYiBWwBk4DAn9BXhtjdt4d8SySXkD/KWV1XGcHkMOx7H0I717uC
1o28l+R5+I+M+krqztLsILy3hmCnK+agbB9s1Hb6bp9vMJbeztY5Vzh441DD15FeMeJfiZ/bVkqQ
wsLhMiN3hUKmSMnBZsnAx+Jq/wDDa81G5u5L+7jWRYld4mESpkBH3fdA4yVH1+lU6MlG7D2ibsjn
/ih/yNr56bX/APRslRSWnjDYzN5pbbyVki8zGPY7s4/Gq/jy/Go+I5D/AMtY1KS4XC7yzMdvJOPm
710//C0rddMNktrI0O7eAYwGzu3Y3bsde+OldHvKKsjHS7uzI+GZsxruJkkNzuXBB48vcNwHvu29
e2cc10Pxp/11v/vr/wCgtXNfDmCaXxOLhY2MYwhYDjczKQo98An6Amuq+MtrNKY5UjZkj2OxA6Lh
hn6AkA+mR61Mv4qKX8Nm78JP+RdP+4n/ALNXmHin/kdIv96L/wBCrW8J/EWPw3pS2vky+YAFYiMO
rYzgj5lI69Oelc/c3beIvFcM1pC+C6YDYztU5LN2A6n0FEYNTbYOScUkfRGh/wDIGtf9yil0UFdG
tQylT5YOCMGiuN7nQtjz7xPr1rea5K9rL4XuIUUIHur90kyOoIU44OazV11kkhkU+D90GPLJ1OQ7
cHIxz61Ul/10n+8f50ytvqtLdxX3GftZ9zel8c6jP/rpvBcn+/ek/wBKr33iq51KOKO8k8GyJF9x
f7QcBfyrJoq3Qg9GhKpJbM9P8HatbajoscUM+nvPbjbLHYz+bHHknbgnnkDvVTWfh7pes3YnkRFw
DhTHkLk5ODkYHfHTrjGaofDn/W6h9E/9mruqwf7uVomi95XZwn/CptG/uxf9+j/8VXUWGhWunaW9
lAMCRNjuAATxgYHQADoOgrTopOcnuwUUtjiJ/hdpd1O89w0ck0hy7mHlj68NUf8AwqbRv7sX/fo/
/FV3dFP2ku4ckexieH/C1l4ej22ygsMhSFChAeoA9+56njsBV/UtMg1S1MFwP91gBlTjHGf5Hgjg
1coqW23cdlscJ/wqfRv7sX4RH/4qtHRfh/pmi3ZniVD0JQR4BI5GeSSB1x0zz2FdVRVOpJ9RcqEo
paKgo//Z
--000000000000b22d2b059a5ceb2f--