Chapter 3. YAZ Proxy Comparison
Prev |  | Next

# Chapter 3. YAZ Proxy Comparison

The table below lists facilities that are supported by either YAZ Proxy or Metaproxy.

Table 3.1. Metaproxy / YAZ Proxy comparison

Facility | Metaproxy | YAZ Proxy
--- | --- | ---
Z39.50 server | Using filter frontend_net(3mp) | Supported
SRU server | Supported with filter sru_z3950(3mp) | Supported
Z39.50 client | Supported with filter z3950_client(3mp) | Supported
SRU client | Supported with filter zoom(3mp) | Unsupported
Connection reuse | Supported with filter `session_shared` | Supported
Connection share | Supported with filter `session_shared` | Unsupported
Result set reuse | Supported with filter `session_shared` | Within one Z39.50 session / HTTP keep-alive
Record cache | Supported by filter `session_shared` | Supported for last result set within one Z39.50/HTTP-keep alive session
Z39.50 Virtual database, i.e. select any Z39.50 target for database | Supported with filter `virt_db` | Unsupported
SRU Virtual database, i.e. select any Z39.50 target for path | Supported with filter `virt_db`, `sru_z3950` | Supported
Multi target search | Supported with filter `multi` (round-robin) | Unsupported
Retrieval and search limits | Supported using filter `limit` | Supported
Bandwidth limits | Supported using filter `limit` | Supported
Connect limits | Supported by filter `frontend_net` (connect-max) | Supported
Retrieval sanity check and conversions | Supported using filter `record_transform` | Supported
Query check | Supported by `query_rewrite` which may check a query and throw diagnostics (errors) | Supported
Query rewrite | Supported with `query_rewrite` | Unsupported
Session invalidate for -1 hits | Unsupported | Supported
Architecture | Multi-threaded + select for networked modules such as `frontend_net`) | Single-threaded using select
Extensibility | Most functionality implemented as loadable modules | Unsupported and experimental
USEMARCON | Supported with `record_transform` | Supported
Portability | Requires YAZ, YAZ++ and modern C++ compiler supporting Boost. | Requires YAZ and YAZ++. STL is not required, so pretty much any C++ compiler out there should work.

Prev |  | Next
4. Installation on Windows | Home | Chapter 4. The Metaproxy Architecture